Box2D 和 Cocos2d-x 坐标
Box2D and Cocos2d-x coordinates
我正在使用 Box2D 和 cocos2d-x 但我无法确定坐标系。
我知道 cocos2d-x 使用 P(0,0)
作为屏幕的左下部分。
Box2D 使用 P(0, 0)
作为它的世界中心。
我正在为 Box2D 使用调试绘图。
当在 Box2D 坐标中的 P(0,0)
处创建一个多边形形状的物体时,它会显示在屏幕的左下角。
为什么它没有出现在中心?
定位任意b2Body
时,水平居中使用Sprite::getBoundingBox().getMidX()
,垂直居中使用Sprite::getBoundingBox().getMidY()
。
您可能希望将这些调用包装在 Node::convertToWorldSpace(midX, midY)
中,以确保您的中心坐标扩展到 cocos2d-x 世界坐标系,因此 Box2D 世界坐标 space 为它必须是一致的。
我正在使用 Box2D 和 cocos2d-x 但我无法确定坐标系。
我知道 cocos2d-x 使用 P(0,0)
作为屏幕的左下部分。
Box2D 使用 P(0, 0)
作为它的世界中心。
我正在为 Box2D 使用调试绘图。
当在 Box2D 坐标中的 P(0,0)
处创建一个多边形形状的物体时,它会显示在屏幕的左下角。
为什么它没有出现在中心?
定位任意b2Body
时,水平居中使用Sprite::getBoundingBox().getMidX()
,垂直居中使用Sprite::getBoundingBox().getMidY()
。
您可能希望将这些调用包装在 Node::convertToWorldSpace(midX, midY)
中,以确保您的中心坐标扩展到 cocos2d-x 世界坐标系,因此 Box2D 世界坐标 space 为它必须是一致的。