Unreal Engine 4.18 Released!
10.23.2017

虚幻引擎 4.18 发布!

作者 Jeff Wilson

从台式机到移动平台的虚拟现实或增强现实,虚幻引擎 4.18 为您提供了用于交付用户所需内容类型的各种工具。扩充并改进了平台支持后,您可以交付用户在任何平台上使用的内容。通过我们不懈追求更高效更精简的开发流程的努力,持续地更新和改进所有工具,让您能够以前所未有的速度交付内容

通过“体积光照贴图”和天空光的多次间接照明反射之类的新功能,您的世界将会呈现一种超级真实和可信的感觉。通过支持实时合成的新媒体框架功能,甚至可以将真实世界融入到您的世界当中。或者,您也可以在真实世界的基础上构建自己的世界,打造一种使用 Apple 的 ARKit 和 Google 的 ARCore 所体验到的极致沉浸感。

潜在受众正在不断地演化,从各种不同的新平台获取内容。虚幻引擎 4.18 以前所未有的高保真度和性能在各大主流平台上呈现您的内容。我们提供了可在最新的 iOS 设备上使用的向前渲染器,让高质量移动和 AR 内容能够以惊人的速度运行。WebAssembly 现在是 HTML 5 的默认技术,让开发者可以为 Web 创建能够快速加载、流畅运行的复杂游戏。

虚幻引擎 4.18 使您能够集中精力处理最重要的事情。通过新增的全局在蓝图中查找搜索功能,再也不用浪费时间在多个蓝图中进行搜索。我们还添加了改进的服装工具、全新的物理资产编辑器和高级材质编辑器预览支持,以及许多其他生活品质一般的改进,可以明显加快开发流程。

除了 Epic 交付的数百项更新之外,本版本还包括由 GitHub 上非常了不起的虚幻引擎开发人员社区提交的 98 项改进!感谢以下每一位贡献者对虚幻引擎 4.18 的贡献:

Akihiro Kayama (kayama-shift)、Alan Edwardes (alanedwardes)、Alec Kosik (akosik)、Andrey Yamashev (ayamashev)、Artem (umerov1999)、aziot、Cameron Angus (kamrann)、Carsten Neumann (cneumann)、Cengiz Terzibas (yaakuro)、Chris Conway (Koderz)、Christopher Reed (christopherreed)、Cody C. (Mumbles4)、Courtland Idstrom (Frugality)、DaveC79、DavidNSilva、getnamo、Grant Peters (ggpeters)、Guillaume Buisson (monsieurgustav)、Harry Kim (shuaiharry)、Ian Huff (IanMatthewHuff)、IHappyDayI、Ilya (ill)、Isabela Schulze (Ereski)、Jason Calvert (jasoncalvert)、Jesse Yeh (jesseyeh)、John McBroom (jimbomcb)、Jørgen P. Tjernø (jorgenpt)、Josef Gluyas (Josef-CL)、Kalle Hämäläinen (kallehamalainen)、karanseqwb、Konstantin Nosov (gildor2)、Kostas Nakos (jubanka)、lwdingNT、Masanori Shinkawa、Mathias Hübscher (user37337)、Matt Hoffman (LordNed)、Maurice Laveaux (mlaveaux)、Michael Allar (Allar)、Michael Kösel (TheCodez)、Mikayla Hutchinson (mhutch)、minichris、Nick Pearson (Nick-Pearson)、Nick Verenik (nverenik)、Patrice Vignola (PatriceVignola)、projectgheist、Rama (EverNewJoy)、Roman Chehowski (RChehowski)、Roman Maksymyschyn (miracle7)、Sam Hocevar (samhocevar)、Scott Freeman (gsfreema)、Sébastien Rombauts (SRombauts)、Sertaç Ogan (SertacOgan)、steelixb、stfx、Triplelexx、Vivid Games - Engine Team (enginevividgames)、Vladimir Ivanov (ArCorvus)、XueBing (DarkSlot)、Yujiang Wang (Luoshuang)、yhase7、YuchenMei 和 Zeblote

主要特性

新增特性:体积光照贴图

