OnTriggerExit 和 OnTriggerEnter 不工作

OnTriggerExit and OnTriggerEnter not working

我有问题。我希望 isOffRoad 在轮子进入附加到带有标签 offRoadBorder 的对象的对撞机时变为真,并在退出时变为假。似乎没有任何效果。对撞机和车轮都附有 rigidbody2D。提前致谢。

public bool isOffRoad = false;
void OnTriggerEnter2D(Collider2D col)
{
    Debug.Log("a");
        
    if (col.tag == "offRoadBorder")
    {
        isOffRoad = true;
    }
}
    
void OnTriggerExit2D(Collider2D col)
{
    Debug.Log("b");
        
    if (col.tag == "offRoadBorder")
    {
        isOffRoad = false;
    }
}

确保它们都有碰撞器并且两个碰撞器都启用了“是触发器”。

检查对撞机组件中的 IsTrigger 字段。触发器用于具有脚本用途的物理空对撞机。

否则使用OnCollision2D:

void OnCollisionEnter2D(Collision2D col)
{
    if (col.transform.CompareTag("offRoadBorder")) isOffRoad = true;
}
void OnCollisionExit2D(Collider2D col)
{
    if (col.transform.CompareTag("offRoadBorder")) isOffRoad = false;
}