我正在使用WebGL构建一个桌面游戏。可以旋转/缩放游戏板。我需要一种方式将画布元素(x,y)上的点击转换为3D空间中相关点(x,y,z)。最终结果是我想知道包含与用户最接近的对象碰触点的(x,y,z)坐标。例如,用户单击一个棋子,你就可以想象一条穿过3D空间的射线,穿过棋子和游戏板,但我想要的是在被触摸到的地方的棋子的(x,y,z)坐标。
我觉得这肯定是个很常见的问题,但我似乎找不到谷歌上的解决方案。必须有一种将3D空间的当前视图投影到2D空间的方法,以便可以将2D空间中的每个点映射到3D空间中的相关点。我希望用户能够在游戏板上悬停鼠标,然后该处点变色。
我觉得这肯定是个很常见的问题,但我似乎找不到谷歌上的解决方案。必须有一种将3D空间的当前视图投影到2D空间的方法,以便可以将2D空间中的每个点映射到3D空间中的相关点。我希望用户能够在游戏板上悬停鼠标,然后该处点变色。