我在添加材料到列表时遇到麻烦。我的对象有多个分配给它们的材料,我将所有这些添加到指定的列表中。我收到的错误是cannot convert from 'UnityEngine.Material[]' to 'UnityEngine.Material'
。我哪里做错了?
public GameObject[] myObjs;
private List<Material> myObjs_mats = new List<Material>();
void Start () {
for(int i = 0; i<myObjs.Length; i++){
myObjs_mats.Add(myObjs[i].GetComponent<Renderer>().materials);
}
GetComponent<Renderer>().materials
返回一个数组。但是,由于您使用的是Add
方法,您一次只能添加一个项目。
所以要么调用Add
在一个循环,或者只是使用AddRange
而不是Add
。