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

相关推荐
cjp56019 小时前
018.C#管道服务,本机两软件间通讯交互
开发语言·c#
故事不长丨20 小时前
C#log4net详解:从入门到精通,配置、实战与框架对比
c#·.net·wpf·log4net·日志·winform·日志系统
军军君0121 小时前
Three.js基础功能学习十二:常量与核心
前端·javascript·学习·3d·threejs·three·三维
不绝1911 天前
C#核心——面向对象:封装
开发语言·javascript·c#
一然明月1 天前
C#语言基础详解和面向对象编程核心概念与高级特性详解(万字详解带示例代码)
开发语言·c#
flysh051 天前
.NET 基础 - StringBuilder 类
开发语言·c#·编程语言·c#10
垂葛酒肝汤1 天前
Unity中的协程的原理
unity·游戏引擎
cjp5601 天前
002.为C#动态链接库添加wpf窗体
microsoft·c#·wpf
齐鲁大虾1 天前
如何通过C#调取打印机打印文本和图片
开发语言·c#
TDengine (老段)1 天前
TDengine C# 语言连接器入门指南
大数据·数据库·c#·时序数据库·tdengine·涛思数据