关于结合 Wwise 在 UE4 中运用音频工具的尝试:利用 Spline Based Audio Emitter 创建自定义形状

声音设计 / Wwise 技巧和工具

 

大家好!我计划撰写一系列短文来探讨关于结合 Wwise 在 Unreal Engine 4 中运用音频工具的尝试,这是第一篇。希望这些博文能给读者带来一些启发并促进相互交流,最终帮助大家成为更加优秀的开发人员。我真的很想跟游戏音频社区的诸位分享自己的经验,并且十分乐意听听各位对文中谈及的话题都有怎样的看法。因为这是该系列博文中的第一篇,所以我觉得有必要简单介绍一下自己。我叫特勒尔斯 (Troels),我就是大家所说的技术声音设计师,同时还是一名作曲家。

在过去一年半的时间里,我不知花了多少个晚上和周末学习使用 Unreal Engine 4、制作游戏原型、开发非商业项目,陶醉其中简直停不下来。现在,我又开始学习在职业工作中运用 Unreal Blueprint(蓝图)。因为其中学到的好些东西都跟音频工具相关,所以我就想写篇短文在这里跟各位探讨一下。于是,就有了这篇博文。

下面我们就来说说第一个话题,也就是…

Spline Based Audio Emitter(即 Volumetric Audio Emitter)

因为没有找到用于在 UE4 中创建自定义音频发声区域形状的现有工具和解决方案,所以我就跟同事一起试着创建了这么一款工具。

 

Spline

它能用来做什么?

该工具方便在 UE4 中概略画出大片的非立方形/箱形/球形区域(如森林或沼泽区域),进而在其内部或外部添加音频。请注意,直接通过基于 Spline(样条)的形状就可获取现成的简化形状版本。

为什么要使用它?

因为这样便于在靠近自定义区域形状时淡入/淡出环境声,从而摆脱只能使用基本形状的限制。如此一来,便可节省很多时间,尤其是在原型设计当中和关卡/环境迅速变化的情况下。另外,假如设有包含入口的闭合区域,并为 AkComponent 启用了声笼,还可让播放的内部/外部环境声只穿过入口而不穿过墙壁,使听觉效果显得更加逼真。而且,它只使用一个发声体,所以还有助于减少声部数。下面我们通过视频来具体看下其工作原理。注意,该视频只是对核心功能的简略介绍。另外还有很多其他功能并未涵盖在内,比如内部/外部 State(状态)、跟随玩家高度、区域淡变距离 RTPC(用来根据用户定义的位置源设计 2D 或 3D 声音)。

 

功能:

  • Spline Based Audio Emitter 使用闭合样条环路。它可以定位样条曲线上距离玩家最近的点,并在该点放置音频发声体。在此过程中,将会不断更新发声体定位。
  • Spline Based Audio Emitter 具有两种 State:Outside(外部)和 Inside(内部)。在玩家走到闭合环路内部时,State 变为 Inside。这时,音频发声体定位会一直跟随听者位置及朝向。一旦玩家走到样条环路外部,State 就会变为 Outside。此时,音频发声体定位会再次关联到样条曲线,并持续定位在曲线上距离玩家最近的点。

原理:

如需了解该工具的工作原理,请查看 UE4 中的 Blueprint – 相应文档均有详细归类。注意,该工具还暴露了多个公共变量,便于用户根据需要灵活设置。您可以在此下载。

这款工具依赖的两个主要元素/节点功能为:

  • 获取样条曲线上距离玩家最近的点(用于发声体定位)。
  • 点积(用于确定玩家是在闭合样条环路内部还是外部)。

 

用法:

  • 将 Blueprint 放到场景中,并创建所需形状。就个人来说,在此过程中我喜欢切换到俯视视图。
  • 在 Details(详情)面板内暴露的变量中,添加声音并告知 Blueprint 要用于 Area Fade(区域淡变)的 RTPC。

