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

相关推荐
MM_MS33 分钟前
Halcon图像点运算、获取直方图、直方图均衡化
图像处理·人工智能·算法·目标检测·计算机视觉·c#·视觉检测
老骥伏枥~2 小时前
C# 控制台:Console.ReadLine / WriteLine
开发语言·c#
图生生2 小时前
基于AI的电商产品2D转3D,降低3D建模开发成本
3d·ai
mocoding13 小时前
Flutter 3D 翻转动画flip_card三方库在鸿蒙版天气预报卡片中的实战教程
flutter·3d·harmonyos
PfCoder14 小时前
C#中定时器之System.Timers.Timer
c#·.net·visual studio·winform
天人合一peng18 小时前
Unity中button 和toggle监听事件函数有无参数
前端·unity·游戏引擎
_乐无20 小时前
Unity加载gly 点云 高斯泼溅渲染
unity
坚定信念,勇往无前20 小时前
unity发布BuildWebGL.wasm 加载过慢
unity·wasm
人工智能AI技术20 小时前
【C#程序员入门AI】本地大模型落地:用Ollama+C#在本地运行Llama 3/Phi-3,无需云端
人工智能·c#