代码:
父对象的名称表示为:
gameObject.transform.parent.name
由于父对象的名称是字符,所以用string来定义:
string FatherName = gameObject.transform.parent.name;
FatherName是字符的名称,如果有需要可以更改。
注意:如果没有父对象,gameObject.transform.parent.name为null。
应用:
之前我发过一片《Unity3D按下F开门》,里面的Tigger的代码是通过门的名称来判断要开的门,所以每做一个新的门就需要多写一个Tigger.cs,10个门要写10个Tigger.cs,100个门要写100个Tigger.cs,999个就要写999个Tigger.cs,也是肥肠的麻烦,所以我们可以直接把定位门的代码换成以下代码:
void Start(GameObject gameObject)
{
string FatherName = gameObject.transform.parent.name;
m_Door = GameObject.Find(FatherName).GetComponent<Door>();
}
这样一篇代码就可以给所有门使用啦!