UPL9-3——LOD
UPL9-3——LOD
LOD
LOD(Level of Detail,细节层次)
LOD 的核心目的:减少远处物体的几何复杂度(顶点,三角形数量),降低 GPU 顶点处理压力,让场景在视觉上几乎无损的前提下提升性能
具体好处包括:
-
提升性能
远处的物体在屏幕上只占很少像素,用高模浪费算力,LOD 可以替换成低模,让 GPU 处理更轻松
-
节省显存和带宽
高模 → 低模 → Billboard 加载和显存压力逐步减轻
-
兼顾画质与性能
近处依旧报错高质量,远处用简化版本,玩家几乎察觉不到
说人话:LOD 的主要作用就是动态平衡画质和性能
LOD 的使用
Unity 提供了 LOD Group 组件来管理 LOD
使用步骤:
-
准备好模型
让美术输出同一个物体的多个精度版本模型(如 LOD0、LOD1、LOD2)
或者使用 Mesh Simplification(网格简化算法)工具自动生成低精度模型 -
创建一个空物体,添加 LOD Group 组件,将多个精度版本模型作为其子对象
对 LOD Group 组件进行设置关联
假设我们准备了胶囊体高模,球体中模,立方体低模,你需要将这些模型的渲染器分别关联到 LOD Group 的不同等级 (LOD X) 的 Renderers 上

然后就可以看到效果了(从近到远,依次从高模变成低模,最终被剔除):



LOD Group 参数

-
Fade Mode:控制 LOD 切换时是否做过渡

-
None(无过渡): 直接切换,没有过渡效果
性能最好,因为不需要额外渲染,
缺点是可能出现“跳变”感,尤其是当物体在切换点来回抖动时 -
Cross Fade(渐变过渡): Unity 会在切换区间内同时渲染
两个 LOD 的模型,旧 LOD 逐渐透明,新 LOD 逐渐显现
最终实现一个“淡入淡出”的效果,过渡平滑,几乎察觉不到 LOD 切换
由于在过渡阶段要同时渲染两个模型,会给 GPU 带来负担调整过渡区间需要在各个 LOD 等级的 Fade Transition Width 处调节
-
Speed Tree(植被系统): 专门为 Unity 的 SpeedTree 植被系统设计的渐变模式
逐步混合顶点、枝叶信息,在切换过程中,树木的枝叶会更自然地过渡,
不会出现“透明闪烁” 针对树木、植被表现更好
只能用于 SpeedTree 资源,无法用于普通 Mesh
-
-
Animate Cross-fading:会让淡入淡出的过程随着时间平滑播放动画,而不是仅仅基于相机位置的阈值(仅在 Fade Mode 不为 None 时出现)
勾选后会更快速更直接切换模型,不会出现摄像机停在某个阈值点让两个模型都显示的情况
-
拖动条:预览不同物体占屏幕比值的LOD等级,拖动可预览不同距离显示效果

上面的百分比(100%、60%、30%、10%)表示屏幕占比阈值
(一般是基于物体的包围盒在屏幕上投影的高度,去和 屏幕总高度 做比值)
比如:当物体在屏幕上大小 < 30% 时,从 LOD1 切换到 LOD2
拖动摄像机图标可以看到切换效果
-
警告:Active LOD bias is 2.0. Distances are adjusted accordingly
表示当前项目里启用了 Quality Settings → LOD Bias(LOD 偏移)
值越大,切换到低 LOD 的时机越远(即更久保留高模)
-
Recalculate Bounds:重新计算 LOD 的包围盒(建议模型设置完毕变时点击)
LOD 切换基于物体在屏幕上的包围盒大小,模型改变或者缩放后需要点这个
-
Recalculate Lightmap Scale:重新计算光照贴图缩放参数
-
Object Size:物体在计算 LOD 时的参考大小(默认自动算出)
-
Reset Object Size:重置物体在计算 LOD 时的参考大小为1,同时修改 Transition
-
LOD X:各个阶段的 LOD 使用的网格渲染器信息
-
Transition:表示当物体在屏幕上占比 > 多少百分比 时使用它
-
Set to Camera:根据当前相机位置,计算出的 LOD 的切换距离,快捷设置
-
Fade Transition Width:渐变切换的过渡区间宽度(仅在 Fade Mode 不为 None 且不勾选 Animate Cross-fading 时出现)
- 值越大 → 过渡区间越宽,淡入淡出的时间/距离越长,看起来更平滑
- 值越小 → 过渡区间越窄,几乎是瞬间切换
-
Renderers:指定这一层级使用的 MeshRenderer
后面的三角形数量信息: 表示当前网格有多少个三角形
-
