- viewport:是相对于surface设置的;
- clipping space:vertex经过vertex shader在clipspace中是齐次坐标:(x,y,z,w); x/w,y/w在[-1,1]之间
- homogeneous clipping space: clip之后在乘以从viewport中得出的mvs矩阵,
- screen space: 然后x,y,z除以w送入pixel shader;
- pixel shader中可以输出color和depth值;
转换矩阵中比较重要的是:
1,model view,这两个矩阵一般放在一起就可以,经过model view transform 之后进入camera space,在这里可以做大量的工作,alpha排序是个典型的例子,这个transorm由scale,rotate,translate组成;
2,perpective transformation: 由x,y的project,也就是缩放,和z的平移缩放组成
3,viewport scale matrix Mvs:做缩放和平移工作,最后结果就是可以映射到render target上的fragment了,接下来就是pipeline中pixel shader之后的事情了;