如何忽略碰撞但在 unity2D 中引发触发事件

时间:2021-03-23 16:52:06

标签: c# unity3d

我有一个敌人对撞机 2D 和玩家对撞机 2D。我需要玩家可以通过敌人。我将 Physics2D 设置为

Physics2D.IgnoreLayerCollision(10 (Player layer), 12(Enemie layer));

但我仍然需要显示玩家与敌人互动的事件。我在敌人上添加了触发器,但 OnTriggerEnter2D() 函数不起作用

1 个答案:

答案 0 :(得分:1)

为什么要忽略图层?

你需要它们相互“碰撞”才能触发事件!

Collision Matrix 应该读作“交互矩阵”,而 IgnoreLayerCollision 应该读作“忽略层交互”。

您宁愿启用 Collider2D.isTrrigger 以便对象可以通过此碰撞器,但仍会接收触发事件只要您满足 Collision Action Matrix

中列出的条件