新的体积光照贴图以低成本预计算照明在可移动对象上呈现高质量照明效果!角色、粒子系统、实例化植物叶子和其他动态对象在环境中显得比以往更加真实。

图片备用文本图片备用文本

体积光照贴图用 4x4x4 砖块大小的照明样本覆盖整个光照系统重要体积,在空间中的所有点存储预计算照明。砖块以更高的密度放置在间接照明变化最多的静态几何结构附近。该数据结构能够有效地将间接照明插入到 GPU 上的任何空间点。体积光照贴图插入到整个组件的每一个像素,而不是就插入一次,并且细节也比之前的间接照明缓存方法更加可靠,漏光现象减少。

有关在项目中使用体积光照贴图的更多详细信息,请参阅体积光照贴图文档

体积雾上的预计算照明

体积雾现在可以使用体积光照贴图,将预计算照明插入到自己在空间中的位置,让将间接照明存储在光照贴图中的静止照明对雾产生影响。静态照明和自发光光线对雾的影响没有任何开销,因为它们全部都合并到体积光照贴图中了。

图片备用文本

天空光现在也可以正确地投射阴影,防止室内区域变成大雾效果。

图片备用文本
1 - 雾上的天空光正确地投射阴影,2 - 雾上的均匀天空光有漏光

性能

  • 第三人称角色上的体积光照贴图在 PlayStation 4 耗用 0.02 毫秒的 GPU 时间。所有间接照明缓存渲染线程成本均已剔除。
  • 《Paragon》Monolith 地图的内存用量从使用间接照明缓存的 5 MB 增长到使用体积光照贴图并使用默认 DetailCellSize 设置的 30 MB。内存用量可以在“统计内存”下看到。

详细对比

体积光照贴图 预计算照明体积/间接照明缓存
GPU 上的有效插入 CPU 上的高成本插入
逐个像素插入 逐个对象插入,即使在实例化组件上也是如此
应用到体积雾 不能影响体积雾
以高密度状态放置在所有静态表面周围 以高密度状态仅放置在静态表面上,低密度样本频繁漏光
较宽体素会延伸,覆盖到重要体积外面的区域 重要体积外部为黑暗间接照明
目前不支持关卡流式播放 支持关卡流式播放

新增特性:改进了静态天空光方向性

天空光过去是用三阶球谐函数在光照系统中表现出来的,这样不会捕获日出或日落中存在的细节。我们现在使用过滤后的立方体贴图,默认的分辨率更高。光照系统根据最终聚集光线的大小选择立方体贴图的适当 MIP,避免失真。在遮挡较多的场景中,天空光立方体贴图的亮度和色差非常明显,最能看出差异。

图片备用文本

1 - 新增过滤后立方体贴图静态天空光,2 - 原始静态天空光

开口越小,天空光线的方向性越强。如果开够足够小,甚至会重现一种针孔摄像机的效果。

 

图片备用文本

图片备用文本

天空光原始立方体贴图

产生的天空光线

新增特性:天空光多次反射间接照明

现在,通过“全局设置 -> 光照系统”中新增的“天空光反射次数”设置,支持静态和静止天空光产生多次间接照明反射。感谢论坛用户 Luoshuang 对首次实现此功能做出的贡献。

图片备用文本

1 - 多次天空光反射,2 - 单次天空光反射

在大多数情况下,材质必须具有高漫射值才能明显地显现出多次天空光反射。例如,漫射值为 0.18(18% 灰),第二次天空光反射只会贡献光线辐射能量的 18^3 = 0.006,这其实是非常少的。如果漫射值为 5,第二次天空光反射将贡献光线辐射能量的 0.125,就会比较明显。

此外,我们还从自发光网格获得多次反射:

图片备用文本

光照系统使用辐射度解算器来计算天空光和自发光网格的多次反射。每一次反射都会增加不可分配的构建时间,所以请务必谨慎使用。

新增特性:Apple ARKit iOS 11 支持

根据我们与合作伙伴的协作,随着 Apple iPhone 8 和 iPhone X 的发布,虚幻引擎 4.18 现在包含对 iOS11 Apple ARKit 的生产就绪支持。

图片备用文本

