Unreal Engine 4.19 Released
2018年3月14日

虚幻引擎4.19版发布!

作者 Jeff Wilson

新增内容

虚幻引擎4.19版可帮助您潜心创意开发 - 各种工具皆清晰明了,以便您专注打造内容。此版本对渲染、物理、地形地貌等诸多系统进行了改良,使您创建的世界场景运行得更加快捷。工具的易用性始终是我们关注的重点,因此我们也继续推进了这方面的改良工作,让开发者获得更多的自主性

无论您打造的是游戏、线性媒体、建筑可视化,还是产品设计工具,虚幻引擎4.19版都能在每一步工作中为您准确呈现最终成品的效果。全新的Live Link插件将无缝衔接第三方内容创建工具和虚幻引擎之间的工作流程,让您在修改源内容时便能及时查看更新。而随着Sequencer的持续改进,您将成为名符其实的导演,进一步实时掌控您的场景。

当你想要实现理想中的世界场景时,天空往往会成为限制因素。而地形渲染优化能够帮助用户创建大型开放世界中惊艳绝伦的远景。全新的动态分辨率(Dynamic Resolution)功能将根据需要调整分辨率、满足所需的帧率。世界场景在PS4和Xbox One上的运行速度将前所未有的流畅。

如果没有大量工作流程和易用性方面的改良,那一个新版本就是不完整。在这一点上,虚幻引擎4.19版同样不会令人失望。材质图层和参数的使用将更为简便、更为直观。蓝图的调试功能也更加强大,拥有进入、越过和跳出功能。在新版本中,用户将还可以收藏内容文件夹。动画工具改良后加入了可锁定命令、打开多个视口等诸多内容。

除Epic的更新外,此版本还包含了GitHub的虚幻引擎开发者社区提交的128项改良!衷心感谢以下诸位对于虚幻引擎4.19版做出的贡献:

Adam Rehn(adamrehn)、Alex Chi(alexchicn)、Alexander Stevens(MilkyEngineer)、alexformosoc、Andrew Armbruster(aarmbruster)、Anton Rassadin(Antonrr) Austin Pukasamsombut(AustinPuk-Conffx)、Bo Anderson(Bo98)、Carlos(carloshellin)、Carsten Neumann(cneumann)、Celso Dantas(celsodantas)、Chris Conway(Koderz)、Chris Dietsch(cdietschrun)、Chrispykins、Clinton Freeman(freemancw)、cmheo、CuoXia(shrimpy56)、Daniel Butum(leyyin)、Daniel Neel(dneelyep)、Daniel Sell(djsell)、David Payne(dwrpayne)、DavidNSilva、Deep Silver Dambuster Studios(DSDambuster)、Derek van Vliet(derekvanvliet)、DerelictHelmsman、dfb、Dorgon Chang(dorgonman)、druhasu、Eddy Luten(EddyLuten)、foollbar、GeorgeR、Giperionn、Hyuk Kim(Hybrid0)、Ilya(ill)、Jack Knobel(jackknobel)、Jacob Nelson(JacobNelsonGames)、James Horsley(mmdanggg2)、Jared Taylor(Vaei)、Javad Shafique(JavadSM)、jessicafalk、John W. Ratcliff(jratcliff63367)、Jørgen P. Tjernø(jorgenpt)、Josef Gluyas(Josef-CL)、Julien Le Corre(jlc-innerspace)、konflictue、Kryofenix、Kyle Langley(Vawx)、Marcin Gorzel(mgorzel)、Matt Hoffman(LordNed)、Matthew Davey(reapazor)、Michael Allar(Allar)、Michał Nowak(BibbitM)、Mikael Hermansson(mihe)、mkirzinger、Mustafa Top(MSTF)、nakapon、nullbus、pfoote、phlknght、projectgheist、Richard Schubert(Hemofektik)、Ron Radeztsky、rlefebvre、ruffenman、sangpan、Sébastien Rombauts(SRombauts)、smt923、Stefan Zimecki(stefanzimecki)、Stephen Swires(sswires)、Tim Niederhausen(timniederhausen)、Timothee Besset(TTimo)、Tom Ward(tomwardio)、tomari、TomFors、Toru Hisai(torus)、Vikram Saran(vikhik)、yaakuro、Yohann Martel(ymartel06)、YuchenMei、Zeno Ahn(zenoengine)

主要特性

新增特性:Temporal Upsample

新版本中增加了名为Temporal Upsample的分辨率修改法,它能执行低分辨率下帧数和主空间分辨率提升的临时累加,借此降低输出的模糊度。

