OpenGL学习总结

第一,关于顶点

1.本地空间转换为世界空间(obj)(model 矩阵)

2.世界空间转换为视觉空间(eye)(view矩阵)

3.视觉空间转换为裁剪空间(clip)(project矩阵)

4.投影空间转换为设备归一化空间(ndc)(除以w)

5.设备归一化坐标转换为视口空间(glViewPort矩阵)

第二,关于法线。

1. 经过model*view的逆矩阵,求转置得到NormalMatrix。法线经过NormalMatrix变换后,转换到视觉空间。

2.法线经过归一化,转换为归一化坐标。也就是标准化。与设备归一化坐标(ndc)不同。

然后vertex shader的任务完成,进入到了fragment shader。

fragment shader对法线进行插值运算后,得到每一个点的法线。然后对每一个法线进行光照运算,得到最终颜色。

相关推荐