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

相关推荐
一只蚊子04 分钟前
C# WinForms配置Halcon
windows·c#·halcon
阿蒙Amon10 分钟前
C#每日面试题-进程和线程的区别
java·面试·c#
HUST1 小时前
C 语言 第九讲:函数递归
c语言·开发语言·数据结构·算法·c#
CodeCraft Studio1 小时前
国产化Word处理控件Spire.Doc教程:使用C# 编程方式批量转换Word为RTF
开发语言·c#·word·spire.doc·word文档转换·word开发组件·word api库
Coovally AI模型快速验证1 小时前
开放词汇3D实例分割新思路:框引导+超点融合,精准检索罕见物体
人工智能·计算机视觉·3d·语言模型·机器人·无人机
温暖的苹果1 小时前
【.Net runtime】corehost(.NET 应用启动过程)
c#·.net·.netcore
kylezhao20192 小时前
C#连接plc之 Model、DAL、BLL、Common三层架构可扩展
开发语言·c#
bugcome_com2 小时前
深入浅出 C# 扩展方法:为现有类型 “无痛” 扩展功能
c#
老朱佩琪!3 小时前
Unity模板方法模式
unity·游戏引擎·模板方法模式
zl_vslam3 小时前
SLAM中的非线性优-3D图优化之相对位姿Between Factor-SO3/t形式(十一)
人工智能·算法·计算机视觉·3d