1 - 启用Temporal Unpsample;2 - 禁用Temporal Unpsample

我们在之前的版本中引入了屏幕百分比的概念,这使用户能够在低分辨率下渲染3D场景,并空间性地在UI绘制之前上调到输入的分辨率。这种方法非常灵活,能在性能不强的硬件上满足GPU的消耗,但仍需要在输出清晰度和GPU性能之间做出权衡。

在新版本中,我们提供了两个单独的屏幕百分比用于分辨率调整,替代之前的单一屏幕百分比:

  • 和旧版本相同,主屏幕百分比将默认使用空间分辨率修改通道;
  • 次屏幕百分比则是在后期处理的最后、UI绘制之前进行的静态纯空间分辨率修改。

在Temporal Anti-Aliasing(TAA)通道中发生的临时分辨率修改可在不同的主屏幕百分比(从50%到200%)中形成稳定的几何体锐度。实际上,即使屏幕百分比降低,启用TAAU后背景中的几何体也能保持细节和精细度(这些几何体在之前的版本中通常精度不高,且容易相互混入),如上例中的栅栏和电话线杆。

如需了解更多信息,请查阅带Temporal Upsample的屏幕百分比(Screen Percentage with Temporal Upsample)页面。

新增特性:动态分辨率

新版本现支持动态分辨率(Dynamic Resolution),根据需要调整分辨率,在PS4和Xbox One游戏达到理想的帧率!它的工作原理是使用一个启发法,基于之前的帧GPU工作量来设置主屏幕百分比。

未来版本更新将加入其他平台支持。如需了解更多信息,请查阅动态分辨率(Dynamic Resolution)页面。

新增特性:统一虚幻AR框架

在这个全新的虚幻引擎版本中,统一虚幻增强现实框架(Unified Unreal Augmented Reality Framework)将为苹果和Google移动平台增强现实(AR)应用程序的开发提供丰富而统一的框架。此框架提供了单一开发路径,使开发者能使用单一代码路径开发两个平台的AR应用。统一虚幻增强现实框架包含支持对齐、光照估算、锁定、会话状态、追踪结果和跟踪的函数。

由Theia提供

新增特性:统一虚幻AR框架项目模板

我们还同时推出了全新的蓝图模板HandheldAR,它提供了一个展示新功能的完整范例项目。

新增特性:物理光照单位

在虚幻引擎4.19版中,所有光照单位均使用基于物理的单位定义。部分光照单位已妥善定义,但其他部分仍在使用未定义的、由引擎指定的单位。光照的单位选择可通过下拉菜单执行(在适用处)。出于兼容性考虑,默认光照单位将继续兼容之前的引擎版本。全新的光照单位属性可在每个光照上进行编辑,进而修改执行与光照相关的计算时引擎对“强度”属性的解译。

项目由Litrix提供

新增特性:Live Link插件改良

Maya Live Link插件现已推出。它可以在Maya和UE4之间建立联系,以便用户在UE4编辑器中实时预览在Maya中进行的修改

启用插件后,您需要将与所使用的Maya版本相关的二进制文件复制到Maya插件文件夹,并通过Maya插件管理器启用。

在以下路径中的引擎安装文件夹中可找到Maya Live Link插件的预编译二进制文件:Engine\Extras\MayaLiveLink\LiveLinkMaya.zip。Zip文件中包含Windows版Maya 2016、2017和2018的二进制文件。如果需要其他版本的二进制文件,您也可以在Engine\Source\Programs\MayaLiveLinkPlugin文件夹中找到插件的源代码,用于编译二进制文件。

在MEL控制台中使用命令MayaLiveLinkU即可启用Maya Live Link的UI窗口。右上角的显示说明此Maya实例是否连接到了虚幻引擎客户端。虚幻引擎Live Link的下方则是当前流送中所有主体的列表(上图中只有一个主体在流送),在下方窗口中则有添加和移除流送主体的功能按钮。

将活动相机作为编辑器活动相机流送

现在,在Maya中控制活动相机也将同时操作编辑器的活动相机。我们重新制作了编辑器更新钩,流送将更为稳定,面部绑定和叶状骨骼将正确更新。

将虚拟主体添加到Live Link

利用虚拟主体能将进入Live Link的多个主体整合为一个主体,以供编辑器使用。虚拟主体在客户端中创建,其中包含多个真实主体的骨骼,并全部连接在同一个根骨骼上。

以下虚拟主体应用到了编辑器中的骨架网格体上。

我们在此新建了一个虚拟主体(使用添加>添加虚拟主体(Add > Add Virtual Subject)),并设置其从Maya Live Link源读取主体。设置后,虚拟主体包含了来自Maya的3个物品主体。

