cameraViewMatrix
cameraViewMatrix
提供视图矩阵(View Matrix),用于将坐标从世界坐标系(World Space)变换到视图坐标系(View Space),即摄像机自身的坐标系。这是渲染管线中顶点变换的关键步骤。
核心优势
以清晰的语义(视图矩阵)替代了底层的数学概念(摄像机世界矩阵的逆),并能自动适应单摄像机和多摄像机(如VR)场景,极大简化了开发者的代码和逻辑。
常见用途
在MVP变换中,将顶点从世界空间变换到视图空间
将光照计算所需的所有向量(位置、法线等)统一到视图空间中
通过移除矩阵的位移部分来实现“无限远”的天空盒效果
作为构建广告牌(Billboarding)效果的旋转参考
在后期处理中,从视图空间坐标重建世界空间坐标
如何调整
此节点的值无法在着色器中直接调整,它完全由场景中的 THREE.Camera 对象控制。移动或旋转摄像机,此矩阵会自动更新。例如,将摄像机向右移动,等效于此矩阵将整个世界向左变换,使物体在屏幕上向左移动。
代码示例
1
2// 将世界空间坐标变换到视图空间
3const positionView = cameraViewMatrix.mul(positionWorld);
4