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

转载 2016年05月31日 23:14:06
开始是找了下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

相关文章推荐

在Unity中获得一个物体的所有子物体包括孙物体。

看API时想到了这个问题,如何获得一个物体的所有子物体,在Unity的API有这个函数 Component.GetComponentsInChildren 获取子物体组件列表。 首先是在Unity软件...

unity获取物体下的所有子物体

1      通过标签来寻找 3 4 5 6 7 8 9 void ForeachObjs()     {         //GameObject objs[]...

Unity根据名称递归查找一个物体的子物体

public static GameObject FindHideChildGameObject(GameObject parent, string childName) { if(pare...

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

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

Unity获取游戏对象详解

我觉得Unity里面的Transform 和 GameObject就像两个双胞胎兄弟一样,这俩哥们很要好,我能直接找到你,你也能直接找到我。我看很多人喜欢在类里面去保存GameObject对象。解决G...
  • mixiuali
  • mixiuali
  • 2014年11月06日 16:49
  • 29715

Unity中的各种寻找GameObject方法

1.GameObject.Find():寻找Hierarchy面板中的activie 不为false的游戏对象; 路径如官方事例写法: public class ExampleClass : Mo...
  • cxihu
  • cxihu
  • 2015年08月27日 15:34
  • 14714

Unity3D 高效率查找子物体(孩子比较多 需要查找的物体比较多的时候)

using System.Collections; using System.Collections.Generic; using UnityEditor; using UnityEngine;pub...

Unity中关于查找物体的一系列验证

关于XXX.Find的一系列验证也看过很多技术博客里验证GameObject.Find/.FindWithTag/…是否可以找到场景里active为false的游戏物体。 真正用的时候早忘了,所以还...

Unity通过父物体找到所有子物体

sing UnityEngine; using System.Collections; public class GameSchedule : MonoBehaviour {    ...

unity中查找对象的五种方法

unity中提供了获取对象的三种方法: 通过对象名称(Find)
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Unity3D获取物体的所有子物体对象(child)
举报原因:
原因补充:

(最多只允许输入30个字)