Java libGDX spiriteBatch.draw()未定位在正确的位置

Java libGDX spiriteBatch.draw()未定位在正确的位置,java,android,libgdx,Java,Android,Libgdx,下面是一个示例代码,它对我来说运行不正常,我是否做错了什么 textureCharacter = new Texture(Gdx.files.internal("data/character1.png")); if (Gdx.input.isTouched()) { spriteBatch.draw(textureCharacter, Gdx.input.getX(), Gdx.input.getY()); } 当我触摸X=5和Y=5位置的SpiriteBack时(例如),它在X=

下面是一个示例代码,它对我来说运行不正常,我是否做错了什么

textureCharacter = new Texture(Gdx.files.internal("data/character1.png")); 

if (Gdx.input.isTouched()) {
    spriteBatch.draw(textureCharacter, Gdx.input.getX(), Gdx.input.getY());
}
当我触摸X=5和Y=5位置的SpiriteBack时(例如),它在X=5处绘制纹理,但Y是Gdx.graphics.getHeight()-5px???通过向下移动输入Y,纹理将向上移动

Gdx.input.getX()和Gdx.input.getY()返回值:X=5,Y=5


我要做的只是将纹理移动到我正在触摸/移动的输入位置。

屏幕坐标不一定与模型空间坐标相同。你的相机清晰度是什么样的?(因为它定义了模型空间到屏幕的映射。)
Gdx.intput.getX()
调用返回屏幕空间中的一个点

Y轴(默认情况下)在屏幕上和GL空间中指向相反的方向。(在屏幕坐标中从屏幕顶部向下生长,在GL坐标中向屏幕顶部生长)。您可以调整相机以匹配屏幕坐标,也可以将触摸坐标映射到GL坐标

请参见中的调用
camera.unproject()

屏幕坐标不一定与模型空间坐标相同。你的相机清晰度是什么样的?(因为它定义了模型空间到屏幕的映射。)
Gdx.intput.getX()
调用返回屏幕空间中的一个点

Y轴(默认情况下)在屏幕上和GL空间中指向相反的方向。(在屏幕坐标中从屏幕顶部向下生长,在GL坐标中向屏幕顶部生长)。您可以调整相机以匹配屏幕坐标,也可以将触摸坐标映射到GL坐标

请参见中的调用
camera.unproject()