如何在Unity中更改材料

时间:2016-06-14 14:43:10

标签: c# unity3d

我对Unity项目中的重大更改有所了解。 我有一个物体上有8种材料,我想在按下按钮时更改材料编号5。 以下代码无效:

objectToPaint.GetComponent<Renderer>().materials[4] = availableMaterials[i];

当我这样做时:

objectToPaint.GetComponent<Renderer>().material = availableMaterials[i];

它只会改变第一种材料并证明,触发器工作正常。有什么建议吗?

2 个答案:

答案 0 :(得分:4)

您必须更改<div class="input-group"> <input type="text" class="form-control" > <span class="input-group-btn"> <button class="btn btn-primary" type="button">Submit</button> </span> </div> ,而不是更改renderer.materials

我认为,这应该有效

renderer.material

答案 1 :(得分:2)

经过大量的尝试和错误后,发现你不能只改变数组中的1种材料。我必须将整个数组分配给临时数组,更改所需的材料,然后将临时数组分配给对象。