GameObject.FindGameObjectWithTag 返回(克隆)?
GameObject.FindGameObjectWithTag returning (clone)?
我有这个问题,当我使用
GameObject.FindGameObjectWithTag("red");
当我将动画组件添加到游戏对象时它开始了
回归
red(Clone)
当游戏对象在层次结构中作为唯一具有标签 "red" 的游戏对象时
它只发生在我添加动画组件之后,当我退出 unity 并重新启动 unity 时,问题就消失了,我得到的错误是
MissingComponentException:没有 'Rigidbody2D' 附加到 "red(Clone)" 游戏对象,但脚本正在尝试访问它。
场景中有一个红色不是红色(克隆)但我在检查器中看到当我使用 GameObject.FindGameObjectWithTag("red")它发现红色(克隆)但没有红色(克隆)在场景中只是红色,它发生在我添加了一个动画组件并在我重新启动 Unity 时停止了,它一定是一个错误,只是想在这里检查 id
编辑
就像我说的那样,场景中有一个红色,它也附有一个 RigidBody2d,只是不存在红色(克隆),谢谢你的时间
这似乎是 Unity 中一个很长的 运行 错误,可以追溯到 4.3。希望在 unity 5
中得到修复
似乎动画师 window 出于某种原因导致了一个克隆,该克隆是不可移除的。
目前已知只有两种方法可以绕过这个问题
- 如果你还没有保存场景,关闭动画器window,关闭unity并重新启动unity。这应该让你摆脱这个对象。
如果您已经保存了场景
- 改用另一个标签,所以不要使用 red,而是使用 Red.
一般建议,只要错误是 运行,尽量避免使用 FindGameObjectWithTag。由于无法保证稳定性。
其他一些不太理想的方法来处理这个问题:
在使用之前找到并销毁克隆体:
GameObject[] remaining = GameObject.FindGameObjectsWithTag(Tags.player);
foreach (GameObject clone in remaining) {
if(clone.name == "Player_Aleysha(Clone)"){
GameObject.Destroy(clone);
}
我有这个问题,当我使用
GameObject.FindGameObjectWithTag("red");
当我将动画组件添加到游戏对象时它开始了
回归
red(Clone)
当游戏对象在层次结构中作为唯一具有标签 "red" 的游戏对象时 它只发生在我添加动画组件之后,当我退出 unity 并重新启动 unity 时,问题就消失了,我得到的错误是
MissingComponentException:没有 'Rigidbody2D' 附加到 "red(Clone)" 游戏对象,但脚本正在尝试访问它。
场景中有一个红色不是红色(克隆)但我在检查器中看到当我使用 GameObject.FindGameObjectWithTag("red")它发现红色(克隆)但没有红色(克隆)在场景中只是红色,它发生在我添加了一个动画组件并在我重新启动 Unity 时停止了,它一定是一个错误,只是想在这里检查 id
编辑 就像我说的那样,场景中有一个红色,它也附有一个 RigidBody2d,只是不存在红色(克隆),谢谢你的时间
这似乎是 Unity 中一个很长的 运行 错误,可以追溯到 4.3。希望在 unity 5
中得到修复似乎动画师 window 出于某种原因导致了一个克隆,该克隆是不可移除的。
目前已知只有两种方法可以绕过这个问题
- 如果你还没有保存场景,关闭动画器window,关闭unity并重新启动unity。这应该让你摆脱这个对象。
如果您已经保存了场景
- 改用另一个标签,所以不要使用 red,而是使用 Red.
一般建议,只要错误是 运行,尽量避免使用 FindGameObjectWithTag。由于无法保证稳定性。
其他一些不太理想的方法来处理这个问题:
在使用之前找到并销毁克隆体:
GameObject[] remaining = GameObject.FindGameObjectsWithTag(Tags.player); foreach (GameObject clone in remaining) { if(clone.name == "Player_Aleysha(Clone)"){ GameObject.Destroy(clone); }