ios - 仅对于碰撞检测,Chipmunk 或 Box2d 是更好的工具吗?

标签 ios cocos2d-iphone box2d chipmunk

对于基于 Cocos2d 的项目,我只想使用物理工具包进行碰撞检测。使用 Chipmunk 或 Box2d 的优缺点是什么?

最佳答案

根据 this answer Chipmunk 不支持连续碰撞检测,但 Box2D 支持。这对于防止“隧道效应”(高速移动时物体略微穿过彼此)很重要

Steffen Itterheim 对他的 Box2D vs Chipmunk FAQ 的评论对此进行了澄清。 : 如果您要拥有非常快速移动的物理对象,例如“子弹”,请考虑使用 Box2D,因为它可以进行扫描碰撞,也就是连续碰撞集成,以防止快速移动的对象深入穿透甚至隧道穿过其他对象。

Chipmunk Collision Detection文档讨论了 separate() 回调。 这一步两个形状刚刚停止接触。但我不清楚这是否对它们快速检测碰撞的能力有任何影响。

还有一个very negative opinion关于将 Box2D 用于突破性游戏我当前的游戏正在使用 Box2D,我希望我将 Chipmunk 与它一起使用......主要是因为 Box2D 有两个严重的问题,这些问题在我的游戏中更加严重:首先,它有一个非常老的物体在角落“卡住”的错误,我的游戏是一个突破游戏,所以当球沿着墙壁“滚动”时,有时它会卡住并从墙上抛出,很多人问为什么我的游戏物理看起来“随机” ".

结论:我也很困惑。

关于ios - 仅对于碰撞检测,Chipmunk 或 Box2d 是更好的工具吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7673877/

相关文章:

ios - TableView Cell 视频自动播放

ios - 在后台线程加载 UITableView 图像

ios - 如何从V2 Box iOS SDK获取文件扩展名和路径?

ios - 如何获得高质量的 iOS 屏幕截图?

ios cocos2d 2.0 使用什么代替 glNormalPointer

objective-c - b2PolygonShape::TestPoint(p1, p2) 中的变换参数是什么?

ios - EKReminder 没有设置日历

iphone - Cocos2d-iPhone:dealloc后调用 "update"

cocos2d-iphone - 为 cocos2d/box2d 游戏添加一个 'warp' 功能

iphone - Box2d:在一个方向上应用速度