![]() |
1
1
拾取光线与模型矩阵无关。如果场景中的对象移动(即模型矩阵更改),则光线本身不会移动。
我将相应地编辑这个答案 编辑:那就买国产的吧 首先,需要生成光线。您通常希望在世界空间中表达它(即“我的光线开始于与相机相同的位置,其方向是(xyz))。有两种方法可以做到这一点,在openGL Faq中有很好的解释(一种生成拾取光线的方法。。。另一种方法。只是复制粘贴代码。
现在,您要做的是将光线与网格的三角形相交,但有一个问题,因为三角形与光线在同一个系统中表示。 所以你必须表示三角形系统中的光线。 三角形系统:模型系统;光线系统:世界系统。幸运的是,您有一个从模型到世界的矩阵(模型矩阵,您在模型后面设置的矩阵)。所以逆矩阵(ModelMatrix)是从世界到矩阵的矩阵。
三角形射线相交代码可以在几何工具.com
代码也可以在几何工具上找到。 我要离开几天,所以祝你好运:) |
![]() |
Jimmy Yang · 何时需要进行透视分割? 2 年前 |
![]() |
Max Mister · 使用鼠标事件计算相机的位置和旋转 6 年前 |
![]() |
Lane will · OpenGL选择区域 6 年前 |
![]() |
synchronizer · openGL 2D视差滚动纹理撕裂/接缝 6 年前 |
![]() |
Steven Venham · OpenGL单通道到多通道的可行性 6 年前 |
![]() |
Andrew Lundgren · 如何在OpenTK(迷你地图!) 6 年前 |
![]() |
Kevin Su · 无法在opengl中正确绘制我的汽车 6 年前 |
![]() |
user1832287 · 来自细分控制点的边上的瑕疵 6 年前 |