如何获取整个世界的游戏坐标?
How to get game coordinates in the entire world?
我正在尝试获取整个游戏中的坐标。但是当我调用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()
方法中。
您需要传递当前鼠标位置,然后使用相机取消投影。
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);
我正在尝试获取整个游戏中的坐标。但是当我调用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()
方法中。
您需要传递当前鼠标位置,然后使用相机取消投影。
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);