Java 如何将鼠标坐标转换为世界坐标 我想做什么

Java 如何将鼠标坐标转换为世界坐标 我想做什么,java,opengl,lwjgl,ray-picking,mouse-picking,Java,Opengl,Lwjgl,Ray Picking,Mouse Picking,拾取一个对象 要求/条件 我的鼠标总是在屏幕中央 仅拾取第一个/最近的对象 我想知道的是 如何将鼠标坐标(实际上是0,0,因为鼠标锁定在中间)转换为世界坐标 如何获得实际的视图方向 我想我该怎么办 伪码 int mx,my = convert(Mouse.getX()), convert(Mouse.getY()) int mz = ?? int dx, dy, dz = ?? # direction of view drawRay(mx, my, mz, dx, dy,

拾取一个对象

要求/条件
  • 我的鼠标总是在屏幕中央
  • 仅拾取第一个/最近的对象
我想知道的是 如何将鼠标坐标(实际上是0,0,因为鼠标锁定在中间)转换为世界坐标

如何获得实际的视图方向

我想我该怎么办 伪码

int mx,my = convert(Mouse.getX()), convert(Mouse.getY())
int mz = ??
int dx, dy, dz = ?? # direction of view
drawRay(mx, my, mz, 
        dx, dy, dz + 10) # 10 shall be the range to pick

# later check for intersections

相机位置+相机方向+视野+纵横比+近平面+基本几何在您的情况下,可能值得一看。否则,请查看