2.2 光照方案:Lumen、烘焙与混合的取舍

核心结论

移动端默认且最稳的光照方案是烘焙光照。Lumen 在移动端可用,但是"高配可选件"——它对算力要求高,且只推荐给高端设备。中小项目不要被 Lumen 的演示视频绑架,烘焙+少量动态光的混合方案是性价比之王。

三种方案对比

方案 烘焙(Baked) 混合(Mixed) 全动态(Lumen/动态光)
烘焙时间 长(看场景规模) 中 几乎 0
运行时开销 极低 中 高,Lumen 尤其
动态性 静态几何+静态光 可动光、可 destruction 全动态
适用 关卡固定的游戏 大部分手游 高端机、开放世界
推荐度(中端机) ★★★★★ ★★★★ ★★

Lumen 在移动端:先读官方的性能指南再决定

官方文档 https://www.wanxiangyundang.top/read/unreal-engine-5-8-docs/lumen-performance-guide-for-un-5aff 是判断"你的项目能不能上 Lumen"的第一手依据。要点是:Lumen 的性能开销在移动端显著高于桌面,它的 Surface Cache 依赖大量半分辨率更新,填充率敏感的设备上会直接拖垮帧率。

官方文档说什么就听什么——Lumen 性能指南明确列出了对 CPU/GPU 的要求。我的建议:先在目标设备上跑 Lumen 的空白场景对比,拿到数字再决定,不要凭 PC 数据猜。

我的混合方案(推荐)

以一个中型关卡为例,这是我反复验证过的配置:

  1. 静态间接光:Lightmass 烘焙。中等质量即可,跑 GI 的方向贴图分辨率别超 256。
  2. 天光(Sky Light):烘焙+实时混合。天光实时更新开销低,能接住"昼夜变化"。
  3. 方向光(Directional Light):保留动态(要产生动态阴影),但关闭全场景阴影级联,只对玩家附近开级联,远处用距离场阴影或者干脆刷掉。
  4. 小动态光(如手电、枪口焰):开,但限制半径与数量(场景里同时 <= 4 盏)。
  5. 静态小灯(路灯、壁灯):全部烘焙,只在需要"开关灯"时用混合模式。

这套配置在中端机(骁龙 7 系)上,光照总开销控制在 3ms 以内。

常见坑与解法

坑 1:烘焙后场景还是黑

原因:Lightmass 构建质量设置太高导致采样不足;或者光照贴图分辨率被压得太低。

解法:检查 World Settings -> Lightmass 的构建质量与 Lightmap Resolution;角色级的物体(如箱子)用 Lightmap Resolution 64~128,大地形用 256。

坑 2:Lumen 开了但手机上没动态 GI 效果

原因:移动端 Lumen 依赖硬件能力,部分设备上被自动降级或禁用。

解法:查 Project Settings 里的 Mobile Lumen 是否启用,以及目标功能级别是否符合(参考第一章 0103)。在真的目标机器上看, simulator 不算数。

坑 3:混合光照下"双重阴影"

原因:静态阴影(烘焙)与动态阴影(级联)叠加,出现两层影子。

解法:对烘焙阴影的静止光源,设置 Cast Raytraced Shadow = false;对动态光设置 Dynamic Shadow =true, static shadow = false,让两种阴影各管一段。

相关节点速查

  • Lightmass:Build -> Lighting Quality(建议 Medium 起步)
  • 光照贴图:Lightmap Resolution(关卡物件 64~256,地表 256~512)
  • 动态阴影距离:Dynamic Shadow Distance(方向光,按玩家半径调)

心得:我见过团队为了"光照效果不输端游"硬上 Lumen,结果跑不动只能整体降级,画面反而不如同档位的烘焙方案。移动端光照的第一原则是"算得起的动态性"——你能让百分之多少的光动起来,比整体看起来多炫重要。