工作顺序
CPU决定哪些需要渲染,GPU去做渲染工作
Draw Call:绘制调用,每次引擎准备数据并通知GPU,每帧调用显卡渲染物体的次数。
渲染到设备屏幕显示的每一帧的画面,都经历几个阶段的加工过程:
应用程序阶段(CPU):识别出潜在可视的网络实例,并把它们及其他材质提交给GPU以供渲染
几何阶段(GPU):进行顶i点变换等计算,并将三角形转换到齐次空间并进行裁剪。
光栅化阶段(GPU):把三角形转为片元,并对片元执行着色。片元经过多种测试(alpha测试,
模板测试,深度测试,等)之后,最终与帧缓冲混合。
mvp矩阵转换
CPU工作流程
1.准备好需要被渲染的对象。也就是哪些物体需要被渲染,哪些物体需要被剔除(culled),剔除的常用方式包括视锥体剔除和遮挡剔除,并对需要渲染的对象进行排序。
2.设置每个对象的渲染状态。渲染状态包括所使用的着色器、光源、材质等。
3、发送DrawCall。当给定- -个DrawCall时,GPU会根据渲染状态和输入的顶点数据进行计算。
缓存
一个存储像素数据的内存块,最重要的缓存是帧缓存与深度缓存
帧缓存:存储每个像素的色彩,即渲染后的图像。帧缓存常常再显存中,显卡不断读取并输出到屏幕中。
深度缓存z_buffer:存储像素的深度信息,即物体到摄像机的距离。光栅化时便计算各像素的深度值,如果新的深度值比现有值更近,则像素颜色被写到帧缓存,并替换深度缓存
Mesh 网格
MeshFilter 网格过滤器
MeshRenderer 网格渲染器