将 Spatial Audio 整合到 Unity 中

游戏音频 / 声音设计 / 空间音频

展示如何把 Spatial Audio 整合到 Unity 演示游戏《WAG》中的直播视频回放已上线!地址:https://www.youtube.com/watch?v=UFCZ9t4DwGQ

自从我们初次踏上 Allegro 王国这片沃土已经过去了两年时间。那时,诸位化身为英勇的冒险家,毅然投入到拯救行动中,奋力驱除腐化大地的邪灵。现在我们要重返阴森地牢,再次终结荼毒王国的瘟疫。

WwiseAdventureGame

大家好,我叫麦斯,是《Wwise Adventure Game (WAG)》的两位开发者之一。在此,我很高兴地告诉各位 Audiokinetic 准备将 Spatial Audio 整合到这款 Unity 演示游戏中。为了展示如何进行操作,我们将举办多场 Wwise Up On Air | Hands-On 直播。到时诸位可以一边观看一边实践,有不懂的地方还可以向嘉宾提问。下面我们先简单说说《WAG》,然后再深入探讨 Spatial Audio

WAG》是什么?

它是一个使用 Wwise 构建的开源 Unity 工程,需要的话可以直接从 Wwise Launcher 下载。

WwiseAdventureGame2

想了解如何在 Unity 中设置音频挂钩,还是要考察怎样按区域加载 SoundBank?不妨打开对象、脚本、动画、图像或其他素材查看一下。点击此处快速了解

所有这一切是如何开始的

我的话,要从在丹麦哥本哈根的奥尔堡大学攻读声音与音乐计算工程硕士说起。当时,我和雅各布·林格·奥尔森 (Jacob Lynggaard Olsen) 即将迎来在校的最后一个学年。不过,我们其实早就做好了离开校园投身游戏音频行业的打算。幸运的是,在一次研讨会上展示学生游戏时,我们遇到了托马斯·巴尔奇 (Thomas Bärtschi)。他似乎对我们在游戏中所做的音频尝试很感兴趣。

WwiseAdventureGame3

于是,我们就抓住机会展示了自己最好的作品以及当时制作的各种视频教程,然后提到我们正在寻找实习职位。过了一段时间,我们应邀跟来自 Audiokinetic 的西蒙·阿什比 (Simon Ashby) 和伯诺瓦·桑特尔 (Benoit Santerre) 进行了 Skype 通话。这次我们做了更充分的准备,详细阐述了如何为 Wwise Unity Integration 量身打造一款新的游戏。然后在 2016 5 1 号的时候,我们从西蒙那里收到了激动人心的好消息:Audiokinetic 答应给我们提供实习职位并准予开发《WAG》。在被告知从 9 月份开始正式入职后,我们便立刻着手做事先所能想到的各种准备。

WwiseAdventureGame4

仔细看下上面的草图,是不是跟现在的《WAG》很像!

Wwise Unity Integration 演示游戏

我们知道,除了要构建一个内容丰富的 Unity 工程,还得确保一切都要围绕 Wwise Unity Integration 展开。这样的话,全套整合会涉及到很多知识。然而,我们并不想让新手望而却步。最终我们决定将所有东西进行细分,以便运用最常用、最基本的音频整合方法来加以实现(比如发送 Event、设置 Game Sync、创建 Reverb Zone、使用 Callback)。为了避繁就简,我们在最初整合时并没有把 Spatial Audio 涵盖在内,不过为日后将其纳入其中做了相应的准备。

音频整合往往跟 Wwise 工程本身的内容有很大关系,那么如何确保将最有可能用到的音频设计方法融入其中呢?值得庆幸的是,戴米安·卡斯特鲍尔 (Damian Kastbauer) 已经结合各种音频设计方法构建了一个完整的 Wwise 工程 (Wwise Project Adventure)。于是,我们便以此为基础融入了音频整合,甚至连名字都借鉴了过来。

程序员附注

虽说《WAG》是专门为声音设计师开发的,但同时我们也希望将所有脚本和系统开源,以便被广泛地重复使用。试问,有哪个程序员不重复使用自己的代码,又有谁不从别人的代码中汲取灵感呢?因此,我们希望所有人都能投身其中,查看回调所用的代码,复制自己所需的部分,然后直接粘贴到 Unity 工程中,并进行必要的修改。

 

四个月之后,游戏设计完成了。不过,它的规模已经超出了我和雅各布原本的设想。除了音乐,里面仍有很多音频文件使用的是临时音效。这时,戴米安和 Audiokinetic 提出让 Bay Area Sound 来协助梳理大部分音效。不得不说,这真的帮了我们很大的忙,游戏体验也因而得到了大幅提升。 

最终,我们在临近 GDC 2018 的时候发布了《WAG》,同时推出了Wwise-251性能优化 & 移动平台考量认证。半年之后,紧接着又推出了Wwise-301Wwise Unity整合认证。并且将《WAG》作为了与 Wwise-301 教材配套的演示游戏,以便帮助用户学习如何使用各种组件(如 AkAmbient、AkState、AkBank)并创建自定义脚本。

