附加的组件我的意思是每个组件的名称。
var list = gameObj.GetComponents(typeof(Component));
if (!componentsList.Contains(gameObj.name))
componentsList.Add(gameObj.name);
for (int i = 0; i < list.Length; i++)
{
if (!componentsList.Contains(list[i].name))
componentsList.Add(list[i].name);
}
此代码仅使用GameObjects创建一个List。 但是我想要一个这种格式的列表,例如:
多维数据集1 网格渲染器 撞机箱 球 网格渲染器 撞机箱
最后是一个列表,其中包含每个对象名称及其组成部分。
答案 0 :(得分:4)
我假设当您说需要组件名称时,实际上是在说类型。 Component.name实际上返回组件所连接到的GameObject的名称,因此所有组件都相同。
您可以执行以下操作
foreach(var component in GetComponents()) {
Debug.Log(component.GetType());
}
我想知道您为什么会需要...
答案 1 :(得分:-1)
Component[] comps=gameObj.GetComponents();
List<Component> complist= new List<Component>();
for(inti =0;i<comps.length;i++){
complist.Add(comps[i]);
}