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

相关推荐
少控科技2 分钟前
小数典应用:小诗典
windows·c#
wuyoula1 小时前
尹之盾企业版网络验证
服务器·开发语言·javascript·c++·人工智能·ui·c#
zdr尽职尽责2 小时前
Untiy 处理Aseprite 资产 解决偏移问题
学习·unity·c#·游戏引擎
步步为营DotNet2 小时前
.NET 11 与 C# 14 助力云原生应用安全架构升级
云原生·c#·.net
少控科技2 小时前
小数典应用:农场环境数据采集监控
开发语言·windows·c#
冰凌糕3 小时前
Unity3D Shader UV 与纹理采样
unity
¥-oriented3 小时前
记录使用C#编程中遇到的一个小bug
c#·bug
love530love3 小时前
FaceLift 单图 3D 人脸重建项目 Windows 11 完整部署指南
人工智能·windows·python·3d·facelift
唐青枫4 小时前
C#.NET MemoryMarshal 深入解析:零拷贝内存重解释、二进制读写与使用边界
c#·.net
郝学胜-神的一滴4 小时前
[简化版 GAMES 101] 计算机图形学 06:相机视图矩阵的由来
c++·线性代数·unity·矩阵·godot·图形渲染·unreal engine