我知道以前有人问过这个问题,但我在任何地方都找不到答案,所以请不要将其标记为重复。
我正在尝试在 Unity 中制作一个 2D 游戏,其中我需要检测子弹击中敌人。
我在敌人预制件和子弹预制件上都有一个 Box Collider 2D 和一个 Rigidbody 2D。
首先,我尝试在未选中“Is Trigger”框的情况下进行操作。
这是我使用的代码:
function OnCollisionEnter2D(coll: Collision2D)
{
Debug.Log("Detected !");
}
没有成功。
接下来,我尝试在“已触发”框中进行检查,并使用以下代码:
function OnTriggerEnter2D(other: Collider2D)
{
Debug.Log("Detected !");
}
再一次,没有成功...
我在两个对象上拥有的组件都是“Box Collider 2D”。
我尝试的两种方法都没有返回任何错误消息,只是没有调用函数。
如果有人知道发生了什么,请尽快让我知道 - 在此之前我无法继续开发我的游戏:/
这是 Unity 的错误吗?我应该报告吗?
此外,这是其中一个对象的检查器屏幕截图:
向任何可以回答我所有问题的人干杯!对不起,如果我没有正确格式化我的帖子,我对论坛有点陌生......
Fjpackard。