版本
总线(bus)是一种用来对工程中对象进行分组的机制,目的是管理混音和最终声音输出,我们将在Managing Output中进行详细介绍。但是,在工程完成之前,清楚各总线的角色以及它们的在整个工程结构中的工作方式至关重要。
就像需要为工程素材定义结构来以高屋建瓴的方式管理素材一样,您还需要为工程组织输出。通过在称为 Master-Mixer Hierarchy(主混音器层级结构)的层级结构中对输出总线进行分组,您可以为工程中的通路定义相对属性、状态、RTPC 以及效果器。
您应花些时间来思考如何以最佳方式组织工程通路以优化混音过程。例如,您应通过将类似氛围音乐或炮火声的声音连接到相应总线来简化游戏音频的混音。
首先,您必须清楚 Master-Mixer Hierarchy 中的默认结构。它包含多条主总线。每条都有自己的作用和层级结构:Master Audio Bus 和 Secondary Bus 层级结构。
Master Audio Bus(主音频总线)层级结构是输出总线的结构,工程中的声音和音乐连接到它上面。它包含三个不同层级的功能:
Master Audio Bus —— 主音频总线。层级结构中的顶层元素,它决定了音频的最终输出。您可以重命名或删除自己创建的任何 Master Audio Bus。另外还可将效果器应用于 Master Audio Bus,并将 Master Audio Bus 移到不同的 Work Unit 或 Virtual Folder。
音频总线 —— 若干条可选总线,可分组到 Master Audio Bus 之下,以有助于组织和提供混音。您可重命名、移动和删除这些总线;还可以在总线上加效果器。
辅助总线 —— 若干条可选总线,可分组到任何辅助总线或音频总线之下。与音频总线类似,您可以重命名、移动、复制和删除辅助总线;您还可以对辅助总线应用效果器。工程中任何位置的声音对象都可发送到 Auxiliary Bus,来调节音量、总线配置、定位和 RTPC 并应用效果器或状态。在辅助总线中无法做闪避、HDR 混音和声部调节。
备注 | |
---|---|
辅助总线无法将音频总线作为子项。它们只能将其它辅助总线作为子项。 |
您可以通过以下 Wwise 界面图标来辨别两种总线类型:Audio Bus 和 Auxiliary Bus。
图标 |
代表 | |
---|---|---|
|
Audio Bus | |
|
Auxiliary Bus |
下表列出了所有可能的 Audio Bus 和 Auxiliary Bus 处理状态图标。有关处理状态的详细信息,请参阅“了解总线图标和处理状态”一节章节。
图标 |
代表 | ||
---|---|---|---|
(Audio Bus) (Auxiliary Bus) | Mixing | ||
(Audio Bus) (Auxiliary Bus) | Processing Audio Objects | ||
(Audio Bus) | Not Mixing | ||
(Audio Bus) (Auxiliary Bus) | Processing |
默认情况下,Actor-Mixer Hierarchy 中的声音会被连通到 Master Audio Bus。但是,在您建立输出结构时,您可以系统地将对象连通到您创建的总线上去。
备注 | |
---|---|
您可以在 Master-Mixer Hierarchy(Master-Mixer 层级结构)下创建 Work-Unit(工作单元)和 Virtual Folder(虚拟文件夹)。这样便于在团队工作环境中管理总线结构。 |
您可以在 Default Object Values(默认对象值)对话框中更改工程的默认音频通路。有关这些默认设置的详细信息,请参阅“为工程指定 Default Object Value”一节。
Secondary Bus(二路输出)属于音频总线层级结构,用于为主输出(电视或扬声器)以外的其它输出信号内容进行混音。您可以为工程所需的各类型输出创建足够多的 Secondary Audio Bus(二路输出总线)。例如,二路输出可以用作游戏手柄扬声器、聊天耳机或者 DVR-bypass 输出。和主输出结构一样,二路输出结构也可以包含任意数量的子总线和辅助总线。
连通到 Master Secondary Bus 层级结构的声音将使用以下两种方法之一发送到二路输出:
直接将声音的 Output Bus(输出总线)属性设置为 Secondary Bus 层级结构内的任何总线。对于通常只与一个二路输出相关联的声音,这是首选方法。例如,玩家开枪的声音,网球拍击球的声音、PDA (掌上电脑)声音、玩法反馈等。
将声音连线至 Master Audio Bus 层级结构内的任何总线,并添加用户或游戏定义的辅助发送,输出至 Secondary Bus 层级结构内的辅助总线。如果希望同一声音在电视和多个输出(例如用手柄扬声器模拟间谍相机或广播)中同时听到,则这是首选方法。
总线层级只是混音时使用的层级结构。要将该混音结构与特定输出相关联,请在对应的 Master Bus 上选择相应的 Audio Device Shareset。请参阅 Wwise 随附的 “内置音频设备”一节 列表。
必须要注意的是,对于游戏中多个玩家可能同时使用的输出端(如游戏控制器、耳机等),相关混音层级结构会针对每个玩家进行复制。对于特定类型的输出,工程定义的仅仅是特定的混音“处方”。实际信号输出到该结构的哪个副本则取决于听者和游戏对象的关系,是由程序员设置的。
默认情况下,创作期间设计工具会将所有声音输出到主声卡,方便您预览声音。<不过,您可以从 Audio(音频)菜单打开 Authoring Audio Preferences(设计工具音频首选项)对话框,然后选择不同的硬件设备进行测试。
Wwise 为构建总线层级结构提供了很大的灵活性。也就是说,组织工程的声音结构时条条大路通罗马。尽管如此,以下简单示例仍为您提供了一些开发总线结构的常见做法,无论工程的素材和要求的具体组合形式。
在以下 Schematic View 截图中,我们可以看到工程中的 Master Audio Bus 下有四条 Audio Bus,同时还有三条 Secondary Master Bus。
对于 Master Audio Bus 结构,我们有以下总线:
Environmental Bus -- 环境总线。此总线会基于不同环境因素(例如混响)对玩家可能听到的各种声音进行分组,例如玩家或其它角色走在砾石地板、木地板或水泥地板上的脚步声。
Music -- 音乐。此总线会对所有音乐进行分组,无论这些音乐是在游戏场景中播放的,还是在游戏外操作 UI 菜单时播放的。
Voices -- 语音。此总线会对大多数角色对话进行分组。
Voices_Radio -- 语音_无线电。这款游戏中有大量的对话,还有很多语音需要特殊设置来表现无线电中发出的声音效果, 所以我们还在 Voices 这条总线之外添加了这条总线。组织这条总线的方式可能有很多,一种方式是将其设置为 Voices 总线的子总线。但是,尽管这两条总线在概念上类似,但这条总线所需的声音输出以及隐含的混音方式告诉我们,更简单的做法是将其直接定义为 Master Audio Bus 下的单独总线。
为了更方便地调节位于大型飞机库中的声音,我们还添加了一条辅助总线:Hangar_Env。这样做后,当游戏场景移入飞机库时,我们可以将声音(手动或通过游戏调用)发送至该总线,我们可在此处运用玩家在此类环境中可能会听到的开放式回声的混响。
我们还有另外几条主总线,每条都作为一个二路输出的信号源:
Motion Bus - 振动总线。此总线用于接收所有 Motion 信号(也称为 rumble),并将它们输出到相应的控制器。本例中不存在子总线,尽管对于振动也允许进行更复杂的混音。
Non Recordable Bus - 非录音总线。系统允许有一条不会被 DVR (Digital Video Recorder) 录音的独立输出。希望防止玩家内录和发布版权音乐的话,这是理想的解决方案。对于防止玩家内录和发布版权音乐,这是理想的解决方案。
Game Pad Bus - 游戏控制器。控制器的扬声器可输出玩家将更直接地听到或至少是能明显区分的声音。它非常适合像角色头部撞墙发出的沉闷的声音这样的情况。
技巧 | |
---|---|
建议不要同时将同一声音发送到二路总线和音频总线! 每个系统都有特定的延迟量。即使是几毫秒的差异,同一声音的两条输出间的延迟也将会产生明显的不和谐。 |
备注 | |
---|---|
您可以使用声音对象(包括音乐文件)生成振动数据。有关使用现有声音对象生成振动的详细信息,请参阅“通过现有声音生成振动效果”一节。 |