我在为WebGL场景制作矩阵数学时遇到了麻烦。我尝试过的任何东西似乎都没有正确显示。
在我的3D世界里,我有很多模特。每个模型都有一个XYZ矢量,用于在世界范围内定位,旋转和缩放。相机有一个位置和旋转矢量。
将这些矢量转换为每个模型传递给着色器的模型视图矩阵的最佳(并且明显有效)方法是什么?
提前致谢! :)
答案 0 :(得分:0)
生成模型视图矩阵的完整方法通常如下:
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