【发布时间】:2013-05-31 12:23:32
【问题描述】:
我一直在研究关于 cocos2d-iPhone 使用精灵边界框进行碰撞检测的许多不同主题,并且我有一个精灵围绕 CCNode 旋转偏移位置(精灵是节点的子节点,因此位置是相对于 CGPoint 中的父节点),而另一个精灵根本没有连接到节点。当我尝试对两个精灵的边界框进行碰撞检测时,它不起作用,因为一个精灵被添加到节点中。 所以,我的解决方案是使用节点精灵位置复制精灵,以制作另一个未连接的精灵,但获取另一个精灵的坐标。我想出了如何使用 convertToWorldSpace 方法获取子精灵的位置,但是位置是相对于节点的,所以我得到了非常奇怪的坐标。
所以我的问题是,有没有办法让碰撞作用于两个不同精灵的边界框,即使一个是另一个节点的子节点?如果没有简单的方法来做到这一点,那么有没有办法获得场景中精灵的绝对位置,其点与它的父级无关? 如果需要,我可以稍后添加示例代码。我现在不能,因为我正在使用我的手机。
【问题讨论】:
标签: cocos2d-iphone sprite collision-detection nodes bounding-box