unity学习笔记(性能优化)

渲染管线

> 图形数据在GPU上经过运算处理,最后输出到屏幕的过程。

绘制调用Draw Call:
每次引擎准备数据并通知GPU的过程。通俗讲,每帧调用显卡渲染物体的次数。
unity学习笔记(性能优化)

> 顶点处理

  • 接收模型顶点数据。
  • 坐标系转换。

> 图元装配

  • 组装面:连接相邻的顶点,绘制为三角面

> 光栅化

  • 计算三角面上的像素,并为后面着色阶段提供合理的插值参数。

> 像素处理

  • 对每个像素区域进行着色。
  • 写入到缓存中。

> 缓存

  • 一个存储像素数据的内存块,最重要的缓存是帧缓存与深度缓存。
  • 帧缓存:存储每个像素的色彩,即渲染后的图像。帧缓存常常在显存中,显卡不断读取并输入到屏幕中。
  • 深度缓存 z-buffer:存储像素的深度信息,即物体到摄像机的距离。光栅化时便计算各像素的深度值,如果新的深度值比现有值更近,则像素颜色被写到帧缓存,并替换深度缓存。

Occlusion Culling(遮挡剔除)

即时遮挡剔除

  • 即使遮挡剔除 Instant Occlusion Culling
  • 遮挡剔除:当物体被送进渲染流水线之前,将摄像机视角内看不到的物体进行剔除,从而减少了每帧渲染数据量,提高渲染性能。

LOD(多细节层次)

多细节层次

  • 多细节层次 Levels of Detail
    LOD技术指根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。

unity学习笔记(性能优化)