Object Reference not set somewhere in the List, but can't figure it out.
public class FruitEditor : MonoBehaviour {
public GameObject match;
internal float duration = 1.0f;
internal int randomInt;
// Renderers
internal Renderer _renderer; // Renderer Match Object
internal Texture2D diffuseMap;
internal Texture2D specularMap;
internal float colorValue;
internal float shininessValue;
internal float value3;
// Texture Color, Outline Color & Outline Thickness.
internal Color _color;
internal Color _outlineColor;
internal float _outlineThickness;
// Textures to assign that have been generated.
public Texture2D _diffuseTex; // Target Texture
public Texture2D _gradientTex; // Target Texture
// Texture Lists's (Diffuse Map, Gradient Ramp)
internal List<Texture2D> DiffuseMaps = new List<Texture2D>(); // 10 textures
internal List<Texture2D> GradientMaps = new List<Texture2D>(); // 10 textures
internal bool mSwitchDiffuse = false;
internal bool mSwitchGradient = false;
void Awake()
{
foreach (object o in Resources.LoadAll("DiffuseMaps"))
{
Texture2D _newTex1 = o as Texture2D;
DiffuseMaps.Add (o as Texture2D);
}
foreach (object p in Resources.LoadAll("GradientRamps"))
{
Texture2D _newTex2 = p as Texture2D;
GradientMaps.Add (p as Texture2D);
}
}
void Start ()
{
match = GameObject.FindWithTag("match");
_renderer = match.GetComponent<Renderer>();
_renderer.enabled = true;
_renderer.material.mainTexture = _diffuseTex;
_renderer.material.SetTexture ("Toon Ramp (RGB)", _gradientTex);
}
void Update()
{
randomInt = (int)Mathf.Round (Random.Range (0.0f, 9.0f));
if (!_renderer) {
_renderer = match.GetComponent<Renderer> ();
_renderer.enabled = true;
}
if (Input.GetKeyUp(KeyCode.D))
{
mSwitchDiffuse = true;
}
if (mSwitchDiffuse)
{
Debug.Log ("Switch Diffuse");
mSwitchDiffuse = false;
Debug.Log ("DiffuseMap value: "+DiffuseMaps[randomInt]);
_renderer.material.mainTexture = DiffuseMaps[randomInt];
}
if (Input.GetKeyUp(KeyCode.G))
{
mSwitchGradient = true;
}
if (mSwitchGradient)
{
Debug.Log ("Switch Gradient");
mSwitchGradient = false;
_renderer.material.SetTexture ("Toon Ramp (RGB)",GradientMaps[randomInt]);
}
}
}
Comment
Your answer
![](https://koobas.hobune.stream/wayback/20220612113557im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Can Static classes have static lists? 1 Answer
Silly Sausage - Nitrome , Player MoveMent Snake/Worm 0 Answers
foreach list gameobject random color 1 Answer
Best way to communicate between scripts 4 Answers
Singleton Null Static Reference 1 Answer