2010-05-05 29 views
5

我已经集成在Box2D的我的发动机,(调试抽奖等),并与世界我可以在一些2D正方形/长方形等只在我的2D引擎中集成Box2D碰撞检测?

我看到this后,用户基本上是不使用的世界扔碰撞检测,但是用户并不能说明有关他如何使用歧管(b2Manifold)任何事情,等

Another post,是在cocos2d的论坛上,(向下滚动到用户林在第三回复)

任何人都可以帮我一下吗?,基本上想添加碰撞检测而不需要使用b2World等等。

非常感谢!

回答

2

这两篇文章中的代码似乎对我完成。您从两个多边形形状及其相应的变换开始,并从b2CollidePolygons返回一个接触流形。

b2Manifold只是两个形状边界相交的点的集合。在作者使用的发布代码中,如果歧管的点数大于零,则会有重叠。取决于形状的性质,当重叠时可以有不同数量的交点。

请注意,b2World的碰撞处理非常强大。除了简单的碰撞查询之外,它还有广泛的阶段剔除,光线投射,空间树,开始接触和最终接触事件,有效的内存管理来命名一些事物。对于大多数这些任务,API中有类,但我不能说我熟悉手动使用它们。值得一看。