我制作了一个 ShaderGraph 着色器,并将其应用于材质。在着色器中,我在“public”中放入了一个变量 Color 以更改材质颜色。从检查器来看,如果它不是运行时,它确实可以工作;我想在游戏过程中根据不同的元素来改变这个材质的颜色。材质应用于 lineRenderer。我尝试了很多方法,但它永远不会改变颜色;GetComponent<EnemyType>().color; return a RGBA color. I tried : LaserLine.material.color = GetComponent<EnemyType>().color; LaserLine.startColor = GetComponent<EnemyType>().color; LaserLine.endColor = GetComponent<EnemyType>().color; LaserLine.material.SetColor("_Color", GetComponent<EnemyType>().color);我究竟做错了什么 ?
2 回答
慕桂英4014372
TA贡献1871条经验 获得超13个赞
月关宝盒
TA贡献1772条经验 获得超5个赞
好吧,我发现,
计数的不是属性的名称,而是引用。要查看它,请进入 ShaderGraph,然后单击属性,您会在属性参数上找到引用名称(左上角):
像这样使用参考槽代码更改参数值
material.SetColor("_Color", new Color());
- 2 回答
- 0 关注
- 691 浏览
添加回答
举报
0/150
提交
取消