我正在使用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)
处创建附着有多边形的物体时,它会显示在屏幕的左下方。
为什么它没有显示在中心?
答案 0 :(得分:0)
放置任何b2Body
时,将Sprite::getBoundingBox().getMidX()
用于水平中心,将垂直中心使用Sprite::getBoundingBox().getMidY()
。
您可能希望将这些调用包装在Node::convertToWorldSpace(midX, midY)
中,以确保将中心坐标扩展到cocos2d-x世界坐标系中,从而确保Box2D世界坐标空间必须一致。 >