我有一个三角形的精灵,我想知道这个三角形何时与另一个对象(CCSPrite)相交。我一直在使用CGRectIntersectsRect
,但它不准确,因为它采用了两个精灵的边界框而不是实际的形状。
- 编辑
我认为一种方法是在实际三角形周围定义几个点,并检查这些点与另一个精灵之间的交点。我只是想知道是否有更简单的方法来做到这一点。
答案 0 :(得分:1)
您可以使用box2d准确检测碰撞。如果您有许多不同的复杂形状,它会很有用。或者你可以检查形状边缘的交点。
如果有很多物体要检测碰撞,我建议使用box2d。它具有良好的内部优化,能够处理大量对象。在这种情况下,您只需要在将对象添加到游戏图层之前创建与精灵的形状相等的物理身体。