在营造适宜的环境以便运用 Wwise Unity Integration 组件时,自然要有各种各样的系统来为游戏体验提供支持,并满足音频整合方面的需要。下面便是我们为此构建的一些系统。


  • Additive Scene Loading
  • AI & State Machines
  • Camera Movement
  • Collectables
  • Combat Targeting
  • Developer / Editor Tools
  • Dialogue
  • Game Speed Handling
  • Image Effects
  • Input
  • Inventory
  • Level of Detail
  • Localization
  • Menu
  • Navigation
  • Player Attack
  • Player Interaction
  • Questing
  • Skybox
  • Spellcasting
  • Teleportation
  • Time of day
  • 各种 Mobile 替换脚本

所有这些系统都完整地包含在《WAG》中。无论对其中哪个感兴趣,都可将其打开来体验一番。

快速了解《WAG

WAG》中融入了魔法、武器、任务、金币和敌人等各种经典元素。在从 Wwise Launcher 下载该游戏之后,既可选择直接运行,也可在 Unity 中打开,甚至还可导出到 Android iOS 移动设备上试玩。控制方式会根据实际所用平台在键盘+鼠标和触控按钮之间自动切换。在游戏当中,可以快速前往某条任务线、传送到某个特定地点或隐藏自己并专注于音频。

 

如今我们把《WAG》做成了一款免费且开源的 Unity 演示游戏,需要的话可以直接从 Wwise Launcher 下载。它是认证课程要求必须安装的,不过也经常用于游戏音频演示。我在 One Minute Wwise 系列视频中就用过好多次。利用它,我们可以验证新增功能在特定工程中的实际应用效果。

不得不说,这当中如果没有 Audiokinetic 团队、戴米安、Bay Area Sound 和其他协作者的支持和帮助,《WAG》不可能会有现在这样丰富而强大的功能。 

现在,我们快速了解了《WAG》的开发历程。倘若各位想获知更多相关信息,可以参阅以下两篇博文:Wwise Adventure Game (WAG)A Wwise Wwizard for Wwise Adventurers。接下来让我们把时间快进到 2020 年,说说这款游戏的新增功能 Spatial Audio

与各位一起整合 Spatial Audio

鉴于 Wwise 2019.2 最近对 Spatial Audio 的更新,我们希望能将 Spatial Audio 一并整合到《WAG》中。为此,我们的老朋友戴米安热心地提议通过在 Audiokinetic Twitch 频道 Wwise Up On Air | Hands On 上直播来展示如何实施整合!

WwiseAdventureGame5

Wwise Up On Air | Hands On 系列直播中,Wwise 大神戴米安会邀朋友一起动手演示各种功能在 Wwise 中是如何实现的。借助这一优质的学习渠道,观众可以在实践中领悟相关知识,而不是像传统的那样光看不练。而且,各位还可与嘉宾愉快地进行互动。 

我们打算逐步展示如何将 Spatial Audio 整合到 Unity 中,同时与观众保持密切的交流和互动。可能还会问各位要向哪个对象添加反射声,或是要使用哪些声音来测试 Spatial Audio。在直播过程中,有不懂的地方随时都可以提问,甚至请求进行某些特定的演示。

各位可能觉得当中涉及的内容有些复杂,当然也确实需要费一番心思才能弄明白。不过不用担心,不是还有我们嘛。到时黛米安会对专业知识进行讲解,操作步骤也会循序渐进、由浅入深,确保大家都能轻松理解并逐步掌握。下面我们来简单说说直播当中大概会涉及到哪些内容。

在线直播如何将 Spatial Audio 整合到 Unity

我们会先参看一些已经整合了 Spatial Audio 的典型例子。进而探讨为何要在游戏中整合 Spatial Audio,并详细告知各位事先可能要考虑哪些东西。把这些讲明之后,便开始动手实践!

首先我们会打开 Wwise 和《WAG》,然后一步一步地慢慢讲解,直到完成 Spatial Audio 的必要操作。在讲到 Wwise Reflect 时,考虑到其基于游戏中几何构造表面的反射这一原理,自然就要阐明如何将形状用作反射表面,以及这会对听觉体验产生多大的影响。在此之后,我们会把 Spatial Audio 添加到第一个房间,进而将其与 Portal Occlusion 相结合。随后再来探讨相关的声音设计和技术属性,了解如何才能从隔壁房间听到声音,以及这会给增强沉浸体验带来怎样的帮助。最后,我们会进一步探究 Diffraction 之类的概念,展示如何使用各种声学材质和房间底噪来装点房间。

对于新手,有些地方可能不太好理解。不管怎样,我们都希望各位能亲自动手操作,以便告诉我们都有哪些不懂之处。我们的计划是至少直播 2 场。到时看实际能讲多少内容,以及后续收到怎样的反馈。

