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

相关推荐
我才是银古15 小时前
OpenCSG.NET:一个 .NET CSG 几何建模库的技术剖析
3d·dwg·csg
湿滑路面18 小时前
Rouyan:使用WPF/C#构建的基于LLM的快捷翻译小工具
开发语言·c#·wpf
冰心孤城20 小时前
C++ 与 C#混合编程 示例 (基于VS)
java·c++·c#
软萌萌的120 小时前
C#中的多级缓存架构设计与实现深度解析
缓存·c#·wpf
迁移科技21 小时前
周转箱拆垛码垛自动化实战:3D视觉实现 ±2mm 毫米级稳定作业
3d·自动化·视觉检测
a1117761 天前
汽车3D配置器 THreeJS 开源项目
前端·3d·html·汽车
dalong101 天前
WPF:3D正八面体自动旋转
3d·wpf
数字新视界1 天前
3D数字化孪生管理解决方案
物联网·3d·数字孪生·3d可视化