所以我试图在WebGL中创建一个2D绘图程序,我可以很好地绘制所有内容,但是我在检测鼠标点击位置时遇到了很多困难。
我有一个4x4投影矩阵设置如下:
mat4.perspective(45, this.gl.viewportWidth / this.gl.viewportHeight, 0.1, 100.0, projectionMatrix);
然后我有一个4x4视图矩阵,它保持摄像机位置如下:
mat4.translate(viewMatrix, [camera.getX(), camera.getY(), camera.getZoom()]);
我可以在屏幕上获得鼠标点击位置的二维矢量,范围从左上角的[-1,-1]
到右下角的[1,1]
。
我想要做的是获取相机的当前位置,获得z平面上的平截头体边界,然后使用我的相对鼠标点击位置来获得z平面上的实际世界空间位置。
注意: