首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >统一中快速运动游戏对象的碰撞检测

统一中快速运动游戏对象的碰撞检测
EN

Stack Overflow用户
提问于 2017-05-30 15:48:11
回答 1查看 8.2K关注 0票数 0

我正在建立一个基本的空间射击游戏,但有问题的触发对撞机。

在游戏中,我有一个子弹预制件,有一个胶囊触发对撞机连接在它和敌人现在是一个基本的立方体与盒对撞机连接在上面。

当我运行游戏,我开始射击子弹和敌人立方体不会消失,直到几次射击。

这是我的子弹预制件代码:

代码语言:javascript
复制
void OnTriggerEnter(Collider col) {
        if (col.tag == "Enemy") {
            Destroy (col.gameObject);
        }
    }

还有我对每个游戏对象属性的截图:

子弹预制件:

这是敌人的立方体:

这是一段关于正在发生的事情的视频的链接。

https://youtu.be/NjHK6oVP0OQ

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-30 19:27:01

据我所知,这个问题可能与评论中的问题类似,但我确实找到了另一个解决办法,这对那些有这个问题的人可能有一定的帮助。

这个错误之所以发生,是因为我的“子弹”预制件移动得太快,以至于无法检测到碰撞。

修复:i将子弹预制刚体的碰撞检测属性改为连续动态,因为它移动得很快。完全引用刚体碰撞检测模式链接如下。

https://docs.unity3d.com/ScriptReference/Rigidbody-collisionDetectionMode.html

这与评论中“类似”问题的答案之间的区别是,这个答案与光线投射相对于非常简单的对撞机有很大的关系(这就是我想要的)。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44266691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档