解决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"参数关闭。

相关推荐
游乐码21 分钟前
c#成员属性
开发语言·c#
Never_Satisfied2 小时前
在c#中,如何删除字符串中的第x个字符
开发语言·c#
Never_Satisfied2 小时前
在c#中,缩放jpg文件的尺寸
算法·c#
Never_Satisfied2 小时前
在c#中,控件的事件执行耗时操作导致窗体无法及时处理绘制、鼠标点击
开发语言·c#
zls3653653 小时前
C# WPF canvas中绘制缺陷分布map并实现缩放
开发语言·c#·wpf
LqKKsNUdXlA3 小时前
两级三相光伏并网逆变器控制Matlab/Simulink仿真模型,mppt控制有扰动观察法和电...
3d
Never_Satisfied3 小时前
在c#中,如何在字符串的第x个字符位置插入字符
java·开发语言·c#
bugcome_com17 小时前
C# 常量详解:从基础语法到实际应用
c#
qq_1508419919 小时前
3天基于VS2026的C#编程入门及动态调用CH341DLLA64读写I2C从机
开发语言·c#
溪水西流1 天前
NodifyEditor Zoom 机制分析
开发语言·c#·avalonia