Wwise(Wave Works Interactive Sound Engine,Wwise基础知识,wiki)是Audiokinetic公司提供的跨平台游戏音频解决方案,有着高效完整工做流和工具链html
安装Wwisegit
① 在此页面进行帐号申请,而后会收到一份邮件,点击里面的一个连接来进行帐号验证程序员
② 下载Wwise Launcher(帮助说明)github
③ 启动Wwise Launcher,而后使用申请的帐号登陆算法
④ 使用Wwise Launcher安装内容制做工具(Wwise编辑器、File Packager、Wwise Wave Viewer、Multi-Channel Creator、Crankcase REV Tool等工具)、SDK C++、离线文档和Samples编程
注1:安装完Samples后,就能够在Wwise Launcher中SAMPLES标签 -- Wwise找到这些例子windows
Game Simulator(Lua)是一个带有 Wwise SDK 绑定的 LUA 解释器。 这个应用程序容许您使用简单的脚本语言 Lua 来重现游戏中声音的行为。性能优化
LIMBO(Demo)这款游戏和它相应的 Wwise 工程已经分享给了 Wwise 社区,让社区的成员能够在真的游戏中来实验使用 Wwise 来实现互动音频。网络
Cube(Demo)(参考:在线帮助说明)是一个开源的第一人称射击游戏,C++ 源代码、Wwise 工程和相关文档。架构
Sample Project(参考:在线帮助说明)一个 Wwise 工程,并附带文档。经过典型的声音设计示例,它演示了基本的 Wwise 特性,好比脚步声结构、昼夜交替的环境声、互动音乐、MIDI、虚拟乐器,等等。
注2:SAMPLES标签下还有一个Untiy示例和UE4示例
Wwise Adventure Game (WAG)是一款开源的,使用Unity开发,在 Windows、Mac、iOS 和 Android 上运行的第三人称动做冒险游戏。游戏中包括任务、道具获取、击败敌人,还须要经过最终一战击败荼毒 Allegro王国的瘟疫。
Wwise Audio Lab (WAL) 是一个开源的,相似游戏的 3D 环境,由UE4开发的,能够在 Mac、Windows、Oculus 和 HTC Vive 上运行。它展现了各类各样的空间音频方法和技术,好比基于几何构造的动态早期反射、声音门户、有向混响等等。
更多请参考:Wwise示例工程
注3:在UNITY标签下可下载Wwise的unity插件、unity Demo工程(参考:Unity集成在线帮助说明)
注4:在UNREAL ENGINE标签下可下载Wwise.uplugin(github)的UE4插件、WwiseDemoGame UE4 Demo工程(参考:UE4集成在线帮助说明)
注5:windows安装完后可注册环境变量WWISEROOT(Wwise安装目录)、WWISESDK(Wwise SDK安装路径)
Wwise SDK
Wwise SDK使用C++语言编写的跨平台开发包
Wwise SDK提供的功能:
(1)声音引擎:实时管理和处理游戏音频和振动的各方面需求
(3)Spatial Audio(空间音频, SDK帮助说明 )
结合Wwise Relect插件效果器,Spatial Audio根据发声体和听者位置,以及游戏场景的几何结构来计算虚拟声源,经过调节基于距离和几何结构的Acoustic Textures(声学纹理),以模拟动态的早期反射
利用几何结构(即 Room 和 Portal)对其余房间内发声体的声音传播进行准确建模。其主要特性为衍射、耦合以及混响的空间化。
Room 没有尺寸大小,它们经过 Portal 相互连通,并造成由房间和开口组成的网络。其余房间发出的声音能够经过开口传播至听者所在房间。
Spatial Audio会利用此网络来修改干声信号传输距离、显式入射位置和衍射角。衍射角度会映射至声障或内置游戏参数 Diffraction。
声音设计师可以使用 RTPC 将该参数绑定至相关属性(如音量和低通滤波器)。另外,Spatial Audio 还会将相邻房间的混响置于门户位置,并容许使用3D总线将这些混响耦合到听者所在房间的混响中。
最后,房间还有朝向属性。也就是说,在房间内,关联混响产生的漫反射场会在传播到听者前发生转向。
注:Acoustic textures 和Wwise Reflect插件一块儿使用时,能够帮助反射面模仿出不一样材料的天然的声音,如木材、混凝土和墙面。
对任意一种材质,确认它的物体表面粗糙度的参数和特定频率减幅量的参数,这些参数将决定这种材质所对应的恰当的声音
扩展阅读:经过虚拟声学来让音景更逼真动听
Wwise SDK示例IntegrationDemo、IntegrationDemoMotion 代码所在目录:SDK\samples\IntegrationDemo 可执行文件目录:SDK\Win32_vc150 | x64_vc150\Debug | Profile | Release\bin
注:上下方向键选择菜单项,回车进入菜单,Esc返回上一级菜单
Wwise编辑器
音频设计师在Wwise编辑器(具体使用请参考:Wwise Help)中完成声音的集成和设置,并经过UE4和unity的Wwise插件,将制做好地资源导入到游戏编辑器中
Wwise编辑器是一款插件式架构的工具,其功能由众多插件提供,开发者可编写本身的插件来扩展其功能
其功能变动可在官网上经过最新版本的Release note及之前版本的Release note获取
① Master-Mixer Hierarchy(主混音器层级结构)
Actor-Mixer Hierarchy中的声音和Interative Music Hierarchy中的音乐,最后会流向Master-Mixer hierarchy(主混音器层级结构)下的总线中进行统一的编组和混合,并输出声卡。
Master-Mixer hierarchy 是个层级结构,其顶层为Master Audio Bus(主音频总线)每一层均可以拥有任意数量的子总线;各条总线都有一组属性和行为,可用它们来统必定义经过总线的声音的听觉效果和播放方式
咱们能够将全部不一样的音频结构分红如下四种类别:Voice(语音)、Ambience(氛围)、Sound Effect(声音效果)和Music(音乐),而后用不一样的子总线进行独立地编组和控制
除了能够输出音频到Audio Bus(辅助发送) ,每一个Interactive Music或 Actor-Mixer Hierarchy对象还能够指定最多四个User-Defined Auxiliary Send(用户定义的辅助发送)。
一样,Audio Bus自己也能够具备最多四个User-Defined Auxiliary Sends。辅助发送容许将音频信号的一部分发送到其余总线(即 Auxiliary Bus)中,进行并行处理。
Game-defined Auxiliary Sends(游戏定义的辅助发送) 功能与User-Defined Auxiliary Sends同样,勾选开启后,可供游戏运行时使用
② Actor-Mixer Hierarachy(角色混音器层级结构)
用来分组和组织工程中的全部声音和振动素材。层级结构的最底层是全部单独的声音和振动对象。
用户能够定义这些单独对象的属性(例如音量、音高和位置)和行为(例如随机或顺序播放),还能够将这些对象组合在一块儿,做为一个总体来定义它们的属性和行为。
组合使用这些对象类型【Sound Object(声音对象)、振动 FX(振动效果)对象、Container(容器)、Actor-Mixer(角色混音器)】来对素材分组和搭建工程结构
③ Interactive Music Hierarchy(互动音乐层级结构)
使用树状层级结构来管理,便于制做出动听的互动音乐
Wwise编辑器功能:
(1)内容制做(Author):构建声音(Sound)、振动(Motion)和音乐(Music)结构并定义属性和行为
(2)模拟(Simulate):验证艺术方向和模拟游戏体验
(3)集成(Integrate):早期集成,无需额外编程
(4)混合(Mix):在游戏中实时混合属性
(5)性能分析(Profile)
Wwise2019.1.3(Build7048) 官方可安装的插件:
名称 | 开发者 | 功能说明 |
Wwise Convolution | Audiokinetic | 编辑混响效果 |
Wwise Motion | Audiokinetic | 用于制做振动数据 |
Wwise Reflect | Audiokinetic | 根据听者、发声体与反射面(如墙壁、天花板和地板)的距离来动态地呈现早期反射 |
Wwise SoundSpeed Air, Wwise SoundSpeed Impact | Audiokinetic | 一款专用声音生成器 SoundSpeed Air可生成无数种风声和呼啸声效果 SoundSpeed Impact可方便经过交叉合成建立现实中不存在的各类独特声音 |
Wwise SoundSpeed Grain | Audiokinetic | 一款专用声音生成器 可用于建立粒子效果、3D 环境声与房间底噪、纹理化声景以及时域时间拉伸与音高变换,并方便制做各类持续低音、UI 及科幻音效和音乐。 |
Audio Ease Altiverb for Wwise Convolution | Audio Ease | 为Wwise Convolution插件提供声音素材库 |
Auro Headphone | Auro Technologies | 三维声音 |
iZotope suite | iZotope | Trash工具套装、Hybrid Reverb等音效设计工具 |
McDSP ML1, McDSP Futzbox | McDSP | 电影和音乐行业专业音效设计工具套装 |
Microsoft Spatial Sound Platform | Microsoft | Microsoft给Xbox和Windows提供空间音效支持而开发的平台级解决方案。它可以完美地整合环绕和俯仰(听者头顶或脚下)音频提示。 |
Gaming Multimedia Engine | Tencent | 由腾讯云推出的一款游戏语音解决方案 |
Nuendo Game Audio Connect | Steinberg Media | 中间件,实现Nuendo与Wwise无缝衔接 |
Resonance Audio SDK | 全新的立体声音效软件开发套件 Resonance Audio ue4插件 | |
REV 2 | Crankcase Audio | 利用高级粒子算法和自动循环混合合成技术创做逼真、强劲的发动机音效 |
Wwise ASIO | Audiokinetic | 方便链接ASIO兼容设备。这对线下实体场馆娱乐 (LBE) 来讲很是有用。 |
Wwise Channel Router | Audiokinetic | 一款免费的混音器插件,方便将音频混音并输出到特定的目标声道。 它可以知足多声道或非传统扬声器部署需求,尤为适合多输出和非标准配置。 |
基础概念
耳朵能听获得的声波长在17毫米到17米之间,其中短波长更倾向于碰到障碍物反射,而长波长会衍射绕过障碍物;对于比较薄的障碍物,不能把声波所有吸取,还会有透射现象
距离衰减(Distance Attenuation):模拟音频信号在发声体远离或背离听者时的天然衰减
自动闪避(Auto-ducking):下降一个音频信号的音量电平,以便让另外一并行音频信号更加突出
虚声部(Virtual Voice)
为了在大量声音同时播放时保持最佳的性能水平,低于特定音量电平的声音不该占用宝贵的处理器机能和内存。
声音引擎能够不播放这些没法听到的声音,而将它们放到虚声部列表中排队。
Wwise 能够继续管理和监控这些声音,可是这些声音一旦进入虚声部列表,就再也不由声音引擎处理,于是不会占用硬件的任何一个实声部。
声音能够在physical voice(实声部)和virtual voice(虚声部)之间来回切换,方法是指定当声音的音量电平低于阈值或声音数超出播放限制时,容许让这些声音进入虚声部。
当音量达到 Wwise 用户在 Project Settings(工程设置)中设定的阈值时,声音将被添加到虚声部列表,而且声音处理工做中止。
随着音量电平的上升(当声音从外部移入到最大距离半径之内时就会发生这种状况),声音将从虚声部列表移到实声部,在此声音将再次由声音引擎进行处理。
高动态范围音频(HDR 音频):将宽泛的电平范围动态地映射至更适合于声音系统数字输出的范围的实时系统
Ambisonics(使用Ambisonics)是一种环绕声技术,能够覆盖水平面以及听者上方和下方的区域。会用一个常规的球面表示法来描述听者周围的声场
声障(Obstruction)是指游戏几何空间中的对象(例如墙壁或立柱)部分挡住了声源与听者之间的空间时的声学现象。如:躲在柱子后面的玩家,仍可听到前方的枪声
在声障条件下,听者能够清楚地听到声音的反射声,但直达声听起来很模糊。声音的改变经过下降音量、增长信号直通路径的低通滤波器(LPF)或者同时调整二者来实现。
声笼(Occlusion) 是指游戏几何空间中的对象彻底挡住了声源与听者之间的空间时的声学现象。如:虽然隔着一堵墙壁,但玩家仍能够听到隔壁里面的枪声。
在声笼条件下,直达声和反射声都很模糊。声音的改变经过下降音量、增长信号直通路径的低通滤波器(LPF)或者同时调整二者来实现。
声障、声笼和环境效果(Environmental )可同时发生,处理管线以下:
更多参考:环境中的声障和声笼 定义工程的声障和声笼曲线
声音管线
下图为详细地声音处理的管线过程(参考:理解声部管线)
编号 | 描述 |
1 | 音量应用至全部声道
LPF 属性和声笼 LPF 曲线(工程设置) |
2 | 各声道独立音量
|
3 | “干声路径”
声障 LPF 曲线(Project Settings) |
4 | “湿声路径”
|
5 |
|
6 |
|
7 | 总线音量** |
注:* 声部音量 = 音量滑杆 + RTPC + 状态 + Set Voice Volume Action
** 总线音量 = 滑杆 + RTPC + 状态 + Set Voice Volume Action
五大组件
Wwise制做音频并集成到游戏中,包含如下5个重要组件
Audio Object(音频对象):游戏中的各类语音和 SFX(音效声),由音频设计师在Wwise编辑中建立和管理
注1:Audio Object内部支持多语言版本的组织和管理
注2:Audio Source是AudioObject(音频对象)和Audio File(音频文件)之间的独立层
注3:Audio Object不只支持Audio Source(音频源),还支持Plug-in Source(源插件)
Wwise配备各类各样的源插件,包括Tone Generator(乐音生成器)、Silence(空白)和 Audio Input(音频输入)插件;固然程序员可开发出自定义的源插件
Audio Object(音频对象)能够组合起来建立层级式的工程结构,音频属性和行为可应用于层级结构的不一样级别。
它们主要用于根据特定行为(例如随机、顺序、切换等)来播放一组对象。例如,能够将全部枪击声集中到一个随机容器中,以在游戏中每次开枪时播放不一样的声音。
全部音频对象被连线到总线层级结构中后,还能够在总线上做为总体来附加属性和效果。
Game Object(游戏对象):发声体(emitter),由程序员在游戏中建立和管理
Game Object能够是游戏中可以发出声音的对象,如:角色、武器、环境对象(如火把)等
也能够将Game Object指定给某个游戏对象的不一样部分,如:能够将不一样的Game Object指定给巨人角色的不一样部分,以使巨人的脚步声和配音听起来好象来自3D声音空间中的不一样位置
为了告诉在游戏中如何播放每一个声音,Game Object须要存储如下一些信息:
① 与Game Object相关联的音频对象的属性偏置值,如:音量、音高等 注:与其余属性不一样,衰减应用于Audio Object而非Game Object
② 3D位置和朝向
③ Game Sync信息,如:State(状态)、Switch(切换开关)和 RTPC(实时参数控制)等
④ 环境效果
⑤ 声障(Obstruction)和声笼(Occlusion)
在使用Game Object以前,程序员须要在游戏代码中注册Game Object。当再也不须要时,应该显示地销毁它们。
建立Game Object后,程序员仅需PostEvent(发送事件)、设置 Game Sync【包括State(状态)、Switch(切换开关)和 RTPC(实时参数控制)】以及游戏环境。
Wwise设置声音有一个Scope(做用范围)概念,其决定把属性和事件应用在游戏的哪一个层次上(Game Object或全局范围内)
如,在fps游戏中,当前角色在城市中行走时,若想更改其脚步声相关联的属性或音效,就只能在与对应双脚的Game Object层次上局部应用这些更改。
另外一方面,若是角色潜入水中,则须要更改周围环境中继续播放的全部音效,例如爆炸和车辆,则须要进行全局更改
Event(事件):驱动游戏中的音频;Event将 Action(如:播放、中止、暂停、调整音量、静音等)应用于工程层级结构中的不一样声音对象
例如:玩家被打死时使用的事件:播放一个特殊的“Die”(死亡)声音,并中止当前正在播放的“EnergyShield”(能量护盾)声音
Event有两种类型:
Action Event(动做事件):这些事件使用一个或多个动做(例如播放、中止、暂停等)来驱动游戏中的声音、音乐和振动
其中每一个动做还拥有一组过渡(Transition)参数,用于延迟或者淡入淡出来衔接先后的对象。
另外,每一个动做都有相应的做用范围设置,是应用于全局全部Game Object仍是触发该事件的特定Game Object
Dialogue Event(对白事件):这些事件使用一种带State和Switch的决策树来动态地肯定播放哪条对白
例如:在曲棍球游戏中,如何可以生成实况解说“克劳斯(Cross,人名)射门并得分了!”
为游戏建立Event并打包成 SoundBank(声音库,是全部工做成果的集合,其中包含构成游戏所需的最终音频数据),而后将游戏中加载这些SoundBank,就能够指定对哪一个Game Object执行Event了
有两类bank:
① 初始化bank(Init.bnk):一般在游戏开始时当即加载。包含工程全部通常信息的特殊bank,包括有关总线层级结构的信息和有关state、switch、RTPC 和总线效果的信息
② SoundBank:包含事件数据、声音和振动数据的文件。SoundBank 不一样于初始化bank,通常在游戏的不一样时间点加载和卸载,这样能够提升平台内存利用率
Game Syncs(游戏同步体):改变声音的变化和替换行为
Game Syncs有四种类型:
① State(状态):游戏中的物理和环境条件发生了变化,将在全局范围内影响现有音效、音乐或振动(motion)的属性
当Game Object注册了多个 State 时,多个State变化的效果会进行叠加
如:在fps游戏中,当玩家在不一样的地面(如混凝土地面、草地和泥土地面)上行走和跑步,但愿在每种地面上听到不一样的脚步声
在Wwise编辑器中,为不一样地面建立switch,并将不一样的脚步声Audio Object指定给适当的switch。在游戏中,当玩家在不一样的地面上行走时,将对应的switch激活,来播放其相应的脚步声
② Switch(切换开关):为在不一样条件下须要不一样声音、音乐或振动的特定Game Object提供的条件替换项
Audio Object被组织起来并指派给各个Switch,从而当游戏中一个条件变为另外一个条件时,可以播放到对应的Audio Object
与RTPC相似,在Wwise中能够将Game Parameter(游戏参数)值映射到Switch,来驱动Switch的切换
例如:在fps游戏中,当玩家在不一样的地面(如混凝土地面、草地和泥土地面)上行走和跑步,但愿在每种地面上听到不一样的脚步声
③ RTPC(Real-Time Parameter Control,实时参数控制):将Game Parameter(游戏参数)映射到音频属性值,来“自动执行”属性更改
例如:赛车游戏中,发动机声音的音量和音高须要随着赛车速度和 RPM(每分钟转速)的上升和降低而波动
④ Trigger(触发器):对游戏中自发事件的响应,将启动插播乐句(Stinger) 注:插播乐句是叠加在当前正在播放的音乐上并与之混音的简短乐句
例如:格斗游戏中,当前玩家角色是一位忍者斗士,当其施展强力疾风腿时,能够播放一个疾风声来增强场景的听觉感染力
Listener(当前玩家):声音的接受者,由程序员在游戏中建立和管理
在游戏3D空间中拥有位置和朝向。在游戏期间,Listener的坐标(程序员必须确保Listener的位置信息为最新状态)与Game Object的位置进行比较,以便将与Game Object相关联的3D声音指定给相应的扬声器,来模模拟实的3D环境。
在单人版游戏中,永远只能有一个视角,所以一个 Listener 就够了。但若是多人同时在一个系统上玩游戏,或者同时显示多个视角,则每一个视角须要有本身的Listener,这样才能正确地为全部视角渲染音频。Wwise 声音引擎支持多达8个Listener。
在默认状况下,每一个Game Object只能指定给第一个Listener。然而,程序员能够灵活地将任何Game Object动态地指定给任何Listener,或取消这种指定
典型的游戏将拥有如下类型的声音(参考:如何在游戏中设置声音):
局部环境声 —— 发声体保持在一个位置上。如:大型机器或喷泉发出的声音。
非局部环境声音 —— 发声体可移动,并不依附于某个特定游戏对象。如:环境中的鸟鸣声或昆虫声音。
移动对象声音 —— 发声体随某个特定游戏对象一块儿移动。如:游戏角色、动物等触发的任何声音(狗叫声或卫兵的吆喝声)。
游戏界面声音 —— 此声音与特定游戏界面要素或者其它保持在屏幕固定位置上的道具相关联。例:平视显示器 (HUD) 的部件、菜单声音(按钮、导航)或第一人称射击游戏中的枪声。
在潜行类fps游戏中,一组特工必须前往一座偏远的火山岛,恐怖分子在岛上劫持了一位特工。此任务很是危险,特工们必须团结合做,紧跟彼此。 当特工们潜行经过敌人的丛林基地时,他们将经历如下声音和振动:
能够在Wwise中对不一样声音进行设置(如:使用3D空间化对象),来提高玩家体验游戏时的沉浸感(参见:定位技巧和经验总结),结果以下:
(1)特工脚步声。这是一款第一人称游戏,所以主人公的脚步声应始终伴随着摄头。由于这些声音没有移动和衰减,因此在这种状况下将基本的 Speaker Panning(扬声器声像摆位)设置为 Direct Assignment(直接指派)较为合适。
然而,对于其它的特工,您须要将声音附加到“agent”游戏对象上,使脚步声与他们的动做相匹配。 在这种状况下,结合使用 3D Spatialization(3D 空间化)和 Emitter(发声体)定位较为合适;不过,不须要启用衰减。
(2)照亮敌人丛林基地的火把的燃烧声:这些声音附加到“torch”游戏对象上。虽然它们固定在一个地方,但发声体的位置及其到话筒的距离将随着玩家的移动而改变。 若要模拟这种类型的声音,可结合使用 3D 空间化、Emitter 定位和衰减。
(3)一群恐怖分子在屋内交谈的声音: 这些声音附加到“terrorist”游戏对象上。这些对象能够在游戏环境内自由移动。 若要模拟这种类型的声音,可结合使用 3D 空间化、Emitter 定位和衰减。
(4)蚊子在头顶上飞舞的嗡嗡声:可听到蚊子在周围飞舞时发出的嗡嗡声,但看不到蚊子。由于发声体必须在 3D 空间内移动,
因此在这种状况下的 3D 空间化使用 Emitter with Automation(发声体自动化)或 Listener with Automation(听者自动化)定位较为合适。
同时使用空间化和衰减的一系列随机播放声音路径能够建立极其逼真的蚊虫声音。在选择 Listener with Automation 选项时,虽然没有实际游戏对象,但会有嗡嗡声随玩家移动。
固然,也可选择 Emitter with Automation 选项,并使用“蚊子”游戏对象来定义能听到嗡嗡声的死水潭区域。
(5)从总部接收最新情报的声音:从总部接收情报的通讯声既不与任何特定游戏对象关联,也不在周围环境中移动,所以在这种状况下将 Speaker Panning 设置为 Direct Assignment 较为合适。
因为最新情报对于完成任务很是关键,所以您还可能须要将某些或所有声音传送到中置扬声器。
(6)执行任务的特工们之间的耳语声:队友之间的耳语声将关联至各自的游戏对象,所以这些声音使用 3D 空间化较为合适。特工们相互掩护依次行动,须要某种空间定位,但他们既然必须协同做战,所以他们之间的沟通不须要任何衰减。
因为队友之间的沟通对于完成任务很是关键,所以您还可能须要将某些或所有声音连通到中置扬声器。
(7)在成功完成任务后用于炸毁基地的炸 药的爆炸声:特工将听到和感觉到炸 药的爆炸声。这些声音和振动对象将被绑定在游戏中会爆炸的对象上。虽然它们固定在一个地方,但发声体/振动体的位置及其到听者的距离将随着玩家的移动而改变。
若要模拟这种类型的音效,可结合使用 3D 空间化、Emitter 定位和衰减。
(8)岛上火山持续发出的轰鸣声: 火山发出的轰鸣声是该偏远岛屿上持续发出的声音和振动效果。声音和振动对象最好附加在“island”游戏对象上。
添加一些衰减可在玩家靠近该岛时,让轰鸣声听起来更加响亮或密集。由于声音和振动没有移动,因此在这种状况下不须要启用空间化。
(9)火山最后喷发声:爆炸致使火山爆发。在最终场景中,玩家坐在运输直升机后排逃离危险之地。火山喷发会产生震耳欲聋的环境声,您可使用 Listener with Automation 定位选项进行 3D 空间化处理,并应用衰减设置。
在 Position Editor (3D Automation) 中,可建立一个或多个路径,来反映直升机和玩家如何上下颠簸、迂回前行,并在烟雾弥漫的风暴中艰难地躲避四溅的碎屑,最终顺利飞越火山口。
咱们能够启用 Hold Listener Orientation,从而经过不一样的扬声器来播放火山喷发声,并反映玩家(听者)所处位置。
假如采用多扬声器配置,还可将 3D Spatialization(3D 空间化)选项设为 Position + Orientation(位置 + 朝向),从而表现出直升机不断变换朝向和火山喷发声逐渐衰减,加强真实性。
(10)互动音乐:由于音乐不与任何特定游戏对象关联,且无需在环绕声环境中移动,因此使用 Speaker Panning 较为合适。在示例中,咱们但愿对部分 Music Track(音乐轨)进行声像摆位,在先后扬声器之间平衡音乐的音量。
最后,咱们能够想象火山喷发声逐渐过渡至欢庆的音乐,而后游戏场景完美结束。为了实现两种声音之间的平滑过渡,
可针对 Speaker Panning / 3D Spatialization Mix 设置 RTPC 曲线:对应值从 100(仅启用 3D Spatialization)逐渐降至 0(仅启用 Speaker Panning)。
声音 |
Speaker Panning |
Attenuation(衰减) |
3D Spatialization |
|||||
---|---|---|---|---|---|---|---|---|
Direct Assignment |
Balance-Fade |
Attenuation(衰减) |
Emitter(发声体) |
Emitter with Automation |
Listener with Automation |
|||
特工的脚步 |
|
|||||||
火把 |
|
|
||||||
恐怖分子交谈 |
|
|
||||||
蚊子嗡嗡声 |
|
|||||||
总部发来的最新情报 |
|
|||||||
特工沟通 |
|
|||||||
爆炸 |
|
|
||||||
火山轰鸣 |
|
|
||||||
火山喷发声 |
|
|
||||||
互动音乐 |
|
扩展阅读