我正在使用andengine和box2d扩展名 你看,我的物体从地面(红色矩形)飞到我的相机的屋顶(黄色),我不明白这个位置是什么
这是我的代码的一部分,
@Override
public EngineOptions onCreateEngineOptions() {
final Camera camera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
return new EngineOptions(true, ScreenOrientation.PORTRAIT_FIXED,
new RatioResolutionPolicy(CAMERA_WIDTH, CAMERA_HEIGHT), camera);
}
也是这个
@Override
protected Scene onCreateScene() {
this.mEngine.registerUpdateHandler(new FPSLogger());
this.mScene = new Scene();
this.mScene.setBackground(new Background(256, 256, 256));
this.mPhysicsWorld = new PhysicsWorld(new Vector2(0,SensorManager.GRAVITY_EARTH),false);
this.mScene.registerUpdateHandler(this.mPhysicsWorld);
答案 0 :(得分:1)
我认为你只需要使用-SensorManager.GRAVITY_EARTH,就像这样:
this.mPhysicsWorld = new PhysicsWorld(new Vector2(0, -SensorManager.GRAVITY_EARTH),false);
在AndEngine AnchorCenter分支中,您必须使用负值作为重力,以使物理对象掉落,因为坐标系已更改。