解决EnableKeyword(“_Emission“)运行状态不起作用

我使用的是Standard Shader,一开始"_Emission"没有开启

当我运行下面的代码,可以看到Inspector窗口已经生效,然而物体本身并没有重新开始渲染,反射没有开启

cs 复制代码
public GameObject go;
// Start is called before the first frame update
void Start()
{
    var m = go.GetComponent<MeshRenderer>().material;
    m.EnableKeyword("_Emission");
    m.SetColor("_EmissionColor", Color.red);
    m.globalIlluminationFlags = MaterialGlobalIlluminationFlags.RealtimeEmissive;
    go.GetComponent<MeshRenderer>().material = m;
}

解决方案: "_Emisson"参数保持开启状态,通过更改"_EmissionColor"来控制反射,_EmissionColor为纯黑时,效果等同于"_Emisson"参数关闭。

相关推荐
武藤一雄37 分钟前
C# 引用传递:深度解析 ref 与 out
windows·microsoft·c#·.net·.netcore
3DVisionary5 小时前
捕捉亚毫米级裂纹演化!DIC技术为裂纹扩展与抗裂研究带来全新方案
人工智能·python·3d·应变测量·金属3d打印·dic精度检验方法·各向异性
bugcome_com7 小时前
C# 高级集合使用示例
开发语言·c#
Yasin Chen7 小时前
Unity TMP_SDF 分析(二)数据来源2
unity·游戏引擎
Mao_Hui7 小时前
Unity3d实时读取Modbus RTU数据
开发语言·嵌入式硬件·unity·c#
njsgcs8 小时前
怎么把面的类型特征,平面曲面融合进面邻接图或者图结构里
c#
爱炸薯条的小朋友8 小时前
C#依赖注入和仿写Prism注入
开发语言·c#
末点8 小时前
超长文本格式坐标串数据空间化入库
数据库·c#·st_geomfromtext
心疼你的一切10 小时前
【Unity-MCP完全指南:从零开始构建AI游戏开发助手】
人工智能·unity·ai·游戏引擎·aigc·mcp