按 name
查找 GameObject,然后返回它。
此函数仅返回活动 GameObject。如果未找到具有 name
的 GameObject,则返回 null。如果 name
包含“/”字符,则会向路径名称那样遍历此层级视图。
出于性能原因,建议不要每帧都使用此函数,而是在启动时将结果缓存到成员变量中,或者使用 GameObject.FindWithTag。
Note: If you wish to find a child GameObject, it is often easier to use Transform.Find.
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public GameObject hand; void Example() { hand = GameObject.Find("Hand"); hand = GameObject.Find("/Hand"); hand = GameObject.Find("/Monster/Arm/Hand"); hand = GameObject.Find("Monster/Arm/Hand"); } }
GameObject.Find is useful for automatically connecting references to other objects at load time; for example, inside MonoBehaviour.Awake or MonoBehaviour.Start.
出于性能原因,建议不要每帧都使用此函数。
A common pattern is to assign a GameObject to a variable inside MonoBehaviour.Start, and use the variable in MonoBehaviour.Update.
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { private GameObject hand; void Start() { hand = GameObject.Find("/Monster/Arm/Hand"); } void Update() { hand.transform.Rotate(0, 100 * Time.deltaTime, 0); } }