图片备用文本

我们利用现有的框架组件简化了工作流程,添加了对穿透相机的稳健处理,通过改进性能和预测提高了保真度。下载更新的 ARSample 项目以查看 4.18 中的更改。

注:自虚幻引擎 4.17 中推出对 ARKit 的试验性支持以来进行了大量更改。用 4.17 创建的 ARKit 项目将需要更新才能在 4.18 中使用。

入门

现在入门超级简单。只需要:

  1. 为项目启用相应的 ARKit 插件即可。
  2. 检查“项目设置”中的 bStartInAR 属性。
  3. 确保具有一个带 CameraComponent 的 Pawn。

已知 ARKit 问题

  • 暂时没有全方位支持设备旋转。目前,应选择“右横向”作为项目唯一支持的方向。
  • 唯一公开的用于点击测试的函数是 HitTestAtScreenPosition_TrackingSpace。该函数返回 CameraComponent 父空间中的结果。在默认设置中,这是该 Pawn 的空间。要转换到全局空间,目前需要用这个结果乘以父级(例如 Pawn)的全局转换。
  • 函数 HitTestAtScreenPosition_TrackingSpace 会忽略参数 Types,它始终针对所有可用的表面进行点击测试,并返回可以通过选中 FAppleARKitHitTestResult 结构的 Types 字段进行手动过滤的结果。
  • FAppleARKitHitTestResult 不会填充 Anchor 属性;该属性始终为 nullptr。
  • 全局比例目前假设为默认值,不能更改。

新增特性:Google ARCore 开发者预览支持

虚幻引擎 4.18 包含对 Google ARCore 开发者预览的正式支持,在引擎中利用常见的增强现实功能,包括对穿透相机的改进处理。

新增特性:布料工具

我们添加了一套完全改造的工具集,用于在骨架网格编辑器中创建和配置布料!

现在有一个“布料”窗格,用于编辑一套扩充的布料特定属性,让用户能够更多地控制布料约束、自碰撞顶点剔除和惯性比例调整。增强的绘图工具支持直接在网格上根据顶点布料参数进行绘图。新的绘图工具包括:笔刷、渐变、平滑、填充。可以关闭绘图参数来帮助迭代,而不必重写。

布料工具已经集成到物理资产中,便于创作碰撞。新增的 LOD 管道用于在布料数据对象中创建和更换模拟网格,包含一个参数映射系统,用于将绘图参数映射到新的 LOD 或替换几何结构,从而根据较高级细节 LOD 参数估算较低级细节 LOD 参数!而且通过右键单击网格部分进行转换,在骨架网格编辑器中创建布料数据也更加简单。

这是对所有重点介绍的较小错误修复和改进的补充功能,该工具仍在试验/抢先体验阶段。

注:对于倾向于使用 DCC 管道的用户而言,仍可以使用 APEX 文件导入

新增特性:媒体框架改进

4.18 中的媒体框架进行了大幅更新和扩展,支持即将推出的高级用例,例如实时视频合成、时间同步、简化工作流、捕获硬件和基于 IP 的视频支持、在线流媒体播放、与虚幻编辑器集成以及改进了稳定性和性能!

媒体框架 API 进行了简化,缩短了编译时间,并更新为使用 C++11 中的现代功能。此外,高级媒体播放器逻辑也进行了重构,从推送式范式改为了拉取式方法,成为了一种可重用的、与引擎无关的类别,能够更好地区分媒体播放器界面中的重点。

延迟和性能方面也有所改进,采用了基于时间码的样本处理管道,针对时间敏感型样本(例如音频、镜头跟踪和面部跟踪)使用高频计时,任何对象都可以使用多阶段计时,从而提高帧利用率,实现可预测的计时。

音频播放现在集成了新的混音器 API,使用新的媒体音效组件(取代了媒体声波),该组件是基于可以连接到关卡 Actor 并在 UMG 小部件中使用的合成组件构建的。媒体采样速率转换器(原来仅在 16 位 44.1kHz 上受支持)现在支持 int8、int16、int32、浮点型、双精度输入样本以及最多 8 个音频输入通道和 1 到 2 个输出通道(环绕立体声计划在 4.19 中推出)的任何采样速率(包括可变速率)。通过 Actor 上的媒体音效组件,还支持空间音效。