Live Link插件开发

Live Link的作用是为UE4之外第三方来源的任意类型动画数据(例如DDC工具和动态捕捉服务器)提供一个通用的流送和使用接口。它被可通过虚幻插件进行延展,使第三方软件无需进行和维护引擎修改即可开发新功能。

Live Link提供了两种整合方法:

  1. 编译一个将新源公开到Live Link的虚幻引擎插件。已有自身流送协议的开发者推荐使用此方法。
  2. 在第三方软件中整合一个消息总线(Message Bus)终端,使其成为内置消息总线源的数据传输器。我们在Maya插件中使用的就是此方法。

如需了解总体插件开发的概览,请查阅插件(Plugins)文档页面。

Live Link运动控制器支持

现在,Live Link可以结合运动控制器使用了。运动控制器的运动源属性可以被设置到Live Link中的一个主体上。依此进行设置后,运动控制器组件的位置将由主体的首次变换所控制。

运动控制器整合也能访问Live Link主体上的自定义参数。它们通过内置在Live Link主体中的曲线支持进行传递。

如要访问数值,则必须从运动控制器组件派生一个新蓝图并覆盖OnMotionControllerUpdated函数。在OnMotionControllerUpdated中,在运动控制器上调用GetParameterValue 有效。

下例为一个从Live Link中的强度参数派生一个光照组件强度的可行方法:

其他改良

  • 新增Live Link源定义自身自定义设置的功能——此功能由提供Live Link支持的合作伙伴(IKinema等)建议加入。
  • 现在,将骨架推送至Live Link客户端的Live Link源也可传递源GUID了——消息总线源将在发送骨架时将推送GUID。
  • 在Live Link重定向器API中新增了虚拟初始化函数和Update DeltaTime参数

新增特性:Sequencer改良

我们仍在对Sequencer的功能和工作流程进行持续改进,使其更强大、更高效。

拷贝/粘贴/复制Object轨迹

现在,您可以通过右键快捷菜单拷贝/粘贴/复制Object轨迹及其子轨迹了。您也可以将一个可生成项拷贝到相同的关卡序列或另一个序列,或将一个可拥有项从一个关卡序列复制到另一个;而且此object将绑定到其他关卡序列中相同的object上。您还可以从一个UMG动画拷贝到另一个。
 

关卡序列动态变换原点

现在,您能通过运行时的全局偏移使Sequence Transform轨迹控制的actor产生偏移了。这可以让您在不同的坐标空间中重复使用一个关卡序列。如要使用此功能,须在关卡序列的详细信息(Details)面板中启用覆盖实例数据(Override Instance Data),然后指定一个变换原点(Transform Origin)Actor。

变换原点(Transform Origin)分段指定了一个变换,序列中的所有绝对变换分段都将从此变换被添加(无视大小)。为达到最佳效果,将actor的初始变换在关卡序列中的0,0,0处设置关键帧,然后让您定义的变换原点Actor从世界场景中的初始位置开始驱动位置(如下所示)。

按下按键后(如上所示),立方体开始移动,而我们的Actor从变换原点Actor的位置开始继续沿一条路径前行。

Sequencer动画蓝图权重控制

现在,Sequencer权重混合可对动画蓝图生效了。您可对动画使用相同的插槽,并根据曲线控制权重。在属性(Properties)下为每个动画指定相同的插槽名进行混合。然后对所需的权重值设置关键帧,并在动画蓝图中使用Slot节点。动画蓝图将使用混合时提供的任意权重值。

Sequencer编辑器性能改良

  • 编译即时逻辑 - 现在,Sequencer能够根据需要从源数据完整或部分编译过期的求值模板。这将使在编辑器中使用Sequencer进行编译的效率更高。
  • 详细信息面板更新 - 现在,在Sequencer编辑器内进行拖动或播放时详细信息面板将延迟更新。

细微改良

  • 对“When Finished”的默认行为进行了新的.ini设置。
    • 关卡序列仍将默认为RestoreState。而UMG现在将被设为Keep State。
      [/Script/LevelSequence.LevelSequence]
      DefaultCompletionMode=RestoreState
  • 添加摄像机时固定创建一个切镜轨迹,以消除启动sequencer后摄像机无法进行控制所造成的疑惑。
  • 现在,自动设置关键帧或添加一个新关键帧时旋转将不再翻转。
  • 新增仅在树状图中显示所选节点的选项。此选项在关卡序列中处理大量actor时十分实用,能够限制视图的上下滚动。
  • 新增在帧间隔时将变换轨迹烘焙到关键帧的选项。
  • 新增从变换轨迹创建摄像机动画的选项。
  • 新增将(路径轨迹、切镜轨迹或附加轨迹)绑定到子序列中可生成项的功能。
  • 现在,您可以将分段上拖一排,而不是只能下拉了。

