我正在建立一个基本的空间射击游戏,但有问题的触发对撞机。
在游戏中,我有一个子弹预制件,有一个胶囊触发对撞机连接在它和敌人现在是一个基本的立方体与盒对撞机连接在上面。
当我运行游戏,我开始射击子弹和敌人立方体不会消失,直到几次射击。
这是我的子弹预制件代码:
void OnTriggerEnter(Collider col) {
if (col.tag == "Enemy") {
Destroy (col.gameObject);
}
}还有我对每个游戏对象属性的截图:
子弹预制件:

这是敌人的立方体:

这是一段关于正在发生的事情的视频的链接。
发布于 2017-05-30 19:27:01
据我所知,这个问题可能与评论中的问题类似,但我确实找到了另一个解决办法,这对那些有这个问题的人可能有一定的帮助。
这个错误之所以发生,是因为我的“子弹”预制件移动得太快,以至于无法检测到碰撞。
修复:i将子弹预制刚体的碰撞检测属性改为连续动态,因为它移动得很快。完全引用刚体碰撞检测模式链接如下。

https://docs.unity3d.com/ScriptReference/Rigidbody-collisionDetectionMode.html
这与评论中“类似”问题的答案之间的区别是,这个答案与光线投射相对于非常简单的对撞机有很大的关系(这就是我想要的)。
https://stackoverflow.com/questions/44266691
复制相似问题