- Home /
Material instantiation problem
Hey all. I'm having a crazy problem and have been pulling my hair for about an hour now. Maybe you can help me?
I have a gameobject on stage with a renderer and a material attached to it. I have been changing the shared material properties from a shader manager class at run time just to get some nice fx going.
But suddenly I can't change the shader props! As it turns out when pressing Play the material on the gameobject gets instantiated?!?!
Like this:

I have no idea why this happend, and I cannot un-instatiate it. I have tried reseting the shader, and removed the entire gameobject. But no luck...
I have from time to time paused the game, tweaked the shader a little, and then unpaused. Could that have something to do with it?
Anybody got an idea what is going on?
Thanks.
Haha, we all have our moments :p
check the answer so this question can be marked as closed ;)
Answer by Joyrider · Aug 13, 2013 at 07:31 PM
unless you somewhere called renderer.material, there is no reason for the material to be instantiated once you get into playmode.
Are you sure you never call renderer.material? whether it is to assign et get the material..
Ahh! Silly me. Actually, I cache the material, and not shared$$anonymous$$aterial, to a variable in Start(). Stupid.
Well, thanks Joyrider! I shall put your portrait on the mantelpiece for a good hundred moons!
Your answer
Follow this Question
Related Questions
HDRP shader graph - Surface options missing "Material Type" in inspector 0 Answers
Custom MaterialPropertyDrawer with argument 2 Answers
Material doesn't have a color property '_Color' 4 Answers
How come edititng "_Glossiness" through script doesn't work? 1 Answer
Represent Land 3D Area End 0 Answers