LibGDX unProject返回错误的值

时间:2015-06-03 14:29:47

标签: java libgdx

我正在开发游戏,我需要将鼠标坐标转换为世界坐标。问题是我无法解决问题。当我点击原点时,它返回一个大约(4,-61)的值。值接近预期但不正确。可能是什么问题?

编辑:

camera.position

返回

  

[0.0,-960.0,0.0]

camera.unproject( new Vector3(Gdx.graphics.gedWidth()/2, Gdx.graphics.getHeight()/2, 0))

返回

  

[319.99997,238.99998,0.0]

当我点击我指向一个矩形的原点时,unprojecting返回

  

[0.77363586,-105.15996,0.0]

我的第一次尝试可能是错误的,但点击原点时未投影的Y值存在问题

Edit2:

以下是最简单的代码:

public boolean touchDown(int x, int y, int pointer, int button){

    camera.update();

    lastTouch = camera.unproject(new Vector3(x, y, 0));

    return true;
}

此处lastTouch的位置不正确

1 个答案:

答案 0 :(得分:-1)

应该调用viewport #project而不是camera #project。这解决了所有问题