当场景中的某个游戏对象距离摄像机很远时,该游戏对象的细节的可见程度将大大降低。但是,即使对象的细节不会让人注意到,系统也会使用相同数量的三角形来渲染对象。使用一种称为_细节级别_ (LOD) 的优化技术进行渲染,则可以随着某个对象与摄像机的距离增加而减少渲染对象的三角形数量。只要全部的对象不是同时靠近摄像机,LOD 便能降低硬件的负载并提高渲染性能。
在 Unity 中,可使用 LOD Group 组件为对象设置 LOD 渲染。组件参考页面提供了完整详解,但下图显示了用于渲染对象的 LOD 级别如何随着对象与摄像机的距离的变化而变化。第一张图显示的是 LOD 级别 0(细节化程度最高)。请注意网格中大量的小三角形:
第二张图显示了对象距离变远时使用的较低级别的细节模型。请注意,网格的细节程度已降低(三角形更大,数量更少):
由于 LOD 级别的设置在某种程度上取决于目标平台和可用的渲染性能,因此 Unity 允许您在质量设置 (Quality Settings) 中设置最高 LOD 级别和 LOD 偏差偏好(即,处于阈值距离时提高还是降低 LOD 级别)。
如果创建一组名称以 _LOD0、_LOD1、_LOD2 等结尾的网格,结尾数字对应于所需的 LOD 级别,在将这些模型导入时,系统将自动创建并将其设置为对象的 LOD 组。例如,如果网格的基本名称是 Player_,则可以创建名为 Player_LOD0、Player_LOD1 和 Player_LOD2 的文件,以生成具有三个 LOD 级别的对象。编号规则为 LOD 0 是细节程度最高的模型,而数字越大,对应的细节程度越低。