Skip to content

2026-05-20 引擎周报

✨ 新功能

  • 动画与IK: 新增 Proximity IKPelvic Volume 操作的初始基线。
  • 渲染与媒体: MoviePipeline 中的 EXR 节点现在支持指定 DWAA/DWAB 压缩格式。
  • 编辑器工具与框架: 推出初始版 MVVM Toolset 插件,支持通过蓝图资产创建和修改 Viewmodel;新增 Composable Solvers Plugin
  • UI与交互: ListView 控件引入了跨条目导航、对齐感知滚动及不规则行修正功能;为 Robomerge 添加了暗黑模式。
  • 数据分析: IoStoreDependencyViewer 新增了按资产统计包含性/排他性依赖大小的功能。
  • 输入与调试: Input Debugger 的事件日志现在可以记录输入预处理器消耗事件的时间和处理器信息;Slate 调试器也新增了类似事件。
  • 编辑器功能: FindInAnimNextRigVMAsset 支持按资产/函数分组;为 EditorAppToolset 添加了获取/设置 CVar 值的工具。
  • 其他: MeshPartitionActor 的细节面板中将“网格分区”类别移至顶部(变换属性下方);VerseSetupVerse 函数新增 publicName 参数。

🚀 重大变更

  • 数学库: 移除了 InvSqrtEstVectorEstimate 数学函数。
  • 网络与内存: RemoteHeap 的网络协议得到简化。
  • 音频: 移除了音量调制(Volume modulation)参数默认的 0-1 范围限制。

⚡ 性能优化

  • 硬件光线追踪 (HWRT): 改进了 ComputedPrimitiveCountForValidation 的日志记录。
  • 材质编辑器: 优化了材质编辑器中的 Shader Stats 显示性能。
  • 资产验证: 在验证期间启用了异步资产预加载。
  • PCG: GPU SM Spawner 通过从密集遍历剔除单元格改为稀疏遍历,修复了 CPU GameThread 的成本峰值问题。
  • 其他: 为 SQLite 预处理语句添加了 string_view 重载以提升性能;优化了 Track Changes 操作,通过批处理、并行化和减少 Populate 相关工作量来提升效率。

🐛 Bug 修复

  • 核心与系统: 修复了 FPackageLocalizationCultureCache::RemoveRootSourcePath 在移除路径匹配时过于激进的问题;修复了 AutomationTestLatentBeforeEach 在 lambda 内部排入潜在命令时可能导致的死锁;修复了在粘贴无效的曲线图集(Curve Atlas)参数时发生的崩溃。
  • 渲染与材质: 修复了 ImgMedia 中球体上采样 mip 在 tile-pyramid 根节点的限制,并保护了极点的各向异性奇点;修复了 HairCardsVertexFactoryGetMaterialVertexParameters 纹理坐标数组大小不匹配的问题;修复了 TSR 中为所有 16 位类型采样纹理声明 _resource 以确保 SPIR-V 获得 fp32/uint32 采样类型的兼容性问题。
  • 编辑器与工具: 修复了 Audio Insights 中事件日志在 scrubbing 时自动在细节面板设置新项的问题;修复了 DataHierarchyEditor 中将多个属性拖放到某个已包含属性的类别时出现的 bug;修复了 SkeletalMeshModelingTools 中多边形组边缘可视化器在网格变形后不更新的问题;修复了编辑器关闭时,MeshTerrainMode 的 lambda 因捕获 Slate 控件生命周期延长导致的崩溃;修复了 SkinWeightsPaintTool 在 Mesh 模式下仅选择1个顶点时返回无效 FBox 的问题。
  • 动画与物理: 修复了在数据库仍在处理 DDC 时删除它们的问题;修复了动画层(Anim Layers)在具有动画的控件上添加变更的新工作流问题;修复了 Geometry Collection 内部集群对 Crumble Cluster 不响应的问题。
  • 电影渲染管线: 修复了使用过扫描(overscan)时,非 16:9 宽高比渲染的信箱/邮筒效果可能被部分裁剪掉的问题。
  • 输入与交互: 修复了 StylusInput 中多个 Wintab 实例以及 NSEvent 上下事件的问题;修复了 DebugCameraManager 垃圾回收问题的临时方案(过滤无效的调试摄像机)。
  • USD: 修复了 USD Pregen 允许导入以非字母数字字符开头的文件的问题(通过添加下划线前缀);修复了 MaterialX 转换器生成的节点未被正确标记原始路径导致预生成找不到资产的问题。
  • PCG: 修复了 Metadata Array 操作的日志记录问题;在 Elevation Isolines 中添加了安全检查,以防止尝试生成过多点时出错。
  • Horde: 修复了 Build Health 仪表板中已安装变体的管理员访问权限问题;修复了剪贴板相关的复制上下文问题;修复了项目过滤器搜索上下文现在应能正常工作。
  • 其他: 修复了 Motion Design 中场景状态数据链接任务因缺少有效元数据标签而不出现的问题;修复了 Output Tag 查询选择器列未使选择器表变脏的问题;修复了提交工具等待可选(非完成)任务的问题;修复了 PropertyBagHierarchyViewModel 引用计数所有权问题,避免了资源编辑器关闭后的崩溃;修复了 FPropertyChangeEvent 重构破坏了为非容器属性创建 FPropertyChangeEventContainerKeys 的旧代码的问题。

🔧 API 变更

  • ModelContextProtocol: 将 load_toolset 替换为 call_tool 分发器。
  • 数据缓存 (DDC): 向 ICache 接口添加了 SetShuttingDown()WaitForIdle() 方法;将速度等级枚举移入文件系统缓存存储;将 pak 文件缓存的跟踪与合并移入 pak 文件缓存存储;向旧路径添加了空回调。
  • Verse (UBT): SetupVerse 函数现在接受 publicName 参数,允许为生成的 Verse 摘要指定面向用户的名称。
  • 构建系统: 将 WinArm64 添加到 OnlineTest 的 LLT 预检模板中。
  • 动画: 为 USimpleWalkingModeUSimpleSpringWalkingModeUCLASS() 添加了 MinimalAPI,以允许子类化。