渲染管线:
应用阶段 —— 几何阶段 —— 光栅化阶段
应用阶段,主要就是加载显存,设置渲染状态(场景,相机,模型,灯光,材质,纹理),调用Draw Call,也就是CPU向GPU发送渲染命令,来渲染指定图元。
几何阶段,拿到图元/三角网格顶点所包含的一系列信息(顶点位置,法线,切线,颜色等),在vertex shader中进行处理。主要是两个处理,顶点变换和逐顶点光照计算。
然后GPU会帮我们进行裁剪和屏幕映射的操作,裁剪是在裁剪空间做的,用w分量去比较。屏幕映射之前要先进行齐次除法得到NDC空间下的坐标,然后再进行屏幕映射。
光栅化阶段,输入就是顶点位置,坐标,颜色等信息(经过插值),经过三角形设置,三角形遍历,FS,最终是要输出颜色到颜色缓冲区,显示到屏幕上。
-
抗锯齿?产生的原因?跟光栅化阶段的三角形设置三角形遍历有关系,本质是采样不足导致的。
TSAA,MSAA,增加了子采样点。 -
纹理过滤模式?Texture filter?mipmap?各向同性各向异性?(是与纹理采样相关连的)
MipMap 为了加快渲染速度和减少图像锯齿,贴图被处理成由一系列被预先计算和优化过的图片组成的文件。举个例子,原图是256 x 256,预先处理成了有128 x 128 ,64 x 64 ,32 x 32等一系列图。