注意以下两点可能会导致工具出现故障:

  • 假如发声体衰减距离太长,V 形/凹形形状可能会出现麻烦。我也很想找到这一问题的解决方案。比方说,假如你创建一个凹形并将听者定位在两端的中间(如下图所示),那么玩家在 V 形形状内横向移动时,发声体就会从一端瞬间跳到另一端。
  • 确保样条环路上的点没有相互交错。只有样条点之间的交替关系单一,才能正常切换 Inside / Outside State。

 

Image 2 ConcaveNotGood

优化:

我预料到此 Blueprint 的 CPU 处理时间相较于现有环境形状/工具会长不少,所以我们对它进行了一些简单的优化。比如,在玩家/听者与样条曲线上最近的点之间的距离为 X 时,大幅降低 Blueprint 状态更新的节拍率(Tick Rate)。

特罗尔斯.尼加德(TROELS NYGAARD)

技术声音设计师与作曲家

Investigate North

特罗尔斯.尼加德(TROELS NYGAARD)

技术声音设计师与作曲家

Investigate North

Troels Nygaard 是一名技术型声音设计师和作曲家,2014年获得了声音设计的本科学士学位并在2016年获得了音频整合与用户体验方向的游戏设计理科硕士学位。此外,Troels也是Wwise的认证讲师和音乐制作人。

 @Aporiathegame

评论

留下回复

您的电子邮件地址将不会被公布。

更多文章

Wwise八个易忘小操作

大家好,我是来自深圳创梦天地乐逗的音频设计师洪伟森,主要负责自研部门的游戏音效设计与制作,和Wwise项目整合工作。...

2.3.2020 - 作者:洪伟森

Wwise Unity 速查表

今天我们来说说 Wwise Unity Integration。这些年来,相关学习资源越来越丰富,随时都可以拿来参考。就拿 Audiokinetic 官方资源来说,YouTube...

19.1.2021 - 作者:麦斯·麦雷蒂·桑德鲁普 (Mads Maretty Sønderup)

游戏音乐不应仅仅局限于音乐本身 – 第 2 部分

什么是游戏音乐?什么是互动音乐?这些问题的答案并不像看起来那么简单。对此,奥利维尔·德里维耶 (Olivier Derivière)...

20.4.2021 - 作者:奥利维尔·德里维耶 (OLIVIER DERIVIÈRE)

Impacter 交叉合成的可视化展示

欢迎继续阅读我们的 Impacter 插件系列博文。在前两篇博文中,我们主要介绍了插件的相关物理参数,以及如何与游戏的物理系统紧密结合。在这篇博文中,我们将着重探讨 Impacter 的交叉合成功能。...

19.1.2022 - 作者:瑞恩•多恩 (Ryan Done)

Wwise Spatial Audio 2023.1 新增功能 | 对 Aux Send 模型进行的完善

如果各位了解过 Wwise 2023.1 的新增功能,可能会注意到文档中有这么一句话:“对 Aux Send 模型进行的完善”。这个到底是什么意思呢?今天我们就来详细说说。在此,我会简要介绍对...

14.12.2023 - 作者:内森 哈里斯(NATHAN HARRIS)

通过 ReaWwise 在 ReaScript (Lua) 中调用 WAAPI

ReaWwise 有个大家可能不太知道的功能,就是将原始 WAAPI 函数暴露给 REAPER。藉此,用户可在自己的 ReaScript 中使用这些函数。在本文中,我们将探讨如何使用 WAAPI 在...

23.4.2024 - 作者:安德鲁·科斯塔 (Andrew Costa)

更多文章

Wwise八个易忘小操作

大家好,我是来自深圳创梦天地乐逗的音频设计师洪伟森,主要负责自研部门的游戏音效设计与制作,和Wwise项目整合工作。...

Wwise Unity 速查表

今天我们来说说 Wwise Unity Integration。这些年来,相关学习资源越来越丰富,随时都可以拿来参考。就拿 Audiokinetic 官方资源来说,YouTube...

游戏音乐不应仅仅局限于音乐本身 – 第 2 部分

什么是游戏音乐?什么是互动音乐?这些问题的答案并不像看起来那么简单。对此,奥利维尔·德里维耶 (Olivier Derivière)...