渲染管线
图形数据在Gpu上经过运算处理,最后输出到屏幕的过程
- DrawCall:一帧调用显卡渲染物体的次数
顶点处理
- 接受顶点模型顶点数据
- 坐标系转换
图元装配
组装面,连接相连的顶点,绘制三角面
光栅化
计算三角面上的像素,并为后面着色阶段提高合理的插值参数
像素处理
对每个像素区域进行着色
写入到(显卡)缓存中
缓存:
一个存储像素数据的内存块,最重要的缓存是帧缓存与深度缓存
帧缓存
存储每个像素的色彩即渲染后的图像。帧缓存常常在显存中,显卡不断读取并输出到屏幕中
深度缓存Z-buffer
存储像素的深度信息,即物体到摄像机的距离,光栅化时便计算各像素的深度值,如果新的深度值比现有值更近,则像素颜色被写道帧缓存,并替换深度缓存。近的被保存,远的被遮挡就不显示了
优化
Occlusion Culling即时遮挡剔除
遮挡剔除:当物体被送进渲染流水线之前,将摄像机视角内看不到的物体进行剔除,从而减少了每帧渲染数据量,提高渲染性能
使用插件Instantoc实现遮挡剔除
- 原理:随机发射射线碰到了说明不被遮挡
- 缺点:增加CPU性能
- 适用场景:场景中物体较为密集