在视频端,媒体框架现在使用外部纹理取样器 API,支持无需内存拷贝的视频帧渲染。目前仅针对安卓平台实现了此功能,但我们计划扩展到其他平台上。我们将有问题的三重缓冲机制更换为取样队列,改善了对外来视频和像素格式以及有问题编码器的支持。

媒体播放器编辑器中更新了新的轨道格式选择器菜单、音频/视频捕获设备选择器、缓存状态可视化(面向支持该功能的播放器插件)、播放列表控件和保存播放列表的功能。此外,拉动时间轴现在响应速度更快,信息覆盖也有所改善。还有一项针对文本覆盖可视化和 360 视频视口控件的试验性支持。针对媒体源资产的基于平台的媒体播放器覆盖现在也可以使用。

现在增加了一些蓝图功能,用于查询媒体播放器轨道和轨道格式、枚举音频、视频和网络摄像头捕获设备以及向媒体播放列表添加文件和 URL。

所有媒体播放器插件均已更新为支持虚幻引擎 4.18 媒体框架中提供的所有令人激动的新功能。

注:此次更新的其他一些方面,例如 Sequencer 集成、立体声和 360 度视频支持以及硬件加速 4K 播放等仍在积极开发当中。

新增特性:Sequencer 改进

我们对 Sequencer 进行了一些“生活品质”一般的改进,包括:

  • 改善了 FBX 导入,现在能够导入静态/默认转换,添加过场动画镜头(如果地图中不存在对应的镜头)和强制前 x 轴选项
  • 更高效的轨道、关键帧和路径轨迹绘制。重叠键现在会带有红色边框。
  • 编辑工具,包括适合音频、骨架动画和较短轨道的滑动编辑。
  • 增加了拖放支持 - 现在可以拖到较短轨道、子场景镜头切换轨道和序列记录器上。

  • 从主序列录制电影时镜头边界进行预热。
  • 添加了拖动时间轴时在编辑器中重新运行构造脚本的能力。
  • 电影摄影机可以用卷轴观看

序列记录器改进,例如用于动画录制键的插值和切线设置以及拖放支持。

新增特性:改进的物理资产编辑器

物理资产编辑器(原名 PhAT)进行了全面修改,现在大幅改进了易用性,扩展了功能!该 UI 采用了全新的外观,升级了骨架树视图,能够更好地过滤和显示所有场景元素,还提供了一个新的图形视图,可以使用节点以可视化方式设置形体之间的约束。甚至可以设置约束循环 - 这在之前是不可能实现的。

图片备用文本

UI 元素进行了整理。许多项目已经移到或更改为更合理的位置。例如,“显示”菜单现在允许访问与动画有关的设置,就像在动画编辑器中一样。现在可以随时选择、暂停和前后拉动动画(之前只能在开始模拟之后才可以进行这些操作)。模拟也可以在制作动画期间随时开始和中断,操作方式类似于关卡编辑器,使用一个很明显的“模拟”按钮和下面的选项即可。

其他更新和改进:

  • 时间延缓配合动画和物理一起使用,可以在视口菜单中快速设置,就像在动画编辑器中一样。
  • 录制现在可以通过传输控件进行控制,就像在其他动画编辑器中一样。
  • 物理动画和约束概要的 UI 也进行了改动。现在便于选择、分配和管理约束和物理轮廓。
  • 约束和形体模式不再可用。我们现在将约束和形体一起显示。可以在树视图和视口中启用/禁用和过滤各自的渲染。
  • 新形体创建已经移到了新的选项卡“工具”中,而不是之前使用的模态对话框。这改进了新资产的迭代时间,每次减少 3 次单击。创建新物理资产时重复使用同一个小部件,这与以前一样。
  • 物理资产现在可以直接从内容浏览器创建。之前只能从骨骼网格资产的隐藏式上下文菜单选项进行创建。
  • 可以对形体/约束执行的操作现在位于所有上下文菜单中,而不仅限于之前要求的键盘快捷键。

