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

相关推荐
Zldaisy3d3 分钟前
面向LPBF过程监测的物理引导多源数据融合模型:从数据生成到熔化状态识别
3d
雪豹阿伟43 分钟前
21.Winfrom —— 定时器、日期选择器、进度条、表格、DataTable
c#·上位机·winfrom
z落落1 小时前
C#WinForm控件实战:Panel与单选框动态创建
开发语言·c#
智海深蓝1 小时前
水下怎么使用3D高斯?布里斯托大学&北航提出R-Splatting:水下3DGS迎来新突破
3d
qq_422152573 小时前
Word 文件太大怎么压缩?2026 年文档瘦身方案对比
开发语言·c#·word
auccy4 小时前
Unity Sprite 添加法线贴图
unity·贴图·normal
影寂ldy5 小时前
C# 事件完整学习笔记(发布订阅 + 自定义事件 + 内置 EventHandler)
笔记·学习·c#
kyle~6 小时前
DDS分布式实时系统---自省机制
开发语言·分布式·机器人·c#·接口·ros2
Java面试题总结6 小时前
MarkItDown 再次登顶GitHub榜
开发语言·c#·github
zlycheng7 小时前
3DEXPERIENCE 平台功能、价值与全场景应用说明
3d