Diferenças do sistema de coordenadas da libgdx entre renderização e entrada de toque

Eu tenho uma tela (BaseScreen implementa a interface de tela) que processa uma imagem PNG. Ao clicar na tela, ele move o personagem para a posição tocada (para fins de teste).

public class DrawingSpriteScreen extends BaseScreen {
    private Texture _sourceTexture = null;
    float x = 0, y = 0;

    @Override
    public void create() {
        _sourceTexture = new Texture(Gdx.files.internal("data/character.png"));
    }

    .
    .
}

Durante a renderização da tela, se o usuário tocar na tela, eu pego as coordenadas do toque e as uso para renderizar a imagem do personagem.

@Override
public void render(float delta) {
    if (Gdx.input.justTouched()) {
        x = Gdx.input.getX();
        y = Gdx.input.getY();
    }

    super.getGame().batch.draw(_sourceTexture, x, y);
}

O problema são as coordenadas para desenhar o início da imagem a partir da posição inferior esquerda (como observado no LibGDX Wiki) e as coordenadas para a entrada de toque começam no canto superior esquerdo. Então, o problema que estou tendo é que eu clico no canto inferior direito, ele move a imagem para o canto superior direito. Minhas coordenadas podem ser X 675 Y 13, que ao toque estariam perto do topo da tela. Mas o personagem aparece na parte inferior, pois as coordenadas começam do canto inferior esquerdo.

Porque é que? Por que os sistemas de coordenadas são invertidos? Estou usando os objetos errados para determinar isso?

questionAnswers(4)

yourAnswerToTheQuestion