跳转至

Unreal Engine 5.7 — 破坏性变更

最后验证: 2026-02-13

本文档追踪 Unreal Engine 5.3(可能在模型训练中使用)与 Unreal Engine 5.7(当前版本)之间的破坏性 API 变更和行为差异。按风险级别组织。

HIGH RISK — 将破坏现有代码

Substrate 材质系统(5.7 中生产就绪)

版本: UE 5.5+(实验性),5.7(生产就绪)

Substrate 用模块化、物理精确的框架取代了旧版材质系统。

// ❌ OLD: Legacy material nodes (still work but deprecated)
// Standard material graph with Base Color, Metallic, Roughness, etc.

// ✅ NEW: Substrate material layers
// Use Substrate nodes: Substrate Slab, Substrate Blend, etc.
// Modular material authoring with true physical accuracy

迁移: 在 Project Settings > Engine > Substrate 中启用 Substrate,并使用 Substrate 节点重建材质。


PCG(程序化内容生成)API 全面改造

版本: UE 5.7(生产就绪)

PCG 框架已达到生产就绪状态,并伴随重大 API 变更。

// ❌ OLD: Experimental PCG API (pre-5.7)
// Old node types, unstable API

// ✅ NEW: Production PCG API (5.7+)
// Use FPCGContext, IPCGElement, new node types
// Stable API, production-ready workflow

迁移: 遵循 5.7 文档中的 PCG 迁移指南。实验性 PCG 代码预计需要大量重构。


Megalights 渲染系统

版本: UE 5.5+

新光照系统支持数百万个动态光源。

// ❌ OLD: Limited dynamic lights (clustered forward shading)
// Max ~100-200 dynamic lights before performance degrades

// ✅ NEW: Megalights (5.5+)
// Millions of dynamic lights with minimal performance cost
// Enable: Project Settings > Engine > Rendering > Megalights

迁移: 无需更改代码,但光照行为可能有所不同。启用后请测试场景。


中等 RISK — 行为变更

Enhanced Input System(现为默认)

版本: UE 5.1+(推荐),5.7(默认)

Enhanced Input 现已成为默认输入系统。

// ❌ OLD: Legacy input bindings (deprecated)
InputComponent->BindAction("Jump", IE_Pressed, this, &ACharacter::Jump);

// ✅ NEW: Enhanced Input
SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) {
    UEnhancedInputComponent* EIC = Cast<UEnhancedInputComponent>(PlayerInputComponent);
    EIC->BindAction(JumpAction, ETriggerEvent::Started, this, &ACharacter::Jump);
}

迁移: 用 Enhanced Input 操作替换 Legacy Input 绑定。


Nanite 默认启用

版本: UE 5.0+(可选),5.7(推荐)

Nanite 虚拟化几何体现已成为静态网格体的推荐工作流程。

// Enable Nanite on static mesh:
// Static Mesh Editor > Details > Nanite Settings > Enable Nanite Support

迁移: 将高多边形网格体转换为 Nanite。在目标平台上测试性能。


低 RISK — 弃用(仍可使用)

旧版材质系统

状态: 已弃用但仍受支持 替代方案: Substrate 材质系统

旧版材质仍然可用,但新项目推荐使用 Substrate。


旧版 World Partition(UE4 风格)

状态: 已弃用 替代方案: World Partition(UE5+)

大型世界请使用 UE5 的 World Partition 系统。


平台特定的破坏性变更

Windows

  • UE 5.7:DirectX 12 现为默认(旧版本为 DX11)
  • 更新着色器以兼容 DX12

macOS

  • UE 5.5+:需要 Metal 3(最低 macOS 13)

移动平台

  • UE 5.7:最低 Android API 级别提升至 26(Android 8.0)
  • 最低 iOS 部署目标提升至 iOS 14

迁移检查清单

从 UE 5.3 升级到 UE 5.7 时:

  • [ ] 审查 Substrate 材质(如果已准备好迁移到新系统则进行转换)
  • [ ] 审计 PCG 使用情况(如果使用实验性 API 则更新到生产版 API)
  • [ ] 测试 Megalights 性能(启用并做基准测试)
  • [ ] 将 Legacy Input 迁移到 Enhanced Input
  • [ ] 将高多边形网格体转换为 Nanite
  • [ ] 更新着色器以兼容 DX12(Windows)或 Metal 3(macOS)
  • [ ] 确认最低平台版本(Android 8.0、iOS 14)
  • [ ] 在目标硬件上测试 Lumen 和 Nanite 性能

来源:

  • https://dev.epicgames.com/documentation/en-us/unreal-engine/unreal-engine-5-7-release-notes
  • https://dev.epicgames.com/documentation/en-us/unreal-engine/upgrading-projects-to-newer-versions-of-unreal-engine

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/Claude-Code-Game-Studios