// 导语
光照烘焙是游戏开发中的关键技术,直接影响场景的真实感和表现力,尤其在大规模或复杂场景中,光照效果的质量对视觉体验至关重要。作为技术美术,我们不仅要实现高质量的光照效果,还要确保高效的烘培速度和多平台兼容性,以满足现代游戏开发的多样化需求。MagicDawn 烘焙系统在实际项目体验和效果评测中,凭借其 GPU 加速和分布式架构,展现了出色的效率和光影表现。本文将从技术美术的视角,通过对静态和动态烘培两种模式的效果展示、性能对比和技术细节,深入探讨 MagicDawn 各套方案的优势。
MagicDawn 团队隶属于腾讯互娱效能产品部引擎技术中心,自 2019 年立项以来,经过五年的技术积累与打磨,已经发展成为一支具备前沿技术和丰富项目经验的创新团队。目前,团队正与内部多款大型知名游戏项目合作。
通过不断技术突破与优化,MagicDawn 团队成功推出了其自主研发的光照烘焙系统——
MagicDawn
。基于 NVIDIA GPU 的分布式架构,MagicDawn 结合先进的任务调度、优化的任务拆分、创新的动态光照算法和全面的辅助工具链,在提升光照质量的同时显著提高了烘焙流程与效率,减少了显存开销,并优化了包体大小。MagicDawn 的推出,不仅为游戏项目带来显著性能提升,还为开发团队提供了更加高效、可扩展的光照解决方案,助力各大项目实现更加精细和真实的光影效果。
静态烘培
PRT2.0 动态烘培
MagicDawn 在原有光照烘焙系统基础上进行了重大优化和技术创新,聚焦解决光照烘焙中的常见痛点,使得该系统更适应现代复杂场景的烘培需求。MagicDawn 的核心技术特性包括:
1. 高速烘焙:
MagicDawn 通过
Dawn Hive 分布式任务管理
和
Lightmap 任务拆分优化
,实现了任务的智能调度和多节点并行处理,大幅提升复杂场景的烘焙效率,尤其适用于大规模场景。
2. 极致数据压缩:
MagicDawn 在纯 CLV Probe 方案中引入
自研 AI 压缩算法
,达到了
1:30
的高效压缩率。该方案在确保光照质量的前提下显著降低存储和传输成本,使得稀疏 Probe 数据能够在资源受限的环境中表现优异,尤其适用于移动端和开放世界的大规模动态场景。
3. 动态 TOD 支持:
采用
PRT 2.0 动态全局光照方案
,无需额外的光图数据(Lightmap),纯Probe即可支持高质量的时间动态变化。也可灵活结合 Probe 和 Lightmap,既优化包体大小,又保持光照效果。
4. 轻量化解决方案:
通过
CLV 插值着色算法
,大幅降低 GPU 开销并减少包体大小,支持高质量光照与资源优化,特别适合大型开放世界或移动端应用。
5. 完善工具链:
提供
资产扫描工具
、
美术批量烘焙工具
和
Benchmark美术效果校准系统
。支持快速检测 UV 和光源设置错误,并一键批量处理多关卡烘焙。系统还在流水线编译时实现自动批量烘焙与基于 Camera 的效果图输出功能,保留历史版本效果,自动生成汇报分析图,大幅提升工作效率和效果对比精准度,同时显著减少美术操作和调试所需的时间成本。
6. 支持大场景烘培:
引入
大世界自适应划分与智能调度
,均衡多节点负载,降低显存占用,轻松应对复杂大规模场景的烘焙需求。
7. 支持特殊材质:
MagicDawn 提供对
顶点色、Tiling 和 Mask 等特殊材质
的支持,增强了光照烘焙的适配性。系统捕捉顶点色信息融合光照效果,支持高频 Tiling 材质的无缝光照计算。通过 GPU 优化,确保复杂材质的高效处理,满足多样化场景需求,同时兼顾性能和视觉质量。
[ 图1 MagicDawn 对特殊材质的效果表现(材质属性反弹到墙面) ]
[ 图2 CPU Lightmass 对特殊材质的效果表现(墙面没有任何细节表现) ]
CLV(Cascade Lighting Volume)
是介于 ILC 和 VLM 之间的 Probe 插值方法,采用稀疏 Volume Lighting Sample 数据,实现高效的光照插值与烘培。CLV 通过以下步骤来优化光照插值与烘培效率:
• CPU 处理与增量插值:
首先在 CPU 端,CLV 将 Volume Lighting Sample 按照视口中心的规则划分为 Blocks,异步插值后上传到 GPU 的 CLV1 Buffer 中,以增量方式完成逐帧更新。
• GPU 硬件插值与 Volume Texture 整理:
GPU 将 CLV1 的数据整理成可以被硬件插值的 Volume Texture(CLV2)。在烘培时,CLV 直接从 CLV2 进行硬件插值采样,确保了光照的高效烘培。
• Scrolled Coordinates 索引更新:
CLV 使用 Scrolled Coordinates 索引更新,确保在视口滚动时,无需刷新未变动的区域,仅对更新部分重新采样。此设计有效避免了重复计算,极大地提高了性能。
MagicDawn 光照烘焙系统提供了多套灵活、强大的光照方案,适应不同的场景需求。其主要模式包括:
● 纯 Lightmap 方案:
适用于高精度静态场景的光照烘培,通过传统的 Lightmap 烘焙保存完整的光照信息,包括方向性和环境光。此模式能够呈现最细腻的光影细节,特别适合对光照质量要求较高的静态场景,但需要较多存储和显存。
● CLV 混合着色方案(Cascade Lighting Volume):
将 Lightmap 中的方向性光照部分移至 Probe 存储,同时保留低频的环境光信息。此方案减少了 Lightmap 占用,并利用 Probe 插值提供动态的光影方向性,适用于中大型场景,能有效平衡性能与光影质量。
● CLV 纯 Probe 方案:
仅使用稀疏 Probe 存储光照信息,舍弃 Lightmap,大大降低了包体大小,并提供动态物体着色。同时对比VLM、ILC,效果更佳优异,且避免了漏光与溢色。
MagicDawn 的动态 PRT2.0 提供了高效灵活的动态全局光照解决方案,特别适合需要实时光照变化的场景。通过 Probe 的动态更新和稀疏光照结构的结合,该方案在保证光照质量的同时,保持了低存储和高性能。其主要模式包括:
• Lightmap + Probe 混合着色方案:
▫ LightMap:存储静态物体的光照信息,特别是天光的可见性信息及间接光信息,确保静态物体在光照变化时的高质量表现。
▫ Tet Probes:布点于重点建筑物表面附近,提供详细的颜色信息,并动态响应光源变化,为动态物件提供天光和间接光照。
▫ Grid Probes:贴合野外地形生成均匀分布的三层网格状 Probes,为无 Tet Probes 覆盖的区域提供天光和间接光照,确保全局光照的连续性。
• CLV 纯 Probe 方案:
仅使用稀疏 Probe 存储光照信息,舍弃 Lightmap。在提供动态光照和动态物体着色的效果下,大大降低了包体大小。
本人非专业人士,在此不过多赘述技术原理。以上概述为个人理解并不全面,仅为后续的效果展示和性能测试提供理论支撑。接下来,我们将通过在 UE4.27 中的实际应用测试,进一步分析 MagicDawn 的效果和效率。
控制变量:
• 统一所有场景的烘培参数、灯光参数、资产分辨率等。
• 质量对齐(暂定):
▫ Lightmass-Production = MagicDawn - Spp 2048
▫ Lightmass-High = MagicDawn - Spp 1536
▫ Lightmass-Meidum = MagicDawn - Spp 768
• 烘培设备:
▫ CPU:AMD Ryzen Threadripper PRO 3945WX 12-Cores , 基准速度: 4.00GHz,内核:12,逻辑处理器:24。
▫ GPU:RTX 3080, 10 GB。
▫ GPU:DawnDeamon 远端烘培平台(使用8-40节点)。
1. 纯Lightmap方案:与 Lightmass 对比
MagicDawn 的纯 Lightmap 模式使用路径追踪算法和优化的光源管理系统,能够在静态场景中呈现细腻的全局光照效果。与传统的 Lightmass 相比,MagicDawn 在效果与速度方面均表现突出。以下是详细对比分析:
• 光照一致性:
▫ 室内环境问题:
MagicDawn 与 Lightmass 在暗部光强上基本一致,但在室内环境下,Lightmass 更容易受到天光颜色的干扰,表现出不均匀的光照分布;相比之下,MagicDawn 的天光计算更加均匀、物理,减少了漏光现象,使场景光照更加自然。
▫ 亮度差异和光源偏色问题:
MagicDawn 能准确呈现从窗外阳光到室内天光的逐渐过渡,表现出暖(阳光)到冷(天光)、强(高反射)到弱(低反射)的合理变化;而 Lightmass 场景中,阳光间接光计算不足,导致室内光强和颜色较为单一。MagicDawn 的光线反弹和颜色计算更符合物理规律,光影效果更加真实。
▫ 支持Mesh Light功能:
MagicDawn 支持自发光材质的全局光照贡献,例如场景中垃圾桶底部的自发光材质能够真实反映其对周围光影的影响。这一功能有效提升了场景的光照表现力和真实感,而 Lightmass 则不支持该功能。
[ 图3 Havana场景-纯Lightmap效果对比 ]
[ 图4 Old Class场景-纯Lightmap效果对比 ]
• 降噪与细节优化:
Lightmass 中常见的部分噪点、漏光和黑斑现象,多因 2UV 分布不均或光图分辨率低造成。MagicDawn 自研的降噪器和超采样功能有效改善了此类问题,使光影在低质量的情况下,再次得到优化,更加清晰、细腻。
[ 图5 MagicDawn 针对Lightmass常见的烘培瑕疵进行修复 ]
CLV 混合着色方案(即Lightmap 3通道)是 MagicDawn 的创新体积光照插值技术,使用稀疏体积光照样本和硬件插值,通过将光照信息分层填充到体积纹理,实现了高效的动态光影计算。在对比实验中,将纯Lightmap(CLV-LM 6X)与混合着色(CLV-LM 3X)进行对比。以下为具体介绍:
• 6通道方案:
6通道方案在高分辨率、细节丰富的动态场景中表现优异。通过增量插值与硬件加速结合,使光影过渡细腻。适用于对光影变化和精细度要求较高的场景。
• 3通道方案:
3通道方案相对更加轻量化,显存开销较小。虽然在光影细节上稍逊一筹,但仍保持了不错的流畅度,适合性能有限的场景,如 VR、移动端等资源受限的环境。
[ 图6 Havana场景-混合着色方案效果对比 ]
优势:
• 动态光照的精细控制:
CLV 混合着色在高动态性场景中表现出色,不仅避免了漏光、溢色等问题,还提升了光影的过渡效果。
• 显存与包体优化:
相比传统的 VLM(Volume Lighting Method),CLV 的 6通道和3通道方案能有效平衡细节表现和内存开销。
[ 表2 混合着色的效果与包体分析 (ES3.1-移动端) ]
在对比实验中,所有建筑均采用Probe烘焙,分别测试CLV和VLM两种方案在SM5(PC端)下的效果,全面评估其性能与视觉表现,以下为效果展示:
[ 图7 Havana场景-纯Probe着色方案的效果对比 ]
优势:
• 显存开销:
CLV方案通过稀疏体积光照探针(Probe)技术,显著降低显存占用,同时在大范围动态场景中提供一致的光影效果。相比于ILC和VLM,CLV在高效性与可扩展性上表现尤为突出。
• 烘培效果与质量:
CLV方案在视觉质量与光影细节上远胜VLM Probe,尤其在动态光照与遮挡处理方面具有显著优势。
[ 表3 纯Probe着色方案效果分析 (SM5-PC端) ]
4. 在ES3.1-GamePlay模式下着色效果分析
控制所有建筑都进行Lightmap烘培,并在ES3.1移动端-Gameplay运行模式下,对动态角色进行室内外光照对比。
[ 图8 Havana场景- CLV与ILC、VLM在GamePlay下的着色质量对比 ]
优势:
• 漏光、溢色与跳变处理:
ILC 和 VLM 在动态物体靠近墙壁或穿梭室内外时,易出现漏光和光影跳变问题,而 CLV 方案通过稀疏体积采样优化,消除了漏光、溢色问题。
• 动态方向光处理:
在动态物体移动时,ILC 和 VLM 存在方向光漏光问题,而 CLV 方案通过遮蔽优化和光影渐变,实现了方向光的自然过渡。
[ 表4 在ES3.1-GamePlay模式下纯Probe着色效果对比 ]
效果展示:
MagicDawn - TOD动态烘焙的光照表现
在时间和日期(Time of Day, TOD)动态光照场景中,MagicDawn 的 PRT 2.0 方案通过动态 Probe 更新和实时光照传输,展现出优异的动态全局光照表现。以下为其重点细节:
• 实时间接光照:
动态物体在移动过程中能准确接收环境光和间接光照。例如,角色穿梭于室内外时,光影过渡自然,无漏光或光影跳变问题。
• 方向光支持:
在动态物体上,方向光的间接光照(如反射光线)能随光源位置实时变化,提供逼真的动态阴影和反射表现。
• 动态物体的光照一致性:
结合 CLV Probe 插值算法,动态物体的光影效果与周围环境保持一致,即使在复杂几何场景中(如建筑物之间的阴影区域),也能实现流畅的光影融合。
• 动态光照与全局光照的更新:
MagicDawn 支持 TOD 场景下的实时日光和天光变化。例如,日出到日落的光照强度、颜色变化都会反映在场景的全局光影中,呈现高度真实的昼夜循环。
• 高效的动态间接光更新:
环境光的漫反射和间接光能实时更新,即使在移动端等资源受限的设备上也能高效运行。
• 细腻的光影过渡:
动态光源下的间接光照过渡柔和,特别是在大场景中(如开放世界游戏)能提供一致且细腻的光影效果,避免传统 Probe 方案中漏光和方向光跳变的问题。
[ 图11 动态角色穿梭在TOD的光照和阴影中 ]
• Lightmass 依赖于本地设备的CPU,速度非常慢。在Havana场景中,Production 时间达到了
83:32min
。
• MagicDawn本地可使用GPU烘培加速,另可借用远端烘培,自行选择节点数量,节点越多,速度越快。在Havana场景中,40个节点提速率最高可达到
40倍
以上。
以下为不同节点数下的性能测试结果(存在误差):
在大规模场景的处理方面,MagicDawn 的自动划分和并行导入功能有效减少了显存和内存占用。通过对划分算法的优化,MagicDawn 在不影响烘培质量的前提下降低了资源消耗。这一特性对于开放世界项目尤其适用,确保在超大地图场景中烘培的流畅性。
MagicDawn 的用户界面设计较为直观,也沿用了UE原生的各个窗口设置,用户也可快速查找参数并修改;同时也支持lightmass各个参数,使美术可以在Lightmass参数的基础上调整MagicDawn参数进行优化,为使用Lightmass的项目后面更换MagicDawn提供了便利;任务监控功能也比较实用,可以实时查看烘培进度,最后使用调度图进行时间对比。以下是简单展示:
• 操作的流畅性:
Dawn Hive 的参数设置简单明了,支持实时预览,极大地提升了操作流畅性。
• 任务监控功能:
Dawn Hive 支持实时的任务监控和优先级设置,帮助用户跟踪烘焙进度和优化烘培流程。
[ 图12 任务监控功能-正在显示使用用户和节点数 ]
[ 图13 任务监控功能-显示各个节点的使用情况 ]
• 任务烘培与调度图:
Dawn Hive 提供实时预览各个节点在烘培时的调度和时间情况,并在烘培结束后,提供时间调度图。
MagicDawn 的烘焙操作流程分为三大模块:
服务器设置
、
烘焙质量设置
、
世界设置
。这些模块提供了直观的界面和与 Lightmass 的高度兼容,帮助用户快速上手,并降低了工具的学习成本。
2.1. General Settings (服务器设置)
用户可在服务器设置界面对云烘焙的参数进行控制,如参与烘焙的节点数量、任务优先级等,配置简便,操作友好。该设置模块帮助用户快速配置分布式烘焙的节点资源,并实时调整任务优先级,以适应项目的不同需求,显著提升了多节点烘焙的管理效率。
2.2. Baking Quality Setting (烘培质量设置)
MagicDawn 提供了类似 Lightmass 的质量级别切换功能,用户可以在不同的烘焙质量之间随时切换,也可根据项目需求在参数配置界面,自定义各级别的参数值。从而在不同性能需求和质量要求之间自由调整,满足特定项目的烘培效果需求。
2.3. World Setting (世界设置)
MagicDawn 沿用了 Lightmass 中的大部分参数支持,便于使用 Lightmass 的项目组无缝过渡至 MagicDawn。此模块在界面和参数设计上与 Lightmass 保持了一致性,使得用户能迅速适应新的工具环境,并在保证光照烘焙效果的同时,完成高效的引擎适配。
[ 图19 MagicDawn所支持的Lightmass Setting的参数 ]
为帮助用户提升烘焙效率,MagicDawn 提供了逐步完善的辅助工具链。当前版本较为实用的工具,推荐以下两款:
• 资产检测工具:
通过检测工具,用户可以自动排查模型 UV 错误和灯源异常,一键精确定位问题模型的位置,从而加快问题排查流程,大幅降低因模型或光源设置不当带来的烘焙失败风险。具体演示如下:
• 一键批量烘培工具(初版):
MagicDawn 提供了一键批量烘焙工具,目前为初版测试阶段。该工具极大地简化了多场景项目的烘焙流程。美术只需提前完成各个场景的烘焙设置以及 MagicDawn 的全局参数配置,即可一键启动批量烘焙,系统会自动调度大量节点并行处理,从而在短时间内完成大批量场景的烘焙任务。此工具在保证烘焙质量的前提下,显著减少了人工干预和等待时间,使项目组能够更高效地管理多场景任务,尤其适用于大型项目和复杂的生产环境。
• MagicDawn Benchmark:
MagicDawn Benchmark是一套用于持续保证MagicDawn迭代过程中版本质量的工具,也是MagicDawn用于展示自身各种特性效果的一个平台,如下图,我们每次构建新的版本同时,会在配置好的场景进行烘培测试,并且在各个关键视角截图烘培结果,该结果会与各种GroundTruth效果进行指标性对比,给出基本的效果评测,评测效果不及格则会给出版本示警;此外,我们的测试结果也会存储在服务器中,可以通过网页访问,并随时在网页上进行版本效果比对,当然,一些优秀的效果也会展示在Benchmark网站,以便于用户随时查阅。
与MagicDawn研发团队的接触合作中,能够感受到,他们具备出色的技术能力和敏捷响应的客户服务。团队在处理咨询、反馈和修复Bug 方面有着成熟的流程和经验,能够迅速识别并解决问题,保障系统的稳定性和高效性。
1. 高效响应客户需求
团队能够深入理解美术的多样化需求,并在工作中灵活调整优先级,确保新功能和优化点能够满足项目组美术的紧急需求。
2. 快速修复 Bug,保障系统稳定
团队建立了完善的 Bug 管理流程和快速响应机制。
一旦检测到问题或收到客户的 Bug 反馈,团队会第一时间进行分析,并通过迭代静默更新迅速修复问题,不影响项目组的引擎和进度。
3. 定期更新和持续优化
团
队通过定期更新不断提升 MagicDawn 的性能和用户体验。
在功能开发之外,团队积极收集用户反馈,定期发布系统更新和性能优化,确保产品始终处于行业的技术前沿,持续满足客户的高标准需求。
4. MagicDawn团队的沟通记录:
“影响用户群体使用的需求,都安排第一优先级,功能做再好,失败率太高给人的第一印象就不行“、“产品的使用要降低用户门槛“。
与UE原生烘培工具Lightmass对比中,MagicDawn 的烘培方案在光影细节和资源优化上展现了卓越的性能,最重要的是烘培提速率最高可达40倍以上。依托分布式 GPU 加速、降噪和接缝修复技术,MagicDawn 的烘培方案为美术团队提供了可靠且高效的烘焙工具,能够有效支持大规模场景和复杂项目的烘培需求。以下是 MagicDawn 的主要优势概述:
• 高效的烘焙速度:
得益于分布式 GPU 加速和创新的任务拆分与调度优化,MagicDawn 显著缩短了烘焙时间,非常适合需要频繁迭代的开发项目,特别是在多节点云端环境中表现尤为出色,特别适用于超大规模的开放世界场景。
• 优异的光影质量:
MagicDawn 提供了精确的光影细节表现,配合降噪与接缝优化,有效解决了传统光照烘焙中常见的漏光和接缝黑块问题,确保光影过渡流畅,为视觉表现力提供了保障。
• 灵活的本地与云端选择:
MagicDawn 支持本地和云端烘焙,项目团队可根据需求灵活选择烘焙环境。云端烘焙特别适用于大型项目,可大幅缩短烘培周期,提升开发效率,试错成本大大降低。
• 高效相应的团队支持服务:
MagicDawn 团队具备丰富的多项目烘焙经验,能够为客户提供及时、专业的支持服务。在 Lightmass 的支持上,通常需要项目组的程序团队分担部分问题处理,但 MagicDawn 团队能够快速响应客户需求,提供高效稳定的解决方案,保障项目进展顺利。
尽管 MagicDawn 在多节点光照烘焙中表现出色,但在用户体验和功能细节上仍有进一步优化的空间:
• 光源参数的灵活调节:
开放更多的自定义烘培参数的调节,特别是在多光源复杂场景中,提供更精细的光照控制选项,例如可分别控制直接光、天光和Local光源的反射数量等,以满足美术团队对光影细节的精细调整需求。
• 用户界面优化与操作友好性:
在 Dawn Hive 界面中增加操作引导和简便的任务管理功能,以便美术人员更快速上手。特别是在光照预览、光源配置、任务监控和烘培结束后数据和问题总结等方面,增强 UI 的直观性,使工作流更高效、体验更顺畅。
通过对 MagicDawn 烘培系统的应用测试,从技术美术的角度可以得出初步结论:MagicDawn 在光照烘焙的速度、质量和资源利用率方面展现了卓越的表现,是处理大规模、复杂场景的理想光照解决方案。得益于 GPU 加速、分布式架构以及灵活的参数控制,MagicDawn 有效地支持了美术团队的创意实现,提供了流畅的工作体验和稳定的烘培效果。
Unity引擎支持服务
MagicDawn 为游戏场景的光照烘焙流程提供了独特的解决方案,换而言之,MagicDawn 的自研技术并不依赖于某一特定游戏引擎框架。
目前,MagicDawn 团队已在 Unity 中对静态烘焙进行了适配。在一众光照贴图解决方案里,相比 Unity 引擎自带的 Enlighten / Progressive CPU(GPU) 、常见烘焙插件 Bakery 等烘焙器,MagicDawn 极大程度上提升了烘焙效率,并兼顾了优异的烘焙质量。
- 免费试用:
无门槛体验MagicDawn工具的全部功能。可免费试用30天。
- 创意交流:
与优秀的开发者一起探讨光照烘焙,实时GI的技术趋势,以及交流产品使用体验。
产品体验报名链接:
https://wj.qq.com/s2/16588048/4b1e/
产品&测试场景地址(需先报名使用登记邮箱开通权限):
https://git.tencent.com/Dawn20/DawnUE
合作联系人:
李超([email protected])