Search Issue Tracker
By Design
Votes
0
Found in
4.3.0b4
Issue ID
568405
Regression
No
Changing material colour values doesn't work properly at runtime
First scenario:
1. Open the attached project
2. Run the scene
3. Select 'Diffuse Material' in Project panel and change its color
4. Notice that only sphere picks up this change. (Though both: the sphere and the capsule use the same material)
5. Capsule's color changes only after exiting the playmode.
------------------
Second scenario:
1. Run the scene again
2. Select sphere from hierarchy
3. Change material's color via the inspector
4. Notice that only sphere's color has changed
5. Exit the playmode
6. Notice that capsule's color has been changed after stopping the scene.
IMPORTANT NOTE (regarding the second scenario): Changes of capsule's (!) material color made when running the scene are not saved.
Comments (1)
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
- Mipmap Limit Groups long names are not truncated when creating a new Mipmap Limit Group with a long name
- “ArgumentException: Invalid double parameter.” error is thrown when Infinity is typed into the Fixed Timestep field
- GameObject becomes gray when using HDRP and STP together on macOS
goldbug
Jul 23, 2014 18:37
This is also a problem for me, This means that animating a material causes material changes every time I run my program, which causes a lot of conflict with version control systems like svn and mercurial.
It seems like poor design that running a program changes the source code.
Also, note that this is not consistent with gameobjects. If I change a gameobject at runtime, and stop the player, the gameobject reverts back to the original values.
This also does not appear to happen when you run the program outside unity, so why should this behave differently inside and outside the editor?
So please, I beg you to reconsider this design.