如何使Android Andengine游戏向后兼容低端设备(低分辨率)

时间:2012-10-03 09:28:56

标签: android andengine

我正在使用Android Andengine开发游戏。 我正在使用相机宽度720和相机高度480,但对于像360 x 480这样的低端设备,我使用的所有图像都是压缩​​的。 代码是

public Engine onLoadEngine() {
    mCamera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
    return new Engine(new EngineOptions(true, ScreenOrientation.LANDSCAPE, 
            new FillResolutionPolicy(), mCamera).setNeedsSound(true));
}

有没有解决方案?

1 个答案:

答案 0 :(得分:1)

在onCreateEngineOptions()中,您应指定RatioResolutionPolicy。这会将您的活动扩展到所需的大小。您可以使用以下方法获取当前屏幕大小:

private DisplayMetrics getScreenResolutionRatio() {
    DisplayMetrics dm = new DisplayMetrics();
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindowManager().getDefaultDisplay().getMetrics(dm);
    return dm;
}

然后指定您的RatioResolutionPolicy:

public EngineOptions onCreateEngineOptions() {
    RatioResolutionPolicy policy = new RatioResolutionPolicy(getScreenResolutionRatio().width, getScreenResolutionRatio().height);
    return new EngineOptions(true, ScreenOrientation.PORTRAIT_SENSOR, policy, this.mCamera);
}