新增特性:地形渲染优化

地形细节级别(LOD)系统已经过修改。现在,它不再根据距离,而是根据屏幕大小决定组件的细节,与静态网格体LOD系统的工作原理相似。LOD分配将基于屏幕中的大小为远景三角形给出更一致的尺寸,从而达到前所未有的精细度。

   

(左图为旧方法;右图为新方法)

您可以前往视口>查看器>LOD查看地形LOD。

以下设置可根据屏幕大小控制出现LOD过渡的地方。此外,您现在还可以对材质曲面细分进行控制,使用启动动态阴影的定向光照时可提升性能。

新增特性:代理LOD系统(实验性)

全新的代理LOD系统是一款实验性插件,可为多个网格体生成带烘焙材质的低多边形LOD。新系统由HLOD使用,将替代Simplygon。

注意:当前只支持Windows版本。

在编辑器中的“项目设置(Project Settings)”对话框内找到“层级LOD网格体简化(Hierarchical LOD Mesh Simplification)”即可启动此工具。在层级LOD网格体简化插件中,您可以选择全新模块“ProxyLODMeshReduction”。在弹出编辑器重启的提示后,完成重启即可使插件替代第三方Simplygon工具进行静态网格体合并LOD。您可以用两种方式访问这个新插件:HLOD大纲窗口和“合并Actor”对话框。

     

源几何体:11个几何体部件、38360个三角形和27194个顶点 | 生成的几何体代理:1个几何体部件、8095个三角形和5663个顶点

新增特性:材质参数编辑和保存

现在,您能够将参数值保存到材质编辑器和材质实例编辑器内的新子实例或兄弟实例中了!

  • “保存到兄弟实例”能让您保存当前参数,并用相同的父材质覆盖到新的材质实例。
  • “保存到子实例”能让您保存当前参数,并用当前实例覆盖到新的材质实例作为父材质。

现在,“材质编辑器”加入了“参数默认值(Parameter Defaults)”面板。您可在此处访问在材质图表中为所有参数设置的默认值,并轻松修改所有参数的默认值。

新增特性:材质分层(实验性)

材质分层可以让您使用新材质图层和材质图层混合资源,将材质组合在一个堆栈中!这使用户能构建起正确的材质图表,无需手动构建节点分段。此功能与材质函数相似,但支持创建子实例。

材质分层是实验性功能,在项目设置(Project Settings)>渲染(Rendering)>实验性(Experimental)中将支持材质图层(Support Material Layers)设为true即可启用。

欲知更多详情,请查看论坛相关讨论帖。欢迎大家使用,并为我们提供宝贵反馈!

新增特性:“自动凸包”工具更新

现在,使用自动凸包工具(Auto Convex Tool)生成静态网格体的简单碰撞时可指定最大凸包,而非精准度。计算在静态网格体编辑器后台进行。自动凸包工具还将使用较新版本的V-HACD库,这可提供更为精确的结果。

新增特性:使用纯曲线动画改良面部动画共享

现在,您可以对曲线设置动画驱动姿势即可在多个角色之间共享面部动画,而无需借助任何骨骼变形。任何骨骼变形(即使带模网格体的参考姿势)均无法用于其他网格体。因此,在不同网格体之间共享曲线时需要将骨骼变形移除,从网格体自身的参考姿势开始着手。这样您才能在不同面部上共享面部曲线。

我们添加了删除所有骨骼轨迹、只保留动画曲线的功能。访问路径:动画(Animation) - 资源(Asset)菜单 - 移除所有骨骼轨迹(Remove All Bone Tracks)选项
 

如果您需要共享躯干动画,但使用面部驱动曲线,也可使用动画修改器(Animation Modifier)对特定关节进行单独移除。新增功能移除骨骼动画(Remove Bone Animation)将根据命名移除给定动画序列中的动画曲线(原动画曲线[命名]可能不会从骨架中被删除);新增功能移除所有骨骼动画(Remove All Bone Animation)则将从给定动画序列中移除所有动画骨骼追踪数据。



此外,您还可以在导入进程中关闭骨骼轨迹的导入(纯曲线动画)。

我们修复了姿势预览(Pose Preview),现在可以选择资源所包含的权重了。您可在动画轨迹命名(Animation Track Names)下的资源详情(Asset Details)面板中查看动画所包含的骨骼轨迹。

