android – 碰撞检测和碰撞响应

我一直在用手代表一些移动/旋转对象使用 Android的Opengl.现在我想允许他们碰撞和现实地回应.

研究这个问题,我可以找到许多资源,建议我如何确定两个3d形状是否在当前帧中相撞(或者它们是否会在下一帧中碰撞).但是,我无法找到描述如何获取有关发生冲突的信息的资源.

例如,使用凸形,我想知道哪个顶点首先与哪个平面碰撞,在帧之间的什么时间.这样我就可以知道每个形状应该如何响应它的位置和旋转.

我可以描述每个顶点的运动与一个射线,以及每个帧之间的平面的运动.然而,我有点迷茫了,我将如何使用它来找到他们未来的交叉点随着时间的推移,以及这是否可能有时间效率明智.我已经阅读了一些减少复杂计算需求的方法,如八进制和命中框.

我对这个话题来说是相当新鲜的,所以任何资源,或者通常处理这些问题的建议将不胜感激.感谢您的时间!

解决方法

对于碰撞检测,您正在寻找的解决方案称为连续碰撞检测,解释可以为 found here.检测两个物体之间的触点相对简单,特别是如果忽略角速度,但如果您正在进行具有两个以上对象的模拟您将需要在全球解决TOI,因为碰撞的顺序将是重要的,不能通过检查隔离的碰撞对来确定(不是那么简单).

此外,您应该说明您正在尝试解决的具体问题 – 因为查找TOI(影响时间)不是一个简单的任务and approximation could be perfectly valid solution in a certain scenario(比如游戏模拟).

blog I already gave links包含有关该主题的平易近人的文章,如果您想进一步阅读,请参阅进一步的阅读.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...