我制作了一個 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 關注
- 790 瀏覽
添加回答
舉報
0/150
提交
取消