首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于2D碰撞检测的技术资源?

用于2D碰撞检测的技术资源?
EN

Stack Overflow用户
提问于 2008-08-27 20:21:09
回答 5查看 8.5K关注 0票数 12

在您看来,描述用于2D环境中碰撞检测的算法或技术的最佳资源(书籍或网页)是什么?

我只是渴望学习不同的技术来制作更复杂和高效的游戏。…

EN

回答 5

Stack Overflow用户

发布于 2008-09-18 00:32:31

冲突检测通常是一个两阶段的过程。某种“宽相位”算法,用于确定两个对象是否有重叠的机会(试图避免n^2比较),然后是“窄相位”碰撞检测算法,该算法基于应用程序的几何要求。

Sweep and Prune是一种成熟的高效宽相位算法(具有少量变体,可能适合也可能不适合您的应用程序),适用于经历相对物理运动的对象(快速移动的物体,或者大小和边界区域差异很大的物体可能会使其不适合)。Bullet库有一个3d实现供参考。

窄相位冲突通常可以像“CircleIntersectCircle”一样简单。同样,Bullet库有很好的参考实现。在3d领域,当需要对任意对象进行更精确的检测时,GJK是目前最好的工具之一--据我所知,没有什么能阻止它适应2d (但它最终可能比蛮横地强迫你所有的边缘更慢;)

最后,在进行碰撞检测之后,通常需要某种类型的碰撞响应。对于物理响应解决方案,Box 2d是一个很好的起点。

票数 14
EN

Stack Overflow用户

发布于 2008-08-27 20:24:58

就我个人而言,我喜欢Paul Bourke的工作。

此外,Paul Nettle曾经写过这个主题。他有一个完整的3D碰撞检测库,但您可能对这些库背后的想法更感兴趣(这些库非常适用于2D)。有关这一点,请参阅General Collision Detection for Games Using Ellipsoids

票数 2
EN

Stack Overflow用户

发布于 2008-08-31 00:52:43

Metanet Software已经发布了some relevant tutorials。Metanet开发了N (基于闪存,适用于Windows、Mac、Linux)和N+ (适用于X360、DS和PSP)。

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

https://stackoverflow.com/questions/31158

复制
相关文章

相似问题

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