unity OnCollisionEnter 函数未注册
Unity OnCollisionEnter function not registering
我无法注册我的 OnCollisionEnter();我已经从以前的 Unity 程序中复制了该功能并复制了所有内容。 FPSController 之间的冲突应该会降低 TreeHealth。
void OnCollisionEnter(Collision collision)
{
print("Colision");
if (collision.gameObject.tag == "TreeTag")
{
treeScript = collision.gameObject.GetComponent<TreeFall>();
treeScript.treeHealth--;
}
}
我建议您将 print() 函数替换为 Debug.Log() 并检测树脚本中的碰撞并检查播放器的碰撞。
您是否尝试使用 OnControllerColliderHit? I think you have to use this method instead of OnCollisionEnter if you move the character with the CharacterController 组件。
我无法注册我的 OnCollisionEnter();我已经从以前的 Unity 程序中复制了该功能并复制了所有内容。 FPSController 之间的冲突应该会降低 TreeHealth。
void OnCollisionEnter(Collision collision)
{
print("Colision");
if (collision.gameObject.tag == "TreeTag")
{
treeScript = collision.gameObject.GetComponent<TreeFall>();
treeScript.treeHealth--;
}
}
我建议您将 print() 函数替换为 Debug.Log() 并检测树脚本中的碰撞并检查播放器的碰撞。
您是否尝试使用 OnControllerColliderHit? I think you have to use this method instead of OnCollisionEnter if you move the character with the CharacterController 组件。