新增特性:布料更新

新增布料资源的全新“动画驱动(Anim Drive)”功能。模拟的运行时交互为“动画驱动乘数(Anim Drive Multipliers)”添加了一个新的遮罩目标,用于驱动弹簧朝动画设置的位置拉伸布料,使动画师能够控制过场或动画驱动的场景。

可使用“交互器(Interactor)”object(蓝图可在骨架网格体组件上访问此 object)在运行时进行驱动。运行时设置的数值与绘制的数值相乘组合,获得最终的弹簧和阻尼强度。

其他改良包括:

  • 布料模拟的重力超覆支持 - 在一个骨架网格体组件上使用交互器object——可指定任意重力超覆。
  • 为布料显示范围新增自动范围功能 - 还新增了在必要时可使用工具延展此范围的功能
  • 改良布料显示 - 可在布料绘制模式(Clothing Paint Mode)启动后启用。
  • 布料创建菜单现在默认使用骨架网格体物理资源

新增特性:动画蓝图改良

我们对动画蓝图系统进行了数项易用性改良:

  • 现在,您可以控制后期处理实例是否在来自蓝图和动画编辑器套件的骨架网格体组件上运行。
  • 现在,复制姿势(Copy Pose)节点同时支持复制曲线和骨骼变形了 - 在使用时,您如果需要复制曲线,则需要启用bCopyCurves(默认为false)。启用后,它将复制当前骨架中存在的曲线。如曲线列表已修改,则需要重新启动动画系统。
  • 新增在additive姿势上播放动画时的additive警告 - 当一个非additive动画连接到additive动画节点的additive引脚时(如Apply Additive),系统将在消息日志中输出包含动画和蓝图名的警告。
  • 新增骨架网格体组件上的原生动画实例选择 - 现在,您可以在骨架网格体组件上设置原生动画实例了。在旧版本中,骨架网格体组件上只能设置动画蓝图。

新增特性:动画工具改良

在动画编辑器中新增可锁定的命令列表

在骨架树过滤器或视口菜单中按住Shift键点击菜单选项可以将命令“锁定”在菜单外,以便您轻松选取常用的命令。

为所有动画编辑器视口新增了多达4个独立视口 - 所有与动画相关的编辑器现在均可在同一个场景中打开最多4个单独视口,且能对每个视口进行单独设置。

新增跟随和绕特定骨骼运行的功能

更多骨架网格体组件调试信息

你可以延展在骨架网格体编辑器中显示的视口文本。此外还新增了文本行,以显示当前的布料值。

新增在运行时修改骨架网格体分段可视性的能力

公开ShowMaterialSection函数,在运行时对蓝图隐藏/显示骨架网格体材质分段。新增ShowAllMaterialSections和IsMaterialSectionShown函数。从资源中移除内部“禁用” 和“高亮”标记:现在将固定使用每个组件的标记。

为BreakStruct节点新增“隐藏未连接引脚(Hide Unconnected Pins)”按键。

现在,BreakStruct节点拥有一个快速隐藏未连接引脚的按键

此外,动画工具改良还包括:

  • 修改骨架网格体属性时固定动态模糊 - 动画系统借助修订号拥有之前的骨骼变形,因此能够在重新创建RenderState时发送至渲染线程。帧数依然存在,因为布料系统仍在使用。组件tick时,修订号将发生变化。如不tick,它将保留相同的修订号(保留历史记录)。
  • 在动画编辑器中公开了序列录制设置
  • 新增对碰撞形态进行命名的功能 - 您可以在编辑物理资源时对单独的碰撞形态进行命名。
  • 改进了动画编辑器视口中的边界跟随 - 边界跟随不再存在滞后。
  • 新增在姿势资源中修改重定向源的功能 - 现在,姿势资源将保存原始源姿势,以便在重定向源发生变化时重新计算新姿势。重定向源用于烘焙姿势资源增量变换。因此,您如果在不同网格体上使用相同的资源,则需要确保拥有正确的重定向源。
  • 可配置网格体绘制顶点大小 - 新增网格体绘制的个人设置的功能;并增加预览顶点大小,以便用户进行配置,并将其用于不同尺寸的网格体。
  • 修改Persona中的动画预览提示文本。如动画尚未加载,则停止加载。
  • 在动画编辑器中必要之处添加“预览(Preview)”按钮 - 如相关,预览网格体、预览动画和参考姿势均可通过工具栏进行编辑。
  • 为高级预览场景(Advanced Preview Scene)设置面板新增搜索栏
  • 为HLOD大纲树状图中的HLOD关卡节点新增快捷菜单 - 这能让您从当前关卡视口选择创建一个新集群。
  • 新增在预览场景中开关后期处理的热键和命令
  • 新增在网格体绘制器中切换前景和背景的快捷方式 - 网格体绘制器启动状态下快捷方式默认绑定到“X”键。
  • 材质烘焙已脱离实验性阶段
  • 新增网格体绘制器的RGBA遮罩支持 - 这能让您在网格体绘制器中使用填充工具时将RGBA通道用作遮罩。
  • 新增过程网格体组件(ProceduralMeshComponent)的“GetSectionFromProceduralMesh&”效用函数
  • 新增同步组中跟随动画上的通知 - 新增标记,在同步组中的跟随动画上触发通知。
  • 删减生成全部资源时冗长的记录日志 - 每个资源只记录2行,而非4行。
  • 在弹簧动画节点(Spring AnimNode)上将阻尼(Damping)和刚性(Stiffness)公开为引脚 - 现在,弹簧动画节点可将弹簧阻尼和弹簧刚性公开为引脚。