在直播当中,除了戴米安还会有其他 Audiokinetic 成员加入,包括 Thalie Keklikian(软件工程师)、伯诺瓦(Wwise 整合主管),还有我本人(整合培训/内容创作)。我们会交替着讲解或操作,同时回答各位提出的问题。对于已经完成 Wwise-301 认证的观众,看完这些直播基本上就算完全掌握 Wwise Unity Integration 了。下面是直播中涉及到的一些组件,我们来看一下。

AkEmitterObstructionOcclusion

AkRoom-2

AkRoomAwareObject-3

unnamed-4

AkRoomPortalObstruction-5

AkSpatialAudioDebugDraw-6

AkSpatialAudioListener-7

unnamed-8

借助这个难得的机会,各位可以快速了解如何使用上述组件,明白什么时候不使用它们,并提出困扰自己的 Spatial Audio 整合问题。 

WAG》中所作的改进

在这些直播之后,我们便会对《WAG》进行更新。到时,各位可以前往 Allegro 王国脚下的黑暗地牢,尽情尝试添加 Spatial Audio,并体验由此带来的效果!

WwiseAdventureGame6

值得一提的是,Audio 菜单中将引入多项新的设置。到时,各位不仅可以体验在地牢中添加 Spatial Audio 后的效果,还可尝试各种 Early Reflection 设置,比如使用热键或放置发声体 (Radio)

WwiseAdventureGame7

虽然还有很多东西没有讲明,不过还是给直播留点惊喜吧!在此之前,先来看看下面的开播预告吧。

我们的成长离不开广大用户的支持

这里只是简要介绍了一下 Spatial Audio 和《WAG》,直播当中会进行详细的讲解,希望到时各位能一起参与、共同探讨。或许你希望我们在《WAG》中测试特定的场景?可能你想让戴米安讲些自己感兴趣的东西?还是说建议谁加入 Wwise Up On Air Wwise Up on Air | Hands-On 直播?不妨告诉我们!如有任何意见或建议,请发送邮件至 openears@audiokinetic.com

 

麦斯·麦雷蒂·桑德鲁普 (Mads Maretty Sønderup)

Wwise整合教师/内容创作者

Audiokinetic

麦斯·麦雷蒂·桑德鲁普 (Mads Maretty Sønderup)

Wwise整合教师/内容创作者

Audiokinetic

麦斯·麦雷蒂·桑德鲁普 (Mads Maretty Sønderup) 是《Wwise Adventure Game》的两位开发者之一,同时也是 Wwise-251 和 Wwise-301 认证文档的编写者。他拥有声音与音乐计算工程硕士学位和媒体技术学士学位,致力于通过分享专业知识来推动对游戏音乐的探索。

 @madsmaretty

评论

留下回复

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

更多文章

如何利用Wwise为TPS游戏构建功能完善的枪声

在一个TPS(Third Person Shooter)游戏中,什么样的枪声是好的枪声?

5.11.2020 - 作者:孙大亮

在 Wwise 中调试并监控 Audio Object 的 9 个简单步骤

如果各位想了解 Wwise 中最新引入的基于对象的音频管线但又不知从哪里入手,不妨参考下述在 Windows 上使用 Wwise 设定并分析 Audio Object 的 9...

22.9.2021 - 作者:戴米安·卡斯特鲍尔(Damian Kastbauer)

利用 Wwise 设计基于循环的汽车发动机声音 | 第 1 部分

在本系列博文中,我们将介绍如何利用 Wwise 设计基于循环的汽车发动机声音(文中配有相关音频示例,及有关汽车的基础知识)。 ...

26.1.2022 - 作者:阿托•科伊维斯托 (Arto Koivisto)

音乐塔防 — 音频设计师视角的游戏设计尝试

WWISE X GME 鹅厂游戏互动音频创意大赛参赛作品

16.9.2022 - 作者:刘子阳

加快 Strata 工作流程 | 第 2 部分 – Open Associated REAPER Project

简介 作为使用 REAPER 和 Wwise 的声音设计师,在 Wwise 中操作时经常会遇到想在 REAPER 中重新渲染声音的情形。为此,通常要手动查找源 REAPER...

26.7.2023 - 作者:Audiokinetic (音频动能)

《遍体鳞伤(Scars Above)》中的音频优化实践

简介 在本文中,我会试着阐释团队在对《Scars...

14.10.2024 - 作者:Milan Antić

更多文章

如何利用Wwise为TPS游戏构建功能完善的枪声

在一个TPS(Third Person Shooter)游戏中,什么样的枪声是好的枪声?

在 Wwise 中调试并监控 Audio Object 的 9 个简单步骤

如果各位想了解 Wwise 中最新引入的基于对象的音频管线但又不知从哪里入手,不妨参考下述在 Windows 上使用 Wwise 设定并分析 Audio Object 的 9...

利用 Wwise 设计基于循环的汽车发动机声音 | 第 1 部分

在本系列博文中,我们将介绍如何利用 Wwise 设计基于循环的汽车发动机声音(文中配有相关音频示例,及有关汽车的基础知识)。 ...