Unity 3D 按标签查找对象问题
Unity 3D Find Object By Tag Issue
我有分配给它的标签 "Player" 的游戏对象,并尝试通过 С# 脚本找到它:
private GameObject player1;
void Srart(){
player1 = GameObject.FindGameObjectWithTag("Player");
if (player1 == null)
Debug.LogError ("Object with player tag had not been found!");
}
void Update(){
Debug.Log (player1.name);
}
问题是在 Update() 函数中抛出了 NullReferenceException,但没有抛出 LogError 消息。这意味着我的对象被标签成功找到了。但不知何故不是,因为更新函数中的 player1 等于 null。那么,为什么我会出现此错误?
您有一个拼写错误。
将 void Srart()
更改为 void Start()
。
查看 http://docs.unity3d.com/ScriptReference/MonoBehaviour.Start.html 和其他 MonoBehaviour 方法——拼写很重要!
我有分配给它的标签 "Player" 的游戏对象,并尝试通过 С# 脚本找到它:
private GameObject player1;
void Srart(){
player1 = GameObject.FindGameObjectWithTag("Player");
if (player1 == null)
Debug.LogError ("Object with player tag had not been found!");
}
void Update(){
Debug.Log (player1.name);
}
问题是在 Update() 函数中抛出了 NullReferenceException,但没有抛出 LogError 消息。这意味着我的对象被标签成功找到了。但不知何故不是,因为更新函数中的 player1 等于 null。那么,为什么我会出现此错误?
您有一个拼写错误。
将 void Srart()
更改为 void Start()
。
查看 http://docs.unity3d.com/ScriptReference/MonoBehaviour.Start.html 和其他 MonoBehaviour 方法——拼写很重要!