【发布时间】:2015-08-02 04:41:43
【问题描述】:
玩家是一个带有Circle Collider 2d 的轮子,当它与地面碰撞时可以跳跃和移动(isGrounded 变量)。
我还有另外两个 gameObjets 和 Polygon Colliders 2d 代表地面并并排连接。
玩家可以正常工作,但是当它同时与两个地面碰撞时,即使玩家仍然站在其中一个地面上,碰撞也不再有效。
变量isGrounded 变为 false 并失去对不会移动或跳跃的玩家的控制。
我正在使用 Unity3d 4.5
public class Wheel : MonoBehaviour {
void OnCollisionExit2D(Collision2D collision){
if(collision.gameObject.tag == "Ground"){
Global.IS_PLAYER_GROUNDED = false;
//Debug.Log("exit");
}
}
void OnCollisionEnter2D(Collision2D collision){
if(collision.gameObject.tag == "Ground"){
Global.IS_PLAYER_GROUNDED = true;
//Debug.Log("enter");
}
}
}
【问题讨论】: