我正在做一个游戏,我需要检测一条线和一个多边形之间的碰撞。经过大量的搜索,似乎cocos2d不支持多边形碰撞?Cocos2d或Box2d?
我可以执行直线和直角碰撞检测,但不能执行多边形。 我必须移动到Box2d吗?任何意见非常感谢。
我正在做一个游戏,我需要检测一条线和一个多边形之间的碰撞。经过大量的搜索,似乎cocos2d不支持多边形碰撞?Cocos2d或Box2d?
我可以执行直线和直角碰撞检测,但不能执行多边形。 我必须移动到Box2d吗?任何意见非常感谢。
Cocos2D不提供任何形式的碰撞检测。你想要的是一个射线与多边形相交测试,这是你可以用Box2D或Chipmunk做的事情。两者都包含在Cocos2D(适用于iPhone)中。 Box2D的和花栗鼠允许执行游戏物理就像地心引力,风,碰撞检测等
如果你需要做一个检测平原的Cocos2D“的那种”,那么我建议使用CGRectContainsCGRect或CGRectContainsCGPoint或CGRectIntersectsCGRrect功能来照着做。这可能会帮助你实现你想要的,但它不会像使用Box2D或Chipmunk游戏物理一样好。
cocos2d
只提供简单的碰撞检测,如CCRect::rectContainsPoint
(在cocos2d-x
)或rectIntersectsRect
。
如果你的多边形是一个矩形,那么你可以通过判断这个矩形所包含的线条是否有点来进行检测。
我猜我没有选择,只能移动到Box2d。谢谢你的建议。 – vwee 2012-03-24 04:31:53