新增特性:面向物理资产形体的多顶点生成

现在可以针对每个骨骼使用多顶点物理外壳自动生成物理形体。这样使用多顶点物理外壳就能够形成大致的非凸面几何结构。

图片备用文本

新增特性:RigidBody 动画节点改进

RigidBody 节点现在支持根骨骼模拟空间选项。如果连接的骨架网格是从玩家关节囊逆向旋转过来的,此改进十分有用。我们还在物理资产编辑器中提供了惯性比例调整和约束显性,极大地提高了稳定性和抖动。

新增特性:混合空间编辑器易用性改进

现在可以拖动预览引脚(绿色)横跨整个网格,而不必按下 Shift 键让引脚跟着光标移动。在实际混合空间网格上添加了状态敏感提示,提供了对特性和功能的上下文说明。

新增特性:全局在蓝图中查找

现在可以无需打开蓝图编辑器窗口,直接执行“在所有蓝图中查找”搜索。现在最多可以保持同时打开和/或在另一个窗口中停靠四个全局“在蓝图中查找”选项卡。主“窗口”菜单中现在提供该功能。


在蓝图编辑器菜单中,选择“编辑 -> 在蓝图中查找”(或者在焦点位于蓝图编辑器窗口的情况下,按 CTRL-SHIFT-F 键)也会打开新的全局“在蓝图中查找”选项卡(或切换到已经打开并解锁的第一个全局选项卡)。即使在蓝图编辑器窗口关闭后,如果在蓝图编辑器窗口外部的某个位置已经打开或停靠该选项卡,该选项卡仍会保持打开。

 

全局“在蓝图中查找”选项卡包含一个“锁定”按钮,这样可以将当前结果集锁定到当前选项卡。如果当前已经打开的选项卡已被锁定,那么从蓝图编辑器调用“编辑 -> 在蓝图中查找”将打开一个新的全局“在蓝图中查找”选项卡。

在蓝图编辑器菜单中选择“编辑 -> 查找”(或按 CTRL-F)仍会打开局部“查找结果”选项卡,用于仅在当前蓝图中执行搜索。单击“在所有蓝图中查找”按钮将允许您对全局“在蓝图中查找”选项卡中的所有蓝图资产执行相同搜索。

如有必要,可以取消选中“编辑器首选项 -> 蓝图编辑器 -> 工作流”中名为“将在蓝图中查找保持在全局选项卡中”的选项来关闭该新行为。

新增特性:改进了跨关卡 Actor 参照

现在可以使用软对象参照(原名为资产标识/AssetPtrs)更好地支持跨关卡 Actor 参照。如果要创建指向某个 Actor 的软对象参照属性,它们现在具有改进的 UI,显示它们是已经卸载还是损坏,以及所指向的完整 Actor 标识:

图片备用文本

如果使用“移动到当前关卡”选项重命名或移动了参照的 Actor,可以正确修复此类跨关卡参照。它将尝试检出并重新保存执行该特定 Actor 的任何其他关卡/序列。还会在您删除以此方式参照的 Actor 之前发出提醒。在启用关卡流式播放的“在编辑器中播放”中,这些功能也有效。新创建的 Sequencer Actor 参照现在是软对象参照,但较旧的序列必须先使用“重新绑定可占据参照”进行修复,然后重新保存。

注:作为此次更新的一部分,原生类型 FStringAssetReference 和 TAssetPtr 重命名为了 FSoftObjectPath 和 TSoftObjectPtr。

新增特性:编辑器内的本地化预览

我们增加了“在编辑器中播放”(PIE) 运行期间,在 UMG 编辑器预览游戏本地化的功能,使您能够以不同的语言预览小部件!

  • 此功能使用“预览游戏文化”设置(“编辑器首选项 -> 地区和语言”)进行配置,“在编辑器中播放”(PIE) 运行时会自动激活。预览语言还会传递到通过编辑器启动的任何独立游戏。
  • 预览运行期间,所有可编辑文本字段都会被锁定(只读),防止意外地使用翻译数据覆盖源数据。您还可以使用该新增的锁定功能来防止项目中发生任何语言更改,方法是在 DefaultGame.ini 或 DefaultEngine.ini 配置文件的“Internationalization”节下,将“LockLocalization”设置为“True”。


