大家好,最近 Epic Games 正式发布了虚幻引擎 5.9,这应该是很多做游戏开发、数字孪生、影视预演和虚拟制片的朋友近期最关注的消息。本文不准备只做新闻复述,而是基于虚幻引擎 5.x 系列的技术演进路径,围绕“5.9 发布后应该如何理解、如何评估、如何安全升级”这条主线,整理一份工程向的实操笔记。
内容会比较长,建议先收藏再阅读。整个章节安排如下:从 5.9 的版本定位与技术概念入手,然后是环境准备与版本管理,接着拆解 5.x 系列的关键技术,再给出一个完整的项目升级实战流程,最后是高频问题排查和工程最佳实践。
1. 虚幻引擎 5.9 发布背景与核心概念
1.1 虚幻引擎 5.9 是什么
虚幻引擎(Unreal Engine)是 Epic Games 开发并维护的实时 3D 创作工具,覆盖游戏、影视、建筑可视化、汽车仿真、虚拟制片等多个行业。5.9 是虚幻引擎 5.x 系列的最新迭代版本,延续了 5.x 时代“高保真实时渲染 + 大规模开放世界 + 跨行业工作流”的整体目标。
从 5.0 开始,虚幻引擎引入了两大标志性技术:Nanite 虚拟化微多边形几何系统和 Lumen 全动态全局光照。后续的 5.1、5.2、5.3、5.4 分别在前者基础上继续强化了程序化生成、影视级工具链、PCG 生态、渲染稳定性和生产力工具。5.9 作为新一轮版本,同样会围绕帧稳定性、大场景性能、编辑器体验、建模与绑定动画、虚拟制片管线等方向做迭代。
需要特别说明一点:本文写作时,5.9 的完整新特性清单以 Epic Games 官方发布说明为准。实际项目落地时,不要只依赖第三方解读,一定要去官网核对 Changelog(更新日志),因为引擎功能细节、API 变动、已知问题都写在官方文档里。
1.2 它解决什么问题
先举一个所有虚幻开发者都能共鸣的场景。一个开放世界项目,地图面积动辄几十平方公里,植被、建筑、地形、NPC 全部塞进场景后,瓶颈通常不是显卡算不过来,而是 CPU 提交指令太多、场景加载策略不合理、光照烘焙与动态全局光照的平衡没做好。再加上美术资源动辄几十 GB,团队协作时版本管理和构建效率也会成为大问题。
虚幻引擎 5.x 就是冲着这些问题来的。Nanite 让超高精度模型不再需要手动做 LOD(细节层次),Lumen 让动态光照不再强制依赖漫长的烘焙时间,World Partition 把大世界拆分成可流送的网格块,PCG(程序化内容生成)则让大规模场景铺设从“手摆”变成“规则驱动”。5.9 在这个基础上继续演进,意味着大场景制作、渲染稳定性和团队协作效率都有望进一步改善。
1.3 常见应用场景
- 3A 级游戏开发:开放世界、射击、动作冒险等品类,对画质和场景规模要求最高。
- 数字孪生与智慧城市:需要实时加载大规模城市模型和建筑信息。
- 影视虚拟制片:LED 舞台背景、实时合成、镜头追踪。
- 建筑与汽车可视化:需要接近真实的光照和物理材质。
- 工业仿真与训练:借助 Pixel Streaming 在浏览器端跑实时场景。
1.4 为什么开发者需要关注
很多团队会有一种心态:我现在的引擎版本用得好好的,为什么要升?这句话对,也不对。引擎升级确实有成本和风险,但长期停留老版本也会积累技术债。比如新硬件特性支持不上、新平台 SDK 强制要求、编辑器稳定性修复、渲染质量提升都拿不到。真正专业的做法不是“无脑升”,而是建立一套可重复、可回滚的升级流程。这恰恰是本文想重点讲清楚的内容。
2. 环境准备与版本说明
2.1 硬件与系统要求
在开始安装或升级之前,先确认你的机器能跑得动。虚幻引擎 5.x 对硬件有明确要求,5.9 作为同代迭代版本,整体基线相近,但具体以官方文档为准。通常建议如下。
| 硬件项 | 建议配置 | 说明 |
|---|---|---|
| 操作系统 | Windows 10/11 64 位 | Linux 和 macOS 也可用,但 Windows 生态最完整 |
| CPU | 6 核以上 | 光照构建、材质编译、代码编译都是 CPU 密集任务 |
| 内存 | 32 GB 以上 | 大场景 + 编辑器 + DDC(派生数据缓存)非常吃内存 |
| 显卡 | RTX 2070 及以上 | 开启 Nanite、Lumen 需要支持 DX12 和 SM6 的 GPU |
| 硬盘 | NVMe SSD,剩余空间 200 GB+ | 引擎本身 30-60GB,项目工程和 DDC 另算 |
如果你的机器配置偏低,不要直接硬上 5.9 跑大项目。建议先创建空白模板类项目做性能基准测试,再决定是否升级。这不算“配置焦虑”,而是工程项目最基本的风险控制。
2.2 通过 Epic Games Launcher 安装
最常见的获取方式是 Epic Games Launcher(Epic 启动器)。
操作流程:
- 登录 Epic Games Launcher。
- 点击左侧“虚幻引擎”选项卡。
- 找到 5.9 版本对应入口。
- 点击“安装”按钮,选择安装路径。
- 等待下载完成,启动引擎。
需要注意:Launcher 安装的版本默认不包含完整 C++ 源码,只包含引擎二进制和开发文件。如果你需要修改引擎源码或者排查引擎内部问题,就要走 GitHub 源码构建路线。
# 安装完成后,通常可以在命令行中调用引擎工具 # 示例:查看引擎版本 "C:\Program Files\Epic Games\UE_5.9\Engine\Binaries\Win64\UnrealEditor.exe" -version2.3 通过 GitHub 源码构建
源码构建适合需要深度定制引擎的团队。虚幻引擎的源码仓库需要通过 Epic 账号关联 GitHub 之后才能访问。
基本步骤:
# 克隆仓库(需要关联 Epic 账号) git clone -b 5.9 https://github.com/EpicGames/UnrealEngine.git # 进入目录并执行安装脚本 cd UnrealEngine .\Setup.bat .\GenerateProjectFiles.bat # 用 Visual Studio 打开 UE5.sln 并编译 # 编译目标和指令以官方文档为准源码构建有几个明显的好处:可以查看引擎源码细节,可以给引擎打补丁,也可以接入自定义平台 SDK。缺点也很明显:首次编译耗时很长,后续每次更新都要重新构建,团队需要投入人力维护。所以中小团队通常用 Launcher 版本就足够了。
2.4 版本管理策略
虚幻引擎 5.9 发布后,很多团队会遇到一个实际问题:“我应该在 5.9 发布当天就升级吗?”答案取决于项目类型。
- 个人学习、原型验证:可以直接用最新版,快速体验新特性。
- 正在开发中期或后期的商业项目:建议先在测试分支验证,不要直接在主干升级。
- 已上线的项目:优先考虑长期支持版本规划,5.9 稳定性确认后再升。
引擎版本管理本身也是工程的一部分。下面是一个推荐的版本策略表格。
| 项目阶段 | 推荐策略 |
|---|---|
| 学习与原型阶段 | 跟随最新版本,体验新特性 |
| 正式项目开发 | 锁定一个长期稳定版本,以季度为单位评估升级 |
| 已上线项目 | 只做必要修复升级,新版本进测试分支验证 |
| 团队协作 | 统一引擎版本,禁止成员自行升级 |
3. 5.9 涉及的核心技术拆解
虽然 5.9 的具体特性和更新列表要以官方说明为准,但机器可以确定的是,它一定会在 5.x 核心技术基线之上继续推进。所以这一节把 5.x 系列最核心的技术体系做一个系统梳理。理解了这些底层逻辑,你才能真正判断 5.9 哪些更新对自己项目有用。
3.1 Nanite:虚拟化微多边形几何
Nanite 解决的核心问题是“模型精度与渲染性能不可兼得”的传统矛盾。
在传统渲染管线里,一个角色模型可能有几万甚至几十万个三角形,场景里几十个角色就能把顶点处理打满。所以美术需要手动制作多级 LOD,在远距离时切换低精度模型。Nanite 则实现了几何体的虚拟化,它允许你直接导入高精度扫描模型或高模资产,引擎在渲染时自动按屏幕覆盖率动态分配三角形密度。
这意味着,只要模型导入方式正确,美术可以省掉大量手工 LOD 工作,同时画面细节大幅提升。5.9 如果继续改进 Nanite,大概率会集中在如下几个方向。
- 蒙皮网格(Skeletal Mesh)在 Nanite 中的支持范围扩大。
- 透明度、遮罩和半透明材质的兼容性提升。
- 大规模植被实例在 Nanite 下的性能优化。
3.2 Lumen:全动态全局光照
Lumen 是虚幻引擎 5 的灵魂技术之一。它不需要传统的 Lightmap 烘焙,也不需要预先计算光照贴图,而是通过软件光追和屏幕空间信号实现全局光照的动态更新。
对于室内场景、动态天气系统、昼夜循环、角色自发光材质,Lumen 能带来明显的效果提升。代价是 GPU 开销比传统烘焙式光照更高,对硬件有一定要求。实际项目中,Lumen 的“反射细节”“最终收集质量”等参数都需要按场景做调优。
5.x 系列在这方面的迭代方向通常是:
- 更稳定的光线追踪效果。
- 更低的 GPU 资源消耗。
- 与其他渲染特性的兼容性。
- 移动端和前向渲染器的支持边界。
3.3 World Partition:大世界流送
World Partition 把原本需要人工切 Level(关卡)的大场景,按世界坐标自动划分成一个个网格区域。运行时,引擎只加载当前玩家附近的区域,远处区域自动卸载。这样做有几个直观好处。
- 场景文件不再是一个人编辑不了的巨型 Level。
- 多人协作时可以同时编辑同一个大世界的不同区域。
- 运行时内存压力明显降低。
- 支持按 Data Layer(数据层)动态加载内容。
如果你的项目要做开放世界,World Partition 几乎是必经之路。很多老项目因为早期没有采用 World Partition,后期迁移成本极高。5.9 在大世界流送和编辑器协同方面的改进,基本都会围绕这一类场景展开。
3.4 PCG:程序化内容生成
PCG 是 5.2 开始被重点推的框架。它允许你通过规则和噪声、密度函数、变换采样等方式,在地形或场景中自动生成大量资产分布。
一个典型案例:你要在一片 100 平方公里的森林区域铺满树木、岩石、草丛。手摆几万个实例是不可能的,用 Houdini 又引入 DCC(数字内容创作)工具链的额外依赖。PCG 直接在引擎内做事:定义好资产池、密度规则、朝向规则、碰撞规则,然后一键生成,并且可以随时调整参数重新生成。
PCG 在 5.x 后续版本里持续增强,比如网格体生成、样条线适配、以及与 Nanite 的配合。5.9 如果继续扩展 PCG 的节点能力和运行性能,会对环境美术团队和开放世界项目带来直接帮助。
3.5 MetaHuman 与动画工具链
MetaHuman 是虚幻引擎的高保真数字人解决方案。它从云端生成高精度数字人资产,支持导入后在引擎里继续做绑定、动画、面部捕捉。
5.x 系列把动画工具链逐步搬到引擎内,包括 IK Rig(反向动力学绑定)、Control Rig(控制绑定)、Motion Matching(动作匹配)等。这套工具链的持续完善,意味着动画师不再需要长期困在 Maya 和 MotionBuilder 的传统流程里。
在 5.9 的评估中,建议重点关注:
- 面部动画系统是否继续优化。
- Motion Matching 的稳定性和自定义程度。
- Virtual Production 场景下的摄像机追踪与合成能力。
- MetaHuman 资产在项目中的导入和维护成本。
3.6 编辑器的生产力改进
引擎版本升级中,普通开发者和美术最先感知到的往往是编辑器体验。比如关卡编辑器是否卡顿、蓝图断点是否稳定、资源迁移工具是否好用、自动化测试框架是否完善。
5.9 作为迭代版本,编辑器层面的改进通常包括:UI 响应速度、资源操作性能、构建系统稳定性、第三方插件兼容性。这些问题不像渲染技术那样亮眼,但恰恰是日常开发效率的关键。
4. 完整实战:现有项目升级到 5.9
从实际项目角度来说,“升级”比“新建项目”复杂得多。这里给出一个从评估到验证的完整升级流程。很多团队能做到前两步,却忽视了后几步,导致升级后问题百出。你放心,这个过程不需要你去逆向引擎源码,只需要耐心和工程规范。
4.1 升级前评估
在动手升级之前,先做一次“项目体检”。
检查内容清单:
- 引擎版本是否在 5.x 系列范围内,是否跨大版本升级。
- 项目使用蓝图还是 C++,C++ 代码量有多少。
- 使用哪些第三方插件以及它们是否兼容 5.9。
- 是否使用了 Marketplace 资源插件,插件维护者是否发布了兼容版本。
- 资源数量总量,材质、贴图、模型各占多少。
- 现有 DDC 缓存策略和构建产物是否适用于新版本。
- 是否有多人协作分支,升级期间是否冻结美术提交。
把评估结果记录成一个表格,逐项打勾。不要在评估不完整的情况下直接升级。
| 检查项 | 状态 | 备注 |
|---|---|---|
| 引擎版本范围 | 待确认 | 例如从 5.4 升级到 5.9 |
| C++ 代码量 | 待统计 | 涉及 API 变更排查 |
| 第三方插件版本 | 待确认 | 需要逐一和插件官方核对 |
| Marketplace 插件 | 待确认 | 是否提供 5.9 兼容包 |
| 资源资产规模 | 待统计 | 评估迁移耗时 |
| DDC 缓存策略 | 待确认 | 新版本缓存可能重建 |
| 团队协作冻结 | 待确认 | 升级窗口内是否锁定提交 |
4.2 创建独立升级分支
无论项目大小,都不建议直接在主干分支上换引擎版本。推荐做法是创建一个名为 upgrade-5.9 的独立分支。
# 以 Git 项目为例 git checkout -b upgrade-5.9这个分支专门用来做引擎升级验证。分支上允许报错、允许临时调整、允许踩坑。主干分支保持稳定,继续正常运行。等升级分支验证通过后,再通过合并或发布流程切到主干。
为什么强调这一步?因为引擎升级往往需要反复调整项目配置,这个过程中如果影响到了主干,会让所有协作者陷入混乱。独立分支是成本最低的隔离方式。
4.3 升级项目文件
在 Launcher 中安装 5.9 之后,用 5.9 的编辑器打开项目的方式有两种。
方式一:右键 .uproject 文件,选择“Switch Unreal Engine version”,然后指向 5.9 的引擎路径。
方式二:直接双击 .uproject 文件,系统会弹出选择引擎版本的窗口。
项目文件本身是 JSON 格式。下面是一个典型的 .uproject 片段。
{ "FileVersion": 3, "EngineAssociation": "5.9", "Category": "", "Description": "", "Modules": [ { "Name": "MyGame", "Type": "Runtime", "LoadingPhase": "Default" } ], "TargetPlatforms": [ "Windows", "Android", "IOS" ], "Plugins": [ { "Name": "EnhancedInput", "Enabled": true }, { "Name": "PCG", "Enabled": true } ] }注意EngineAssociation字段,它表示这个项目关联的引擎版本。升级时编辑器会自动改写该字段。
4.4 C++ 代码与构建系统适配
如果你的项目包含 C++ 代码,升级后第一件事可能是编译不过。这不是 5.9 才有的现象,而是跨版本升级中非常常见的情况。原因包括:
- 引擎 API 被弃用或改名。
- 头文件路径发生变化。
- 模块依赖关系调整。
- 编译宏或数据类型变更。
- 第三方 SDK 使用旧的引擎模块名。
下面是构建脚本的一个片段说明。虚幻引擎使用 Target.cs 和 Build.cs 管理模块依赖。
// 文件路径:Source/MyGame.Target.cs using UnrealBuildTool; using System.Collections.Generic; public class MyGameTarget : TargetRules { public MyGameTarget(TargetInfo Target) : base(Target) { Type = TargetType.Game; DefaultBuildSettings = BuildSettingsVersion.V5; IncludeOrderVersion = EngineIncludeOrderVersion.Unreal5_9; ExtraModuleNames.Add("MyGame"); } }其中IncludeOrderVersion参数控制头文件的包含顺序版本。5.9 对应的枚举名需要根据官方 API 做确认。编译报错时不要猜,直接到官方迁移文档查对应版本的变化说明。
4.5 插件与第三方 SDK 检查
插件是最容易翻车的地方。很多插件在引擎升级后出现加载失败、编辑器崩溃、打包报错等问题。
插件检查步骤:
- 打开项目后,在“插件”面板里筛选红色警告项。
- 对每个报错插件,确认是否启用了不兼容版本。
- 到插件官方发布页查看是否已提供 5.9 版本。
- 没有兼容版本的插件,评估是否可以临时禁用或替换。
- 对于自研插件,需要更新其
UE5.9支持标记。
插件配置文件通常位于项目的Config目录下,或者使用引擎级插件时位于引擎安装目录的Plugins文件夹中。如果插件在升级后无法加载,界面会明确提示,这个时候不要强行启用,否则会导致项目启动失败。
4.6 Shader 编译与性能验证
升级完代码和插件之后,第一次打开大场景时,通常会有长时间的 Shader(着色器)编译过程。这是正常现象,但不代表可以忽视。
建议做法:
- 在升级分支上,用最小可运行的测试场景启动项目。
- 确认 PIE(Play In Editor)能够正常运行。
- 使用
r.ShaderPipelineCache.Enabled等命令摸排 Shader 编译情况。 - 记录升级前后的帧率、GPU 占用、加载时间等数据。
; 文件路径:Config/DefaultEngine.ini ; 常见性能验证配置片段 [SystemSettings] r.ScreenPercentage=100 r.Lumen.DiffuseIndirect.Allow=1 r.Nanite.MaxPixelsPerEdge=1 r.Streaming.PoolSize=1024这里并不是让你直接照搬这些参数,而是演示配置项的存在形式。实际数值需要通过 Profile 工具逐步调整。独立验证场景非常关键,它能让你在升级早期发现问题,而不是等到整个项目打不开时再回溯。
4.7 回归测试与合并策略
升级分支验证流程基本可以这样走:
- 单元测试和功能测试全部通过。
- 美术和策划在测试场景中做一轮主观体验检查。
- 打包一个可执行版本,在测试机上运行。
- 检查性能日志和 Crash 报告。
- 记录所有已知问题并确认是否有阻塞项。
如果一切通过,再把升级分支合并回主干。如果问题较多,不要硬合,优先回溯到原版本继续正常开发,并同步记录“5.9 暂不可用”的具体原因,等插件或引擎版本修复后再做第二次尝试。
# 合并前先更新主干到最新 git checkout main git pull origin main # 将升级分支合并回主干 git merge upgrade-5.9 # 合并后立即跑一次编译和启动验证5. 常见问题与排查思路
5.1 项目启动闪退
升级后最常见的现象是启动闪退。常见原因和排查思路如下。
| 问题现象 | 常见原因 | 解决思路 |
|---|---|---|
| 启动闪退 | C++ 编译不通过 | 先编译成功再启动编辑器 |
| 启动闪退 | 插件不兼容 5.9 | 禁用报错插件,逐个启用排除 |
| 启动闪退 | 项目文件引用旧版本 | 检查 EngineAssociation 字段 |
| 启动闪退 | 材质或着色器不兼容 | 打开日志文件查看崩溃模块 |
| 启动闪退 | GPU 驱动版本过旧 | 更新到最新稳定版驱动 |
排查第一步永远是看日志。日志文件位置:
项目目录/Saved/Logs/项目名.log打开日志搜索Fatal、Error、assert等关键字。日志会直接告诉你崩溃发生在哪个模块、哪个插件,甚至具体到某一行代码。不要凭感觉猜。
5.2 地图打开后材质全是洋红色
材质不兼容是引擎升级后比较常见的现象。洋红色通常代表材质编译失败或引用了不存在的节点。
处理方式:
- 点击材质查看编译错误信息。
- 检查是否使用了已弃用的材质节点。
- 检查纹理压缩格式是否与当前版本兼容。
- 尝试恢复为默认材质,确认场景是否正常。
- 如果项目里材质数量很多,建议先编写一个资源检查脚本批量定位报错资源。
还有一种情况:材质引用了引擎的默认资源路径,但新版本中该路径发生变化。这类问题通常能在日志里看到明确提示。
5.3 构建速度慢、DDC 缓存失效
升级后 DDC 缓存失效是正常现象。不要试图在第一次打开时等待全部资源缓存完成,那样会非常耗时。正确做法是:
- 先刷新主场景并保存。
- 使用命令
Asset Audit或手动打开关键目录。 - 让 DDC 缓存自然构建,或者提前配置共享缓存服务器。
- 在 CI(持续集成)机器上构建一次,把缓存产物同步到团队内网。
# 命令行启动编辑器并触发一次资源扫描 UE_5.9\Engine\Binaries\Win64\UnrealEditor.exe "项目路径\项目名.uproject" -run=AssetAudit5.4 C++ API 编译报错
这类问题最需要耐心。搜索实际报错信息,大多数情况下是某个函数被替换为更明确的新版本。比如:
- 参数从多个分散参数改为结构体参数。
- 函数名从小写的 get/set 变为更明确的长命名。
- 类被移动到了新的模块或命名空间。
推荐做法:
- 复制编译错误中的类名或函数名。
- 在新版本引擎目录下搜索源码。
- 查看新版本的实现方式和注释。
- 跳转到官方迁移文档查看是否记录了这次变更。
- 修改代码时尽量保持原有逻辑不变,只做 API 适配。
5.5 打包失败或目标平台 SDK 版本不支持
通常是因为新引擎要求更高的 SDK 版本。比如 Android、iOS、Windows 平台的基础 SDK 有最低版本要求。检查平台面板的 SDK 版本是否满足 5.9 要求,不满足时需要同步升级 SDK 并重新配置。
6. 工程最佳实践与升级建议
6.1 不要为了新版本而升级
每次引擎大版本或次版本更新,社区都会有“立刻升级”的冲动。但从工程视角来看,版本升级本身是一种投资行为。它带来新功能和性能改进,也带来了迁移成本、插件适配成本和回归测试成本。
判断是否升级,建议按这个顺序自问:
- 新版本是否有项目痛点对应的改进?
- 项目使用的关键插件是否已确认兼容?
- 团队当前是否处于里程碑交付前的敏感时期?
- 是否有足够的人力做回归测试?
如果以上问题里有任何一个不确定,优先选择“评估后再决定”,而不是“先升了再说”。
6.2 建立版本升级日历
好的团队会把引擎升级当成年度或季度例行任务,而不是临时起意。比如每两个甚至三个 5.x 版本评估一次升级,优先选择功能稳定、插件兼容度高的版本。升级窗口尽量避开里程碑节点和内容冻结期。
6.3 自动化验证要前置
如果在项目早期就搭建了自动化测试和构建流水线,引擎升级会轻松很多。CI(持续集成)可以在提交后自动完成编译、启动、打包、冒烟测试。升级时,只要跑一遍自动化流程,就能快速发现大部分基础问题。
6.4 配置与资源规范
升级之后,很多问题源于早期项目资源不规范。比如材质节点连线混乱、贴图尺寸随意、模型面数失控、蓝图逻辑没有注释、C++ 代码耦合严重。这些不是引擎版本的问题,但会放大升级的难度。
建议从现在开始,在项目里建立一套可执行的规范:
- 插件只保留必需项,不用的插件一律禁用。
- Marketplace 资源统一记录版本和来源。
- 核心 C++ 类尽量保持和引擎模块的解耦。
- 材质和贴图的命名、分类、导入设置保持统一。
- 每季度做一次资源审计,清理无引用资源。
6.5 安全与权限边界
涉及引擎安装、项目升级、CI 构建等操作时,同样要有权限意识。正式项目升级需要团队负责人确认,测试环境验证通过后才能应用到生产项目。新版本的第三方 SDK 和在线服务接入,要检查数据安全和隐私合规,尤其是涉及账号体系和用户数据的项目。
升级过程中如果遇到“需要修改引擎源码”的情况,必须评估代码的可维护性。因为引擎源码修改之后,下一次升级时你需要把补丁重新应用一遍。补丁多了,升级成本会指数级上升。能通过插件层解决的问题,尽量不要改引擎源码。
7. 结语与下一步建议
虚幻引擎 5.9 发布,意味着 5.x 系列又往前走了一步。对于已经基于 5.x 开发的项目,这是一次值得评估的升级机会;对于还在旧版本徘徊的团队,这也是一个重新审视引擎路线的节点。
有一点值得单独强调:引擎只是工具,不是魔法。无论哪个版本来,项目的核心依然是扎实的渲染优化、合理的场景管理、规范的数据流和健康的团队协作流程。新特性的价值要靠“用对场景、用对方法”才能体现。
如果你现在正打算尝鲜 5.9,我的建议很简单。先在自己的测试机上建一个空白项目,把 Nanite、Lumen、World Partition、PCG 这四件事挨个试一遍,感受新版本的工具流。然后再决定是否把正在开发的项目切换到 5.9。升级过程不要急,一步一步来,每一步都做备份、做记录、做验证。稳定永远比新的重要。