大脑非常神奇。只需要两只耳朵和一些脑部周围的软骨,就可以仅通过声音线索准确地在 3D 空间中定位一个物体。可以听听看周围的声音。认真的,停下来听听周围的声音。即使那些音源完全不在我们的视线内,应该也可以大概知道音源的位置吧?这就是声音的定位效果。这是一个非常厉害的能力,尽管大多数人都认为这是理所当然的,然而正是这种能力在生活的各个方面中帮助我们完成一系列活动,比如安全地过马路,不被凶狠的狗伤害,当然也包括创造游戏的沉浸效果。
让我们来理一理
在现实生活中我们拥有五感(如果活在 M. Night Shyamalan 大导演电影里的话那你还会有第六种感官)。这五感分别是触觉,味觉,嗅觉,视觉和听觉;但是呢,在 VR 的游戏世界里,只有两种感觉能被我们自由利用,这两感就是视觉和听觉。
从某些角度说呢,这样反而比较好(比如僵尸游戏里启用味觉,有人想试试吗?),既然现在只有两种感觉可以被利用,那制作一个真正的沉浸式游戏就意味着将这两感运用到极致。简单来说就是需要高质量的 3D 图像和 3D 音效。
尽管图形领域近几年一直在持续发展提升,PC 端音效的发展史看上去似乎就显得特别混乱,有层出不穷的新发明,也有停滞不前的时期,甚至也有彻彻底底的退步。然而,随着 VR 产品的问世和不断发展,真正的 3D 音效似乎再一次崛起了。这一次他们从过去层出不穷的新发明中吸取了教训,VR 要将沉浸式音效体验推向一个前所未有的巅峰。
音效急需复苏
3D 音效病了。正确执行的 3D 音效还是非常炫酷的,但是在近几十年里,3D 音效的整体质量都不容乐观。毫不夸张地说,想要明白为什么 VR 能够复兴 3D 音效,必须了解 3D 音效究竟为什么需要复苏。
3D 音效利用的是空间坐标轴(x,y,z轴)内每个声音和听者的坐标位置,然而大多数现代游戏都将声音界定为水平上扩展,但是纵向上几乎没有高度和距离感。这就意味着我们界定的声音对于听者而言就像是一个静止的呼啦圈,仅仅能提供一种极弱的伪 3D 效果。
音频发展史
从某些角度来看,音效已经在过去几十年中有了突飞猛进的变化,尤其是从保真度和信噪比的角度来看。从托马斯爱迪生在 1800 年代末期第一次通过留声机回放了一段声音以来,我们已经在音频领域发展了很多。然而,尽管在保真度和预录方面一直在持续进步,3D 界的实时音效建模却有些差强人意。
那么,在游戏之中创造出优秀的 3D 音效到底有多难呢?为什么我的游戏里没有 3D 音效呢?高保真音效的重现其实并不难,但是要重现一个 3D 空间中的动态行为确实是一件很难的事情。
空间障碍
首先,我们先预录一个音效作为样本。他可以是僵尸的呻吟,可以是开枪的声音,也可以是你朋友在雪地里的脚步声。无论这个音效是什么,他肯定具备一个音源,和一个听者。
无论是音源还是听者,都需要在 3D 空间中占有一个位置,这个过程被称之为空间定位。本质上来说呢,这就意味着音源和听者都有一个完整、动态的 x,y,z轴坐标,从左到右,从上到下,从前到后。随着他们位置的变化,预录声音样本也必须随着位置变化而变化。也有专门的术语来形容从左到右,从前到后的关系,叫方位角(azimuth),而从上到下的关系则称为海拔(elevation),此外还有距离。尽管空间定位对于声音的沉浸效果而言非常重要,这也仅仅只是冰山一角。在声音到达听者的位置之前,它需要在空间里沿着弯曲复杂的路径里行进一段距离才行。
就像光一样,声音实际上很少沿直线从点 A 到点 B,取决于周边环境,它们在穿梭的过程中可能经历成千上万的路径变化。光可以被反射,声音也可以被反射,反射又可细分为早反射(early reflections)和迟反射(late reflection);也可以被吸收(或减弱);甚至可以被完全隔绝,如声音封闭(sound occlusion)。在一个空间内的声音也可以产生回声(盘绕的混响/ convoluted reverberations),这些都取决于声音在传播过程中的路径。将这些环境因素合在一起,就是人们常说的声音氛围(audio ambiance)。
由于这些环境因素对音波在传播过程中的影响,也大大加强了计算机处理这种影响的难度。举个不恰当的例子,这大概就像是在你的游戏中加入另外一个物理引擎,比如声波追踪系统之类的。这也是硬件加速音效常用且实用的一个借口。所以时至今日,大多数游戏仍然没有将空间定位或者声音氛围开发到极致。
Aureal
想要把这一切环境因素都放到你的脑边实在有点难,所以不妨现在戴上一副耳机然后听听看这个。这是一个在 1990 年代末诞生的即时 3D 音效科技。没错,大概 20 年前的科技就已经能创造出富有沉浸感,栩栩如生,有方位感的 3D 音效。这项技术被称为 A3D 2.0,它可以实时实现以上提到的大多数的声音效果。而这项技术的拥有者正是 Aureal(傲锐)。
这项技术很大程度上依赖于头部相关传递函数(head-related transfer functions,或 HRTFs)以及用来计算 3D 音源如何进入人脑数学算法,这种算法还需要考虑耳朵和上半身身形。这能在本质上帮助我们复制声音线索,以便我们准确定位音源,或者将音源局限在某块区域。我需要再一次提醒大家,这项技术在上世纪 90 年代末期就已经实现了。
说了这么多,如果你听了上述那个链接,觉得自己的耳朵被欺骗了,可以理解!这是非常正常的感受。可是如果这项技术那么多年以前就已经存在了,为什么如今游戏的音效很多都还没这个强呢?原因归纳起来就两个字,竞争。
竞争
理论上来讲竞争是一件好事,可以让产品质量越来越高,就好比跑步比赛中别人就快追上你了,你就决定加速一样。然而不幸的是,竞争也可能产生“劣币驱逐良币”的负面效果,比如跑步比赛中你就快追上别人了,结果他把你推倒了。有时候市场竞争真的就是这个样子。
Aureal 是史上最早开拓 3D 音效领域的公司之一。即使很保守地评价,他们家的音效科技也是非常出色的,尤其是考虑到他们在上世纪 90 年代末就已经达到那种水平。可是就在随后,Aureal 的最大竞争者 Creative(创新)起诉 Aureal 侵犯专利权。尽管人们普遍认为 Aureal 的音频技术比 Creative 的要更加优秀一些,这场官司却耗费了 Aureal 大量财力,以至于无法继续运作下去。总而言之,这两家公司并没有友好竞争,而音频技术也只能成为这场恶性竞争中的陪葬品。可以说这场恶性竞争不仅仅阻碍了 3D 音效的发展,更增加了消费者们的开销,最可恶的是价格高了产品质量反而变得比以前更糟糕。
在被称为 3D 音效的黄金年代的那段日子里,Creative 也继续创新,然而它们的创新大部分是基于 Microsoft 的核心技术 DirectSound 和 DirectSound3D。
前任
首先呢,我们先来弄明白一个常用的俗名,你肯定经常听到 DirectX (微软创建的多媒体编程接口)这名字,一般都是在描述某些很酷炫的图形特征时会被用到。尽管 DirectX 经常被人们与 3D 图形联系在一起,但实际上它是由大量多媒体应用程序编程接口(Application Programming Interfaces,API)构成的,简单地说就是相当于有好几级软件,将功能强大的软件与不那么强大的连接在一起运转。
而 DirectX 的图形 API 正是 Direct3D。大部分人在说 DirectX 的时候其实指的是 Direct3D。而 DirectSound 呢,就相当于是对应的音效 API。DirectSound 也有扩展部分,名为 DirectSound3D。
DirectSound(以及 DirectSound3D)有两个核心功能。一是他能够创建一个标准,统一化的环境供 3D 音效发展,并能让软件开发者轻松利用。第二个功能则是它能让硬件为 3D 音效加速,这是一项非常复杂的计算任务。一直到 2006 年,DirectSound 和 DirectSound3D 一直是很多音频应用的主心骨。随后 Vista 诞生了。
陨落
随着 Windows Vista 系统的发布,微软随即将 DirectSound3D 斩于马下,将几年来 Creative 音频发展的基石化为乌有。无论是标准音效 API 还是硬件加速都瞬间失去了活力。想明白这究竟造成了多大的混乱,不妨想象一下哪天微软突然决定也停止使用 Direct3D。当然了,图形行业能够很快自我复原的几率很高,但是这么做,对于图形界的影响一定会是巨大的。移除 DirectSound 和 DirectSound3D 从某些角度来说是有利的,但对于当时音频的状况而言是个非常巨大的打击。这段历史就像是 Creative 把 Aureal 的轮胎放了气,而当 Creative 准备上路的时候,微软直接把 Creative 的轮胎卸掉了。
在 DirectSound3D 被唤醒的初期,很多人说硬件加速是多余的,完全不需要。这么说有那么点道理,但是撇开道理不谈,这么多年来的游戏中软件执行这块似乎一直很单薄,而背后原因正是因为他们无法计算足够的运算组,以至于无法创建真正的 3D 音效。从乐观的角度来看这最近一个世纪,3D 音效在退步,但在代替软件填补空白的帮助下,至少也在跌跌撞撞地找回自己的步伐。
余波
尽管从 Vista 开始的代替产品基本都是基于软件制造的,也有少部分硬件加速的解决方案,比如 AMD 的 TrueAudio技术(一种免费又简单的实时无损音频编解码器),它们利用 GPU 进行运算,从而创造精准的 3D 音效。当我们想起声音是一种物理现象,再想想 GPU 在物理渲染中日益递增的作用(比如 Nvidia 的 PhysX),说 GPU 也能够计算出精准的沉浸式 3D 音效似乎也不那么牵强。然而,如今的 3D 音效领域依然支离破碎。
事到如今,我们再回过头来看,究竟解决方案是软件还是硬件已经不那么重要了。重要的是能实现真正的空间定位,创造环境氛围。可以说近十年来,这些过程常常是敷衍了事。随着 VR 的到来,对真正的 3D 音效的需求总算到头了(现在 3D 音效真的能到你的“头”里)。
欢迎光临
VR 的一切都是关于沉浸感。Oculus Rift 特别强调了临场感的概念,或是肉体上感觉自己正身处于某一环境中。视觉和听觉都能使这种感觉更加逼真。
在 VR 中,能实现沉浸感和临场感画面的主要方式就是通过低延迟的头部追踪,当你转头,在地上匍匐前进时,显示屏能以几乎无法察觉的延迟匹配你的实时视野。有趣的是,头部追踪系统也恰好是为什么真正的 3D 音效至关重要的原因。
在现实生活中,我们常常会微微转动,或者抬高头部以确定某个声音的确切来源,我们的大脑会记录下这些声音的差异。鼠标视角某种程度上能模仿这样的行为,因此对于鼠标游戏来说 3D 音效是个不错的选择,但是头部追踪系统对于 3D 音效的需求几乎是强制的。
3D音效:VR的必需品
VR 中的音效可以成为临场感的点睛之笔,也能成为败笔。正确执行的 3D 音效能加强一个场景的临场感,给玩家们传递各种物体的位置信息,以及环境信息。能够通过头部运动追踪一个运动中的物体固然很重要,能够听见与这个物体实时位置所匹配的声音也同样重要。视觉和听觉可以相互加强,一旦这两种感觉互相冲突,沉浸感就消失了。
想象一下你看见一个物体在你的身体上方,但听上去却像是在边上;或者是你在听一个角色讲话,但是无论你的头转向何方,声音似乎总是从正前方传来。如果真的这样,沉浸感就成了一个笑话,那也就更不用谈什么临场感了。
3D 音效非常重要,因为当我们听到那些可以感觉到的声音时,听觉几乎可以替代我们无法实现的触觉,比如我们听到了风从脸上吹过的声音,或者雨落在身边的声音。来看看这个Oculus Connect 大会上的视频(翻墙看~),你可以对 3D 音效对于 VR 的重要性有更进一步的了解。
但这并不是说没有优秀的 3D 音效,沉浸感就没有了,而是真正的 3D 音效能将这种感觉放大至无限。这就是为什么 VR 如此坚决地推崇整合了空间定位和环境氛围的真正 3D 音效。
然而有点反常的就是,由于耳朵对于声音的连续性判断和准确定位,利用 HRTF 的耳机似乎总比扬声器传递更逼真的 3D 音效。
音频复苏
在 2014 年,Oculus 授权 VisiSonic 的音频技术,并最终将其融入 Oculus Audio SDK 中。这项技术非常依赖定制的 HRTF,通过耳机来再现精准的空间定位,这其实也是 Aureal 在 20 年前就推出的技术。
最棒的部分不仅仅是 Oculus 将这项技术整合进了他们的 Audio ADK 中,而且他们还免费供应,甚至不仅仅在 VR 平台上免费,其他任何平台上也是免费,包括传统 PC 平台也是。尽管市面上也有很多各种各样的三方音频解决方案,但 Oculus 这么做也是为大家提供了一个高质量,并容易上手的 3D 音效基准,甚至为游戏内真正的 3D 音效定了起跑线,这条起跑线在快十年前 DirectSound3D 陨落时就不见了踪影。
一段时间以来 3D 音效都处于一个“奄奄一息”的状态,或者你也可以乐观地说,它需要被复苏。多亏了 VR 的到来,人们终于证实了 3D 音效复苏的重要性。3D 音效再也不是备选的调味料了,它是一个非常重要的原材料,是可以放大、倍增整个 VR 体验,可以将临场感和沉浸感提升到图形永远无法企及高度的重要元素。
最后,来听一听 Valve 声音工程师和我们谈谈 3D 音效。
VIA maximumpc 魔多VR