新增特性:运动控制器组件可视化

虚幻引擎4.19版中的运动控制器拥有了一个全新的可视化类目,能让您快速(且简便)地将显示模型静态网格体添加到运动控制器。系统将默认尝试加载一个与驱动运动控制器的设备相匹配的静态网格体模型。

  • 现在,运动控制器组件加入了全新可视化域,提供以下选项:显示设备模型(Display Device Model)显示模型源(Display Model Source)自定义显示网格体(Custom Display Mesh)显示网格体材质覆盖(Display Mesh Material Overrides)
    • 自定义显示网格体(Custom Display Mesh)只有将在Display Model Source设为“自定义(Custom)”时才能使用。
    • 对于更为复杂的自定义模型,则需要手动附加自用的静态网格体模型。
    • 如目标XR系统未加载,您可以对“显示模型源(Display Model Source)”进行手动设置。
  • 为空时,“显示模型源(Display Model Source)”默认将尝试从备份XR系统加载模型。
    • 实现IXRSystemAssets接口来区分支持此功能的XR系统——目前只有Oculus和SteamVR支持此功能。

新增特性:Vive Pro支持

现在,所有目前支持SteamVR的UE4内容均兼容HTC新发布的Vive Pro了!虽然将现有UE4项目用于Vive Pro时不需要进行任何修改,但您仍需确认项目在Vive Pro上的运行性能并依此进行优化(因为Vive Pro会以更高的分辨率运行)。

新增特性:平台SDK升级

在每个更新版本中我们都将更新引擎,以支持平台合作伙伴的最新SDK版本。

 

SupportedPlatforms_MasterDK.jpg

  • Build farm进行编译的IDE版本
    • Visual Studio:Visual Studio 2015 Update 3
    • Xcode:Xcode 9.2
  • Android:
    • NDK 12b (发布前,Android 1r6u1安装程序的新CodeWorks将替代Android 1R5的CodeWorks,仍在NDK 12b上)
  • HTML5:emscripten工具链到1.37.19
  • Linux:v11_clang-5.0.0-centos7
  • Steam:1.39
  • Oculus Runtime:1.17
  • SteamVR:1.39
  • Switch:3.7.0 with NEX:4.3.1(可选)、4.5.0 with NEX 4.3.1(可选)、固件版本3.0.1-1.0
  • PS4:
    • 5.008.071
    • 固件版本4.730.001
    • 支持IDE:Visual Studio 2015、Visual Studio 2013
  • Xbox One(XB1、XB1-S、XB1-X):
    • XDK:2017年6月QFE9
    • 固件版本:2017年10月Preview 3(16291.1000.170913-1900版本)
    • 支持IDE:Visual Studio 2017、Visual Studio 2015
  • macOS:SDK 10.13
  • iOS:SDK 11
  • tvOS:SDK 11

新增特性:输入的低延迟帧同步(Xbox One和PS4)

输入的低延迟帧同步(Low-latency frame syncing)模式可修改游戏、渲染和RHI线程之间的线程同步方式,将极大降低G消耗并控制输入延迟。您可使用r.GTSyncType(游戏线程同步类型)控制台变量来控制低延迟帧同步的效果。此控制台变量驱动全新帧同步机制的工作方式,并允许以下数值:

  • 0 - 游戏线程与渲染线程同步(默认的旧版本行为)
  • 1 - 游戏线程与RHI线程同步(等同于并行渲染前的UE4)
  • 2 - 游戏线程与交换链同步,显示以毫秒为单位的+/-偏差(仅在支持平台上可用,且仅在同步启用后有效)

