您的位置:首页 > 移动开发 > Unity3D

Unity3D获取物体的所有子物体对象(child)

2016-05-31 23:14 555 查看
开始是找了下U3D的SCRIPT手册,发现找不到这玩意。然后在谷歌搜"unity3d get all child"才找到了答案。很简单的答案,不过挺有意思的,挺好用。

foreach (Transform child in transform)
{
    Debug.Log(child.gameObject.name);
}

transform是你所需要找的物体gameobject的transform。这个for循环就相当于遍历了它的子对象,此时你只要做的是将一个个放进个数组里面就行了。想过滤掉一些子物体在循环里面写一下也就OK了。

删除所有子物体的话:

foreach(Transform child in transform){
    Destroy(child.gameObject);
}

忘了是什么时候,以前是不可以这样删的,不过现在可以了。

2014.1.3添加:
遍历删除的方法好像是不可以的,还是要将它储存到一个LIST里面一个个去删。貌似有的情况可以有的不可以,很奇怪。

转自:http://www.360doc.com/content/16/0531/23/33879684_564041693.shtml
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: