我有1个第一人称控制器作为玩家并创建了1个立方体作为敌人。
Enemy有刚性的人为它分配重力,它在一个由立方体制成的平台上移动。
碰撞检测脚本附有敌人。 当敌人触及玩家方法成功触发时。但是当玩家触摸敌人的方法没有被调用时。
void OnCollisionEnter(Collision collision) {
Collider other=collision.collider;
Debug.Log(string.Format("OnCollisionEnter tag={0}",other.tag));
//
if(other.gameObject.tag=="Player")
{
Debug.Log("Player1 Touched");
}
}
答案 0 :(得分:0)
我找到了答案。
因为我使用了firstpersoncontroller,我必须实现以下方法来查找碰撞
void OnControllerColliderHit(ControllerColliderHit collision)
{
Debug.Log(string.Format("object tag={0}",collision.collider.gameObject.tag));
}
谢谢大家的帮助。 团结链接帮助了我。
http://docs.unity3d.com/Documentation/ScriptReference/MonoBehaviour.OnControllerColliderHit.html