如需了解更多信息,请查阅输入的低延迟帧同步(Low Latency Frame Syncing)页面。

新增特性:加密/签名密钥生成器

现在,您可以通过单独的统一设置面板完全从编辑器配置.pak文件签名和加密。您可以在“项目(Project)”>“项目设置(Project Settings)”>“加密(Crypto)”面板中对这些功能进行控制。

此面板可以生成或清除加密/签名密钥,并启用/禁用多种类型的签名和加密。您可以从此菜单中启用或禁用以下功能:

  • 加密Pak .ini文件(Encrypt Pak .ini Files) - 对项目.pak文件中所有的.ini文件进行加密。运行时消耗极低,且能防止产品配置数据被轻易挖掘或篡改。
  • 加密Pak索引(Encrypt Pak Index) - 以最低的运行消耗对pak文件索引进行加密,可防止UnrealPak打开、查看和解包产品的pak文件。
  • 加密UAsset文件(Encrypt UAsset Files) - 对pak文件中的uasset文件进行加密。uasset文件包含其中资源的标头信息,但不包含实际的资源数据本身。对此数据进行加密可使数据的安全性提升,但会少量提高运行消耗、增加数据熵,并对补丁大小产生不良影响。
  • 加密资源(Encrypt Assets)——完整加密pak文件中的所有资源。注意:此设置将对运行时文件I/O性能产生重大影响,并增加最终打包数据中的熵数量,使发布补丁系统的工作效率降低。

新增特性:显示蓝图调试调用堆栈

显示当前已添加到开发者工具(Developer Tools)菜单的蓝图调用堆栈。双击调用堆栈中的条目将聚焦蓝图编辑器中相应的节点。

新增特性:对蓝图调试的单步改良

引擎的蓝图调试器现支持停留在蓝图断点时进行进入(Step Into)(F11)越过(Step Over)(F10)跳出(Step Out)(Alt+Shift+F11)操作,使调试会话更简易快捷。

此外,我们还新增了直接在宏和重叠图表节点上进行中断,以及进入、越过和跳出的功能:

新增特性:改良磁盘空间优化工具

新版本中新增和改良了数个工具,可用于分析打包游戏的磁盘和下载容量。“资源审核(Asset Audit)”窗口新增了“添加文件块(Add Chunks)”选项,可显示所有打包的Chunk/Pak文件。您还可以在此视图中使用“参考查看器(Reference Viewer)”和“尺寸图(Size Map)”,分析资源被加入特定文件块的原因。

“尺寸图”工具已经过修改,将默认显示磁盘大小,这比估算的内存大小更为准确。如在“资源审核(Asset Audit)”窗口中选择了平台,则会显示此平台实际生成的数据包大小。“尺寸图(Size Map)”的用户界面也经过了改良,支持右键点击操作,性能也更佳。

新鲜出炉:音频改良

更新至Steam Audio Beta 10(仅限全新音频引擎)

随着Steam Audio的更新(Beta 10版本),改良包括:

  • 新增空间化和遮蔽的Android支持
  • 新增编辑器模式,便于访问Steam Audio功能
  • 新增按键,可给所有静态网格体Actor添加或移除声子几何体组件(Phonon Geometry Component)
  • 新增按键,可将场景导出为.obj文件进行调试
  • 移除声子场景(Phonon Scene)actor,以便导出到文件
  • 对将数据写入磁盘的生成和烘焙进行探测,避免地图文件的加载和保存过慢
  • 多项信息显示改良
  • 多项错误修复

Oculus Audio更新(仅限全新音频引擎)

Oculus Audio插件已更新,将支持Android。

除提供HRTF空间化外,新版本还支持带体积参数的Oculus Audio空间建模混响,以及高保真环绕源播放。

新增Resonance Audio插件(仅限全新音频引擎)

在虚幻引擎4.19 版中,Resonance Audio插件已成为引擎插件的一部分。Resonance Audio插件支持Windows、iOS、Android、Linux和Mac上的双声道空间化、混响、声音指向性和高保真环绕播放。

一阶高保真环绕文件支持(通过插件支持播放)

一阶高保真环绕文件现在可导入虚幻引擎项目,并借助空间化(Spatialization)插件进行播放。一阶高保真环绕是一种球形环绕文件格式,提供声场向前、向右和向上的矢量,以便设计者创建包含垂直声音朝向的环绕声效体验。这在VR项目中十分实用,用户可以通过转动头部体验垂直声场中的自然变化;也可用于其他用户朝向能发生垂直变化的交互体验。在文件名中加入FuMa或AmbiX(两项一阶高保真环绕通道配置)便能导入4通道一阶高保真环绕文件。Oculus Audio和Google Resonance皆拥有高保真环绕播放功能。