新增特性:数组重新排序

现在可以通过拖放元素,在数组中重新排列元素顺序!默认情况下,所有通过蓝图和 C++ 建立起来的数组都可以重新排序。如果不想使用默认行为并用 C++ 创建固定顺序的数组,请使用 EditFixedOrder 元数据。

新增特性:高级材质预览视口

材质编辑器和材质实例编辑器现在具有高级预览场景,用于在视口中预览材质。这让您能够更改一些视图设置,例如场景照明和环境立方体贴图,以及围绕着预览网格在场景中旋转环境。

您可以在“窗口 > 预览场景设置”下更改预览设置。

图片备用文本图片备用文本

新增特性:平台 SDK 升级

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

图片备用文本

  • Build farm 编译所需的 IDE 版本
    • Visual Studio:Visual Studio 2015 更新 3
    • Xcode:XCode 9.0
  • 安卓:
    • NDK 12b
    • 安装程序 1r6u1
  • HTML5:emscripten toolchain to 1.37.19
  • Linux:v10_clang-5.0.0-centos7
  • Steam:1.39
  • Oculus Runtime:1.17
  • SteamVR:1.39
  • Switch:1.7.0,3.5.1 + NEX 4.2.0;固件版本 3.0.1-1.0
  • PS4:
    • 4.508.111
    • 固件版本 4.730.001
    • 支持的 IDE:Visual Studio 2015 和 isual Studio 2013
  • Xbox One:
    • XDK:2017 年 6 月 QFE3,面向所有 Xbox 游戏机(XB、XB1-S、XB1-X)
    • 固件版本:2017 年 10 月预览 3 (versuib 16291.1000.170913-1900)
    • 支持的 IDE:Visual Studio 2015
  • macOS:添加了对 macOS 10.13 High Sierra 的支持,作为完全受支持的平台!
  • iOS:SDK 11
  • tvOS:SDK 11


新增特性:Windows、Mac 和 Linux 支持的 Visual Studio Code

现在可以使用 Visual Studio Code 在所有 UE4 宿主平台上编写代码。要使用该软件,从编辑器首选项对话框选择“Visual Studio Code”作为首选 IDE,或者在命令行上生成项目文件时添加 -vscode 参数。所有平台都必须已经安装 .NET Core 2.0 运行时,可以从 Microsoft .NET Core 网站获取。

要使用 Visual Studio Code 构建和调试所有项目类型,需要一些额外扩展。在所有平台上,确保安装 Microsoft C/C++ 扩展和 C# 扩展。在 Linux 和 Mac 上,需要“Mono Debug”扩展来调试 C# 项目,需要“LLDB Debugger”扩展来调试 C++ 项目。此外,为了调试 C# 项目,还必须安装 Mono 运行时:

  • 在 OS X 上:brew install mono
  • 在 Linux 上:sudo apt-get install mono-complete

图片备用文本

新增特性:简化了 iOS 认证和登录

在使用远程工具链从您的 PC 在远程 Mac 上构建 iOS 时,从 PC 上的“项目设置”进行认证和供应设置。这意味着无需再使用“钥匙串访问”在远程 Mac 上安装私有密钥或证书。

新增特性:iOS 上的桌面级向前渲染器(试验性功能)

虚幻引擎 4.18 包含 WWDC 2017 上的 Wingnut AR 演示中使用的桌面级向前渲染器!此功能在装有 A9 或更高级别处理器,运行 iOS 10.3 或更新版本系统的 iOS 设备上受支持,强烈推荐使用运行 iOS 11 并装有 A10X 或更高级别处理器的 iOS 设备。

图片备用文本

该渲染技术为最新的 iOS 设备带来了基于物理的明暗、反射、照明和阴影支持。与现有移动渲染器相比,这些功能对硬件要求更高,仍在试验阶段,所以某些功能并不能在所有设备和 OS 修订版上正常运行。以下是已知不能正常工作的功能:GPU 皮肤缓存、GPU 变形目标、大气雾和多样本抗锯齿。

