查找游戏物体各种方法
- Object下的方法
FindObjectOfType
查找相应类型的游戏物体,查找到第一个就返回
不查找未激活的物体,如果物体未激活,返回值为Null
Light light = FindObjectOfType<Light>();//查找光
FindObjectsOfType
查找相应类型的游戏物体,查找全部,返回数组
不查找未激活的物体
Transform[] ts = FindObjectsOfType<Transform>();//查找所有Transform组件
- GameObject下的方法
GameObject.Find
通过名称, 全局查找,比较消耗性能
GameObject mainCamera = GameObject.Find("Main Camera");//查找主相机
Camera camera = mainCamera.GetComponent<Camera>();//可以通过查找到的物体获取组件
GameObject.FindGameObjectsWithTag
通过标签查找,返回所有符合条件的游戏物体的集合
GameObject[] gos = GameObject.FindGameObjectsWithTag("MainCamera");
GameObject.FindGameObjectWithTag
通过标签查找,找到符合的第一个
GameObject go = GameObject.FindGameObjectWithTag("MainCamera");
GameObject.FindWithTag
与FindGameObjectWithTag相同