其他分享
首页 > 其他分享> > opengl中view/camera空间的理解

opengl中view/camera空间的理解

作者:互联网

观察矩阵把世界坐标系中的点转换为相机坐标系中的点。

构造观察矩阵:

1. 用世界坐标系表示相机的方向向量D,上向量U,右向量R。

注意:创建方向向量时用相机位置向量减去相机焦点向量,这样得到的向量指向相机坐标系的正Z方向(相机坐标系是右手坐标系)。

 

模拟相机向后移动:

P是相机位置向量,移动相机等同与场景向相反的方向移动。LookAt矩阵左乘点坐标后依然是世界坐标系中的点(第一个矩阵做了转置)。

如果想把A坐标系中的点转换到B坐标系,首先把A坐标系的标准坐标基用B坐标系表示构成转换矩阵Z,然后用Z左乘A坐标系中的点,如果

想把B坐标系中的点转换到A坐标系,先求出Z的逆矩阵(正交矩阵的逆矩阵等以其转置矩阵)然后左乘B坐标系中的点。

 

下图中的顶点shader在左乘view矩阵后依然是世界坐标系中的点,左乘投影矩阵后变换到标准设备坐标系(左手坐标系-1到1)

 

标签:opengl,左乘,矩阵,相机,转置,camera,坐标系,向量,view
来源: https://www.cnblogs.com/think-write/p/16502870.html