【发布时间】:2014-10-15 13:28:57
【问题描述】:
我在为我的 WebGL 场景计算矩阵数学时遇到了麻烦。我尝试过的一切似乎都无法正确显示。
在我的 3D 世界中,我有许多模型。每个模型都有一个 XYZ 矢量,用于在世界中的位置、旋转和缩放。相机有一个用于位置和旋转的向量。
将这些向量转换为模型视图矩阵以供每个模型传递给着色器的最佳(并且显然是有效的)方法是什么?
提前致谢! :)
【问题讨论】:
标签: javascript matrix 3d webgl
我在为我的 WebGL 场景计算矩阵数学时遇到了麻烦。我尝试过的一切似乎都无法正确显示。
在我的 3D 世界中,我有许多模型。每个模型都有一个 XYZ 矢量,用于在世界中的位置、旋转和缩放。相机有一个用于位置和旋转的向量。
将这些向量转换为模型视图矩阵以供每个模型传递给着色器的最佳(并且显然是有效的)方法是什么?
提前致谢! :)
【问题讨论】:
标签: javascript matrix 3d webgl
生成模型-视图矩阵的完整方法通常如下所示:
1. Set up view matrix V (inverse of camera) from camera orientation vectors
2. Set up model translation matrix T from model position vector
3. Set up model rotation matrix R from model orientation vectors
4. Set up model scaling matrix S
5. MV = V // initialize model-view matrix MV with the view matrix V
6. MV = V*T // apply the model translation matrix T
7. MV = V*T*R // apply the model rotation matrix R
8. MV = V*T*R*S // apply the model scaling matrix S
【讨论】: