Skip to content

2026-06-13 引擎周报

✨ 新功能

  • 为 Scene 工具集添加了 Data Layer 支持,增强了场景数据管理能力。
  • 在 Android 平台实现了双向远程控制台支持,并共享了 Windows 平台的实现。
  • 新材料翻译器中,“Apply” 材质函数现在可以自动刷新依赖材质和材质函数编辑器中的透视信息(如电线、引脚颜色),提升了跨材质函数编辑的体验。

🚀 重大变更

  • StaticMesh 构建流程引入了纯构建管道以及基于内容寻址的源 MeshDescription DDC 记录
  • 修正了 UE_DEPRECATED 宏的目标版本,从 6.0 更正为 5.9。
  • 临时禁用了 WindowsApplication.UseRawInputKeyboardDuringHighPrecisionMouse 选项,以解决编辑器相关问题。

⚡ 性能优化

  • Shader 编译RedundancyEliminationPass 中预分配了向量大小,将特定着色器的编译时间缩短了一半。
  • 确保 Lumen Mesh Card 的所有排序都具有稳定顺序,避免了非确定性烹饪可能导致的问题。
  • 减少了 GFP 引擎初始化类别中对 GfpInfoMap 的一次不必要的拷贝,降低了初始化开销。
  • 内容浏览器的源树包裹在单个失效操作中,限制了无变化时的控件遍历深度,提升了性能。

🐛 Bug 修复

  • 动画系统:修复了使用原始骨骼索引以正确处理虚拟骨骼的问题。
  • 绘画模式:修复了退出后无法重新进入绘画模式的问题。
  • PCG:修复了多个问题,包括引脚重建时取错 PinId、数据视图首次渲染过曝、组件在 PIE 中销毁时未正确清理、FlattenAndCompress 中存在未初始化值,以及由未归一化旋转引起的崩溃。
  • 世界分区:修复了 DataLayerInstance 的 InitialRuntimeState 在 PostLoad 中通过 CVar 读取进行运行时重写的功能。
  • 静态网格:修复了 MovementBaseInterface::IsValid 检查未通过 GetPhysicsObjectById 验证 PhysicsActor 有效性的问题,覆盖了更多用例。
  • Sequencer:修复了在编辑器重启后重新打开包含动画混合器 “DefaultTarget” 的关卡序列时发生的崩溃,以及固定项下方的死空间显示问题。
  • 动画序列:修复了由未初始化曲线填充导致的动画序列 DDC 输出非确定性问题。
  • Chaos Cloth:修复了绘制本地空间/速度缩放默认值交换以及绘制点法线委托的问题;并修复了在 PostLoad 产生新渲染数据时未重新计算边界的问题。
  • 输入:修复了在编辑器中出现模态窗口时使用输入线程发生的错误。
  • STRANDS:修复了在支持与不支持 STRANDS 几何体的平台间切换预览时发生的崩溃。
  • STRANDS 骨骼蒙皮:修复了当底层骨骼在引导插值期间未就绪时,使用带骨架的毛发发生的崩溃。
  • MVVM:修复了当异步加载线程被激活时,弃用机制无法正常工作的问题。
  • 远程输入:修复了在 Windows 上使用原始输入键盘时,调用 OnKeyChar 时剥离死键位以避免 IntCastChecked 截断的问题。
  • Groom:修复了当底层骨骼在引导插值期间未就绪时,使用带骨架的毛发发生的崩溃。
  • GFP:修复了 CancelDelegateListPendingDelegatesByHandle 为空时提前退出的问题,确保 CallList 中需要取消的委托仍能被处理。
  • 挂件:修复了控制器已经是 PawnToPossess 的控制器时,不必要的 Unpossess 操作,避免了错误地触发 OnNewPawnOnPossessedPawnChanged 委托。
  • IAD 缓存:修复了当数据块被删除时,MetadataLookup 未被正确清理的问题。
  • FSimpleStreamableAssetManager:修复了在异步加载线程上 UMaterialInterface::CacheTexturesSamplingInfocheck() 触发的问题。
  • FTextStoreACP:修复了 GetText 函数不符合 ITextStoreACPTS_RUNINFO 协约的问题。
  • Niagara:修复了着色器警告。
  • D3D12 RHI:修复了平台切换预览时的崩溃。
  • Material Graph:修复了连接绘制策略中的静态分析错误,移除了不必要的空值检查。
  • UHT:修复了第三方插件在当前配置下模块未加载时的误报检测问题。

🔧 API 变更

  • NetDriver 中添加了通用的 OnConnectionRemoteAddrUpdated 委托,用于跟踪有效连接的 IP 地址变更。
  • PerfReportTool 添加了 Payload metadata 命令行选项,用于遥测流程。

⚠️ 废弃预告

  • 提供了 LazyObjectPtr 废弃的命令行工具,用于解析项目数据并通过资产注册表生成 GUID 到软对象路径的映射,以便通过 ini 文件进行加载时转换。
  • 移除了用于管理 StateHandle 生命周期的控制台变量(CVar)。