Libgdx - 如何在每个部分中为不同的输入处理器分割屏幕

时间:2015-04-19 23:09:13

标签: java input libgdx touchpad trackpad

我使用了#34; CameraInputController"和"触控板"它包含在移动我的相机的舞台中,并分别移动我的角色。

但是,我遇到了一个问题。我像这样使用InputMultiplexer设置两个处理器。

    InputMultiplexer multiplexer = new InputMultiplexer();
    multiplexer.addProcessor(camController);
    multiplexer.addProcessor(stage);

    Gdx.input.setInputProcessor(multiplexer);

现在的问题是当我移动触摸板时,相机也会移动。这对玩家来说很烦人。

因此我想要一种方法在屏幕的不同部分使用不同的输入处理器。

1 个答案:

答案 0 :(得分:3)

我认为它会通过改变InputAdapter的顺序来解决。

multiplexer.addProcessor(stage);
multiplexer.addProcessor(camController);

因为Stage现在是第一个处理输入事件的人,如果你返回true,那么camController之后就不会被处理。有关更多信息,请参阅InputMultiplexer Wiki