新增特性:安卓默认启用的 Gradle

Gradle 现在是打包安卓 APK 的默认设置。Ant 仍然可用,如有必要,可以禁用“启用 Gradle”安卓项目设置,但建议过渡到 Gradle,因为已在考虑弃用 Ant。

注:如果之前在接受安卓 SDK 许可协议时没有选中“启用 Gradle”,需要单击安卓项目设置中的“接受 SDK 许可证”按钮来启用此功能。如果尝试在没有接受该许可证的情况下打包或启动,将会显示错误。

新增特性:安卓摄像头插件

虚幻引擎现在有一个可选插件,用于公开对安卓设备前后摄像头的访问权。启用该插件会添加一个新的安卓摄像头插件项目设置面板,用于选择安卓清单要求。

图片备用文本

新增特性:HTML5 优化浏览器 WebAssembly 现在设置为默认值

现在在默认情况下,会为 HTML5 项目启用 WebAssembly。许多主流浏览器制造商支持 WebAssembly 标准后,您会发现在发布到网上时,资产大小、浏览器加载时间和运行时性能出现大幅改善。先前优化的 HTML5 输出 ASM.js 已经停用,已从代码库中删除。

注:WebAssembly 中仍不可使用多线程。虽然 ASM.js 支持多线程,但 WebAssembl 目前只能在单线程模式下运行。但是,多线程是所有浏览器制造商在接下来几个月中要重点突破的重大功能。

新增特性:LLM 低级内存跟踪器

新增的 LLM 低级内存跟踪器使您能够一次性跟踪所有内存,只会跟踪一次,*不会遗漏任何内容,也不会有重复计算!

图片备用文本

引擎或游戏的每次分配都会被指定一个标记值,用于表示其所属的类别。所有类别的总计会累计到游戏所用的总内存。这些标记使用标记范围宏进行应用。在该范围内应用的任何分配都会被分配指定标记。

LLM 统计信息可以在游戏中使用“stat LLM”或“stat LLMFULL”进行查看。每个标记的当前总计将以 MB 为单位显示。LLM 还会将统计信息值输出到 CSV,以绘制值的时间推移图。

正因如此,需要为每个平台添加对 LLM 的支持。目前 LLM 支持 PS4 和 XboxOne。Windows 作为试验性发行版受到支持。

新增特性:改进了 XGE (Incredibuild) 着色器编译器支持

我们对 XGE (Incredibuild) 着色器编译进行了改进,大幅缩短了旧系统中的拖延和延迟,让新着色器作业能够异步传输到 XGE 中。

新系统执行效率大幅提高,可以明显加快所有情况下的着色器编译速度,包括动态烘焙、常规烘焙和编辑器中的着色器迭代。

这些改进默认为启用状态,但至少需要 Incredibuild 8.01 或更高版本。引擎会在启动时检查版本,如果没有找到受支持的安装,将恢复为旧的 XGE 着色器编译器。对于旧系统,XGE 着色器编译器本身必须在命令行上通过“-xgeshadercompile”启用,或者在 ConsoleVariables.ini 中将“r.XGEShaderCompile”设置为 1 进行启用。

虚幻音频引擎(抢先体验预览)

新的虚幻音频引擎仍在继续开发当中。该发行版为更多平台提供了支持,更新了插件架构和一些令人激动的新功能。这些新的虚幻音频引擎功能仍应作为抢先体验版本。我们将在后续版本中重点关注性能和稳定性的改进。

除了 Windows、Mac、iOS、Android、XboxOne 和 PS4,我们还添加了对 Nintendo Switch、Linux 和 HTML5 上的新虚幻音频引擎的支持。新的虚幻音频引擎在 Linux 中默认为启用状态。对于在 4.17 和 4.16 中先行发布的所有其他后端,也进行了一些重大修复和改进。

音频插件架构改进(仅适用于新的虚幻音频引擎)

音频插件对于需要覆盖扩充音频引擎核心功能的音频效果十分有用。基于对象的立体声源空间化、声源阻挡和大师级回响通过深入集成到核心混合引擎可以达到最佳效果。这些效果需要特殊的音频插件支持。

