Box2D和Cocos2d-x坐标

时间:2019-02-22 22:01:00

标签: cocos2d-iphone box2d

我正在使用Box2D和cocos2d-x,但无法弄清楚坐标系。

我知道cocos2d-x使用draggable = browser.div(id: 'module-0').div(class: 'ui-draggable') drop_zone = browser.div(id: 'module-1').div(class: 'ui-droppable') draggable.drag_and_drop_on drop_zone 作为屏幕的左下部分。 Box2D使用P(0,0)作为世界的中心。

我正在为Box2D使用调试绘图。

在Box2D坐标中的P(0, 0)处创建附着有多边形的物体时,它会显示在屏幕的左下方。

为什么它没有显示在中心?

1 个答案:

答案 0 :(得分:0)

放置任何b2Body时,将Sprite::getBoundingBox().getMidX()用于水平中心,将垂直中心使用Sprite::getBoundingBox().getMidY()

您可能希望将这些调用包装在Node::convertToWorldSpace(midX, midY)中,以确保将中心坐标扩展到cocos2d-x世界坐标系中,从而确保Box2D世界坐标空间必须一致。 >