当与另外两个碰撞体同时碰撞时,碰撞停止工作
本文关键字:碰撞 停止工作 两个 | 更新日期: 2023-09-27 18:33:42
玩家是一个带有Circle Collider 2d
的轮子,当它与地面碰撞时可以跳跃和移动(isGrounded
变量)。
我还有另外两个gameObjets
,Polygon Colliders 2d
代表地面并排连接。
可以完美地工作,但是当它同时与两个地面碰撞时,即使玩家仍然站在其中一个地面上,碰撞也不再有效。变量isGrounded
变为假,失去对不会移动或跳跃的玩家的控制。
我正在使用 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");
}
}
}
嘿,你能尝试添加OnCollisionStay2D(Collision2D coll){//添加在 oncollisionenter 中写的内容} 我猜这应该不会有所帮助,但如果它没有生病,请尝试为您想出另一种方法