Unity 中关于获取到物体的方式

在unity中获取到某个物体的方式有很多种,下面我们来分别介绍一下。

(1)public GameObject target;通过外部赋值来进行获取,但是在小项目中还可以使用,大的项目会管理非常混乱,尤其是在打包AssetBundle时,依赖关系很难处理。

(2)GameObject.Find("");这种获取物体的方式在unity5.0之后已经被取消了。

(3)GameObject.FindGameObjectWithTag("")通过标签来获取到某个物体,这个是获取到一个物体,相对应的是获取到同一种标签的数组GameObject.FindGameObjectsWithTag("")。

(4)GameObject.FindObjectOfType(typeof("")),通过物体上的组件类型来找到其物体,但这个方法只能找到在场景中第一个active为true的物体。

(5)GameObject.FindObjectsOfType(typeof("")),通过物体上的组件类型来找到其物体,这个方法可以找到在场景中全部为active为true的物体。

(6)Resources.FindObjectsOfTypeAll(""),找到场景中和Project两个中共有几个物体,这个一般不用。

(7)transform.Find(),这个是最常用的。

(8)transform.GetComponentInChildren<>(),这个在查找到的物体中也包括他自身。

猜你喜欢

转载自blog.csdn.net/caojianhua1993/article/details/51602509
今日推荐