如何获得整个世界的游戏坐标?

时间:2019-07-07 18:26:50

标签: java libgdx

我正在尝试获取整个游戏的坐标。但是当我调用Gdx.input.getX()Gdx.input.getY()时,它仅给出屏幕坐标,而不给出整个游戏中的坐标。

我尝试过这种方法:

private Vector3 mouse_position = new Vector3(Gdx.graphics.getWidth(), Gdx.graphics.getHeight(), 0);

mainCamera.unproject(mouse_position);
System.out.println(mouse_position.x + "  " + mouse_position.y);

...但是这给出了完全错误的坐标。我想我在这里缺少什么。

如果需要的话,可以在我的render()方法中使用这两种方法。

1 个答案:

答案 0 :(得分:3)

您需要传递当前的鼠标位置,然后使用相机取消投影。

Vector3 mouse_position = new Vector3(Gdx.input.getX(), Gdx.input.getY(), 0);

mainCamera.unproject(mouse_position);
System.out.println(mouse_position.x + "  " + mouse_position.y);