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

相关推荐
Fuxiao___4 小时前
C 语言核心知识点讲义(循环 + 函数篇)
算法·c#
主宰者6 小时前
C# CommunityToolkit.Mvvm全局事件
java·前端·c#
魔士于安7 小时前
unity完整项目走廊
游戏·unity·游戏引擎·贴图·模型
ZoeJoy88 小时前
C# + 机器视觉 + AI:从工业相机取图到 YOLO 目标检测的完整工控解决方案
人工智能·数码相机·c#
程序员正茂9 小时前
在Unity3d2021.3.35中实现MQTT异步客户端
mqtt·unity·异步
海海不瞌睡(捏捏王子)11 小时前
Unity YAML
unity·游戏引擎
CG_MAGIC11 小时前
Blender场景搭建:寻找德尔蒙
3d·blender·贴图·建模教程·渲云渲染
葛兰岱尔12 小时前
如何实现Revit、Bentley等模型转换为glTF/GLB、3DTiles等通用3D模型,同时实现模型结构属性数据的提取导出并保持与几何数据的一一对应?
3d
海海不瞌睡(捏捏王子)13 小时前
Unity A*寻路算法
算法·unity