如何在移动游戏“ALONE”中编写精确的swip控件

时间:2016-04-25 18:37:22

标签: java android libgdx

我想在游戏ALONE中制作我的触控控件。我设法用相同的控件制作原型Android游戏,但我想知道我是怎么做的 在多种设备分辨率下保持相同的触摸灵敏度? 当我在高分辨率设备上玩我的原型游戏时,我注意到了 例如1920 x1080的触摸灵敏度相比太大了 分辨率较低,如480 x 800.这是我的代码:

if (Gdx.input.isTouched()) {
        player.rotate(Gdx.input.getDeltaX() * delta);
    }
播放器类中的

更新方法:

public void update(float delta){
    x += Math.cos(Math.toRadians(rotation)) * speed * delta;
}

我的播放器类中有这个方法

public void rotate(float x) {
    this.rotation -= x * 90.0f;
}

1 个答案:

答案 0 :(得分:0)

通过设备DPI缩放输入增量。

player.rotate(Gdx.input.getDeltaX() / Gdx.graphics.getPpiX() * DEGREES_PER_DEVICE_INCH);