图片备用文本

  • 增强的音频插件架构让想要覆盖核心混合功能的第三方开发人员能够更顺利地集成
  • 让项目能够混合和匹配插件覆盖:声源空间化、声源阻挡和回响
  • 现在无需重启编辑器即可换出不同的插件!

新增特性:声源总线(仅适用于新的虚幻音频引擎)

声源总线是一款强大的新功能,展示了新的虚幻音频引擎的灵活路由功能,允许多个声源发送并汇总到单一实时声源中。声源总线是从声源库中派生出来的,使它们能够以声波或声音线索的使用方式进行播放和使用 - 即空间化为 3D 混合总线或作为保持声效持久性的方法。声源总线将成为音频设计师的宝贵工具,为将来开发令人激动的功能奠定了基础。

  • 声源总线允许任何音频源将自己的音频路由到 3D 音频源,包括其他声源总线(包括自身,创造运行时音频反馈系统)。
  • 声源总线是新的 USoundBase 类型,所以可以在普通声音 BP 和 C++ API、音频组件和环境 Actor 中像另外一种声效一样进行播放,可以指定自己的持续时间,成为一次性总线,如果指定为 0.0,将会被视为具有无限持续时间的循环声源。
  • 声源效果和副路混合发送可以与声源总线一起使用,就像普通声源一样
  • 其他声源将自己的音频发送到总线,方式类似于副路混合发送,并可以选择将音频只发送到声源总线,也可以同时将音频发送到副路混合。

新的附录混合效果(仅适用于新的虚幻音频引擎)

我们使用从简单延时到灵活计算高效回响的全新时间型副路混合效果更新了合成插件,让您可以创建复杂有趣的交互式空间效果:

  • 延时:简单的多通道延时线路,可以在运行时从蓝图进行调制。该效果在发送到给定副路混合的音频中模拟简单的广播延时,该副路混合在应用此效果的情况下运行,可以用于实现与动画或其他游戏系统的亚毫秒级的同步。
  • 控制延时:复杂的多通道延时效果,允许任意数量的控制(“回声”),可以在运行时通过强大的蓝图 API 独立添加、修改和删除。每次控制都根据控制弱化、控制方位和控制延时进行参数化。这对于模拟多普勒效果、仿真早期反射和许多其他延时混合效果十分有用。
  • Flexiverb:计算开销低的单通道回响算法,针对最大化回声密度、尽量减少多重回声进行了优化。该效果最适合用于在 CPU 资源有限的平台上模拟小房间回响。

改进了弱化设置

我们改进了弱化设置,提高了对清晰度和结构的关注。改进包括根据具有特殊编辑条件的类别显示弱化设置,明确当前利用的是哪些弱化设置功能。

图片备用文本

新增特性:重构的 VR/AR 摄像头系统

虚幻引擎 4.18 现在包含针对摄像头组件和原始视图的默认摄像头实现,包括由引擎自动处理的后期更新。该默认摄像头实现会自行移动位置(相对转换),等效于在视图目标中有 CameraComponent 组件时,设备从其校准的原始位置移动位置。因此,硬件开发人员必须实现的 API 占用的资源更少,所以效率会大幅度提高。

注:所有现有的平台都必须删除其摄像头实现,并更换为默认摄像头实现。

论坛上提供了完整的发行说明列表。

最近文章

Unreal Studio 4.20测试版现已推出!

什么工具能比Unreal Studio更好用?当然是Unreal Studio 4.20版啦!元数据导入,更流畅的导出流程以及在虚幻引擎中编辑网格体等...

Holospark的《地球沦陷(Earthfall)》为合作射击类游戏带来创新

总部位于西雅图的独立开发商Holospark在它的四人合作射击游戏 《地球沦陷》中展现了美国太平洋西北地区的风貌。

虚幻引擎帮助The Mill和Monster.com驱动怪物傀儡

屡获殊荣的The Mill工作室需要制作一些以巨型毛绒生物为主题的动画,而且要快。通过巧妙的技术以及虚幻引擎的帮助,他们的成果达到并且超出了Monst...