改良UE4的原生VOIP实现(仅限全新音频引擎)

我们对原生VOIP实现进行了改良,能提供更佳的一致性,其中包括Windows上改良的寂静探测。此外,新版本还支持将VOIP源纳入场景,以便执行以下操作:

  • 空间化
  • 距离衰减
  • 混响
  • 自定义源效果

使用UVoipTalker场景组件进行全面控制。

全新麦克风采集组件 (仅限全新音频引擎)(仅限Windows)

新版本中实现了麦克风采集组件(Microphone Capture Component),可执行以下操作:

  • 将音频直接填入游戏供混音器(Audio Mixer)使用
  • 使用实时振幅数据来驱动游戏中的参数。
  • 用源效果或Submix效果处理音频。

当前这只用于本地客户端麦克风采集,未连接到VoIP系统

虽然当前不支持录制麦克风直接输出到资源,但第三方插件开发者有机会通过麦克风输入利用数据。

将实时音频振幅采集为蓝图数据(仅限全新音频引擎)

新增获取振幅包络数据的功能,通过蓝图委托直接跟随音频组件和合成组件。

前后源效果总线发送类型 (仅限全新音频引擎)

新增前后源效果总线发送类型,使设计者能在源效果和衰减处理前后将源音频发送到源总线。

新增多通道文件导入支持

新版本支持将交叉存取的多通道wav文件直接导入浏览器(也保留了使用多个单视场文件的老方法)。

合成上的采样率控制

新增合成器在初始化时修改其请求采样率,使合成源指定其自身的采样率。

改良跨平台音频插件(仅限全新音频引擎)

新版本允许多个音频插件源设置,用户可针对不同插件进行不同的设置。这对跨平台产品的设计者而言非常实用,可将不同插件用于不同平台。

添加一个平移源效果

该源效果使设计者能够将蓝图的立体平移值作为源效果进行驱动。这使得您可以修改单视场/立体3D/2D源的平移。

新鲜出炉:物理改良

新版本对物理系统进行了数项改良和优化,使物理对象的模拟更加简易高效!

  • 为物理资源编辑器新增“仅显示选中约束(Show Only Selected Constraints)”功能
  • 新增通过Ctrl+T快捷键切换形体和约束选择的功能
  • 新增“设置使用CCD(Set Use CCD)”函数,在运行时修改“持续碰撞检测(Continuous Collision Detection)”选项
  • 保存BodyInstance运行时内存 - 从非编辑器版本移除了FBodyInstance::ResponseToChannels_DEPRECATED属性来节约内存。
  • 为弹簧臂组件(SpringArmComponent)新增函数,获取碰撞测试的相关状态
  • 新增分析场景查询卡顿的功能 - 使用p.SQHitchDetection控制台变量
  • 公开部分物理资源功能,使其在C++中拥有更好的延展性
  • 改良初始重叠中的HitResult信息 - ImpactPoint将包含来自最深重叠点上PhysX的信息。
  • 引擎将脱离PhysX进行纯净编译 - 可将WITH_PHYSX指令设为0,进行无误编译。

新增特性:iOS上的自动代码签名

使用Xcode时的自动代码签名(Automatic Code Signing)已加入虚幻引擎4.19版。ACS加上Team ID后即可创建包,并进行iOS项目签名。Mac上未预安装移动条款同样能够使用,但Mac必须含有认证。开发团队仍然需要将iOS设备添加到Apple账户才能部署app,但使用此功能时无需再将移动条款下载并安装到Mac上。

新增特性:4.19版Android改良

  • 添加代理网络支持。
  • 新增弹出框,告知用户运行中的移动项目是否在使用不支持的纹理格式,并提示所支持的纹理格式
  • 新增编译和打包项目前的NDK和SDK平台验证,更早告知编译是否成功。

新增特性:内容浏览器的文件夹收藏

现在,您可以将内容浏览器中的任意文件夹标记为“收藏”,以便于访问!文件夹被标为收藏后,它将存入文件夹树结构上方的“收藏夹”部分。点击右键即可在此处添加/移除文件夹。

可使用“显示收藏夹”的“查看”选项来启用/禁用内容浏览器的“收藏夹”部分。此功能默认启用。

  

如需查看版本说明的完整清单,敬请访问论坛