C# 统一设置发射颜色

C# 统一设置发射颜色,c#,unity3d,C#,Unity3d,我尝试过寻找这个,但找不到任何解决方案。我将每个对象的颜色设置为: Color color = Color.red; float f = 0.4f; GetComponent<Renderer>().material.color = color; GetComponent<Renderer>().material.SetColor("_EmissionColor",color*f); Color=Color.red; 浮动f=0.4f; GetComponent().

我尝试过寻找这个,但找不到任何解决方案。我将每个对象的颜色设置为:

Color color = Color.red;
float f = 0.4f; 
GetComponent<Renderer>().material.color = color;
GetComponent<Renderer>().material.SetColor("_EmissionColor",color*f);
Color=Color.red;
浮动f=0.4f;
GetComponent().material.color=颜色;
GetComponent().material.SetColor(“_EmissionColor”,color*f);
但是,在游戏中,除非我选择对象并展开材质组件,否则不会设置颜色


我尝试过使用DynamicGI,基于类似的问题,但没有任何效果。但是,看到单击unity编辑器中的材质会导致其更新,更改似乎已注册。更新后的资料不会自动应用。

经过几个小时的搜索,我在发布了这个问题后,设法找到了解决方案

要解决此问题,只需添加

material.EnableKeyword("_EMISSION");