2026-05-19 引擎周报
✨ 新功能
- 材质编辑器扩展:为材质编辑器添加了布局扩展钩子,为未来引擎功能预留接口。
- 输入接口增强:在
IInputInterface中新增GetAllInputDevices函数,允许平台返回当前正在使用的所有已注册外部IInputDeviceModules。 - UMG输入组件:为
UUserWidget添加了一个虚函数,允许在非蓝图环境中强制创建UInputComponent,方便程序化输入处理。 - 远影调试模式:新增
ShowFlag.VisualizeFarShadowCasters调试模式,用绿色叠加色标识标记了远影的网格体,其他网格体显示为灰色。 - Vulkan外部纹理:为
WebViewControl添加了 Vulkan Android 平台的外部纹理支持。 - Cloud DDC 可观测性:改善了 Cloud DDC 在新分段检测时的增量水合过程,并增强了相关可观测性。
- 云存储功能:新增在复制构建时覆盖类型的能力。
🚀 重大变更
- VulkanRHI绑定管线切换:支持从非绑定式切换到绑定式管线,用于预览目的。
- Verse语言兼容性:在低于特定版本(3200/3700/4000)的包中,静默地将
castable_subtype、concrete_subtype和castable_concrete_subtype降级为普通的subtype。 - 构建规则变更:
UnrealBuildTool将规则程序集设置为使用可移植PDB,并使用Assembly.LoadFrom修复了调试回归问题。 - IoStore依赖调整:移除了
IoStoreOnDemand的公共依赖项,并显式依赖于IoStoreOnDemandCore。 - Electra解码器重构:VP8/9、AV1 和 APV 解码器现在传递独立的 YUV 平面;相应的工具库扩展了纹理采样以处理独立的 YUVA 平面。
⚡ 性能优化
- Nanite重建优化:减少了由 Nanite DDC 密钥变更引起的静态和骨骼网格体重建次数。
- 远程序列化优化:优化了远程对象序列化,减少了哈希查找、内存分配并移除了不必要的代码。
- PlainProps格式化:格式化了 CTTI 宏使其更具可读性。
🐛 Bug 修复
- 渲染修复:修复了当
ResolvedView.PreViewTranslation与用于构建 Global SDF 的值不一致时(如阴影贴图),全局距离场采样错误的问题。 - 平台与运行时:修复了多个运行时崩溃和错误行为,包括:
CompositeCore中PF_Unknown场景颜色格式的保护;控制林中或可视化顶点弹簧时的崩溃;ContextWrapper绑定的罕见竞态条件;以及BPI运行时错误不显示的问题。 - 动画与序列:修复了
Sequencer动画混合器根运动在偏移网格蓝图中的动画空间模式错误;修复了序列器装饰宿主区域的所有权语义;修复了曲线编辑器中 Alt+MMB 和 Alt+RMB 的回归问题。 - 工具链与构建:修复了枚举折叠导致控制林损坏/行为异常的问题;修复了使用旧版
uassets加载体积数据时的回归;为 iOS 实时构建禁用了可移植工具链。 - 编辑器与工具:修复了
Teds Hierarchy Viewer中行错误地父级化的问题;修复了调试引脚孤立时的崩溃;修复了PCG生物群系中差异优先级过滤时的缺失链接;修复了输入设备管理器相关的错误警告;修复了MRG中使用32位 PPM 和多次空间采样时一帧渲染失败的bug。 - XR与运动捕捉:修复了 VR 中移动的 Actor 因物理场景过时而无法选中的回归;修复了使用空自定义时间步长和卡顿保护时显示错误警告的问题。
- 材质与渲染:修复了
DynamicWind的多个问题;修复了方向性散射颜色回归;修复了体积云在材质非天空时深度超过 FP16 最大值导致的上采样边缘错误;修复了桌面前向渲染中与ManualDepthTestEqual相关的着色器编译失败。 - 其他:修复了测试中的非确定性数组访问;修复了曲线/属性混合权重未正确序列化的问题;修复了
Verse包向后兼容执行期间无法重映射引脚的警告;修复了构建格式问题。
🔧 API 变更
- Cook流程:将
packageChunkId添加到 Cook 制品中,确保没有保存PackageData的包也能写入其 chunkID。 - 自动化测试:将
AIE的选择类别代码从UI中的Selecting移动到Setting Layer Active。 - 输入子系统:新增
IInputInterface.GetAllInputDevices函数。 - 序列化:导出了
SetNetVersionsOnArchive函数。 - 约束系统:当父级是控制时,约束不再查找套接字。
- 模块化装配:修复了错误使用空的
LastExecutedElements数组的问题。 - 集合与管理:
IAD包排除集。 - 控制林通道选择:当选择控制的某个通道时,
Selected过滤器现在也会隐式过滤其他同级通道。 - 内容烘焙:支持为
UAT AutomationUtils添加 NFL 代码支持。