版本
提升游戏中声音、音乐和振动的一个方式是为工程层级结构中的对象应用若干个效果器。使用 Wwise 的开放式体系结构,您可以轻松创建和定义自己的效果器插件。这些不同的效果器可令游戏声音、音乐和振动更生动和真实。此外,为了帮助您更好地完成此过程,Wwise 自带一些效果器插件和出厂设置共享集。
For information about effects used to recreate environment acoustics, refer to “Using Effects to implement environment acoustics”一节.
效果器的组成是一些属性的集合,这个集合被称为一个实例(instance)。在定义实例时,您可以将其用作共享集,这用来将效果器实例作用于工程内的许多不同对象。使用共享集的优势是您无需为各个对象单独修改效果器属性。但是,如果您愿意,则还可以为一个特定对象定制自定义实例。
在对共享集的效果器属性做出更改后,所有指定了该共享集的对象都会受到影响。
在您向层级结构中的对象或总线应用效果器时,最常见的做法是将此效果器用作共享集。Wwise 自带多个默认和预定义的效果器共享集,但您可能会需要创建自己的共享集来扩展此列表。各个效果器共享集为您提供效果器的一个不同版本,您可以将其作用于工程中的各种对象。
您可以在 Wwise 中的两个位置创建效果器共享集。
在 Project Explorer 中
在 Property Editor 中
在 Project Explorer 中创建效果器共享集的方法如下:
在 Project Explorer 中,切换到 ShareSets 选项卡。
在 Effects(效果器)部分中,右键点击工作单元以创建共享集。
此时将会显示快捷菜单。
点击 New Child(新建子项)。
此时将会显示可用效果器插件的列表。
选择您要创建的效果器类型。
新实例会显示为层级结构中工作单元的子项。
将默认名称替换为最适合该新共享集的名称,然后按 Enter。
共享集的新名称以及括号中的效果器类型会显示在效果层级结构中。
备注 | |
---|---|
各个共享集的名称彼此不可重复,并且必须仅包含字母、数字和下划线。它必须以字母或数字开头。您可以随时对共享集进行重命名,方法是右键点击该共享集,选择 Rename(重命名)并键入新名称。在共享集集成到游戏中后,只有在绝对必要的情况下,您才需要重命名该共享集,因为重命名将要求额外编程。 |
在 Property Editor 内创建效果器共享集的方法如下:
将对象加载到 Property Editor 中。
备注 | |
---|---|
若对象不是顶层对象,则必须先选择 Override parent 才能选择 Effect。 |
In the Primary Editor, in the Effects table, click Add Effect .
此时将会显示可用效果器列表。
将鼠标置于要应用的该类型效果器上。
此时将会显示相应效果器共享集的列表。
点击 New(新建)。
The New Effect dialog opens.
选择要在其中创建效果器共享集的工作单元。
为共享集键入名称。
备注 | |
---|---|
各个共享集的名称彼此不可重复,并且必须仅包含字母、数字和下划线。它必须以字母或数字开头。您可以随时对实例进行重命名,方法是右键点击该实例,选择 Rename (重命名)并键入新名称。 |
单击 OK(确定)。
此时会创建新共享集并将其作用于所需对象。
如果您不再需要某个共享集,则可以删除该共享集。在删除某个共享集之前,您应确保没有对象还在用到它。如果您删除某个共享集,则采用了该共享集的对象会自动删除该共享集。
删除共享集的方法如下:
在 Project Explorer 中,切换到 ShareSets 选项卡。
在 Effects(效果器)部分中,点击要删除的共享集。
按 Delete 键。
该共享集被删除掉了,并且也从采用它的所有对象中移除了。
After you have created your Effect ShareSets, you can edit them and apply them to any Wwise object in your project hierarchy. You can apply up to 255 different effects to each Wwise object. 如果应用了效果器链,则效果器会以列表中显示的顺序进行处理。应用效果器的顺序至关重要,因为顺序会改变对象的最终结果。
You can apply Effects to busses in the same way you apply them to other objects. 在效果器作用于总线时,所有传入音频数据都会在应用效果器之前进行子混音(sub-mixing)。
Some effects can be quite CPU intensive, so it is important that you develop an efficient strategy for using them. 关于应用效果器的某些技巧,请参阅“Effects tips and best practices”一节。
技巧 | |
---|---|
不建议将基于时间的效果器(例如 RoomVerb 混响器或延迟)作用于音乐对象,因为这会干扰已经指派给这些对象的基于时间的属性和行为。To avoid this interference, you can instead apply the Effect to a bus the object is routed to. |
将效果器共享集作用于对象的方法如下:
将对象加载到 Property Editor 中。
切换至 Effect 选项卡。
备注 | |
---|---|
若对象不是顶层对象,则必须先选择 Override parent 才能选择 Effect。 |
在 Effects 表中,点击 Selector 按钮(>>)。
此时将会显示可作用于对象的效果器列表。
将鼠标置于要应用的该类型效果器上。
此时将会显示相应效果器共享集的列表。
点击要应用的共享集。
该共享集会作用于该对象。
重复步骤 3-5 将其它效果器作用于该对象。
备注 | |
---|---|
You can apply up to 255 different effects to an object. |
Wwise 中的效果器有两个类别:
仅作用于单个对象的自定义效果器。在您更改自定义效果器的属性时,只有这个对象会受到影响。
可作用于许多对象的共享集。在更改共享集属性时,所有使用该共享集的对象都会受到影响。
在默认情况下,您创建的所有效果器初始都为 ShareSets。但是,您可能会需要仅为单个对象来微调共享集。为此,您可以将效果器共享集转换为一份自定义效果器。例如,假定您已创建名为 Funky_Reverb 的共享集,但您希望仅针对名为 Speech_1 的声音微调该共享集。您可以将 Funky_Reverb 作用于 Speech_1,将其转换为自定义效果器,然后进行更改。. 您所做的更改将仅作用于 Speech_1,而非采用了 Funky_Reverb 共享集的对象。
将共享集转换为自定义效果器的方法如下:
将已应用该效果器的对象加载到 Property Editor。
In the Primary Editor Effects Tab, Effects table, select Define custom from the Mode list for the Effect that you want to convert to a custom instance.
这份效果器的名称后会跟有单词“Custom”(自定义)。从现在开始,您对实例所做的更改将仅影响使用它的一个对象。
备注 | |
---|---|
您还可以创建自定义效果器实例,方法是将共享集的默认(自定义)版本作用于对象。原始共享集仍存在,并且对于任何采用了此共享集的对象而言,该共享集保持未变。 |
在将效果器应用于对象后,可通过旁通效果器来试听未经处理的原始版本。您可以为一个对象应用多个效果器,也可选择旁通各个或所有的效果器。您可以旁通层级结构中任意层级的效果器,也可在 Event Manager(事件管理器)中使用 Bypass(旁通)动作或者使用 RTPC 或 State(状态)来旁通游戏中的效果器。
在使用效果器的情况下,会增加运行时的 CPU 用量。若在 CPU 用量方面有顾虑,可旁通效果器并在 Performance Monitor(性能监控器)中察看其对 CPU 用量的影响。有关如何启用 CPU 相关计数器的详细信息,请参阅““Performance Monitor Setting”一节”章节。有关效果器和 CPU 用量的信息,请参阅““Effects tips and best practices”一节”章节。
旁通一个或多个效果器:
在 Object Tab(对象选项卡)或 Property Editor(属性编辑器)中打开对象。
选中 Effects(效果器)选项卡。这时 Effects 分区中会列出所有应用于所述对象的效果器。各个效果器显示在单独的行中。
备注 | |
---|---|
若对象不是顶层对象,则必须先选择 Override parent 才能选择 Effect。 |
通过执行以下任一操作来旁通单个或所有效果器:
若要旁通单个效果器,请在列表中找到该效果器,然后在行的右侧选中 Bypass(旁通)。根据需要重复操作。
若要旁通所有效果器,请在 Effects(效果器)列表底部选中 Bypass All(全部旁通)。
系统将不再对所选效果器进行处理。
将对象打包到 SoundBank 前,可以为应用到对象的各效果器选择离线渲染。这样可以节省游戏当中所用的 CPU 资源,不过会无法使用 Bypass Effect Event Action(旁通效果器事件动作)来旁通效果器。另外,在渲染效果器时,还会无法将 RTPC 曲线或 State(状态)变化应用于效果器。
在效果器链中渲染一个效果时,也将自动渲染它之前所有的效果器。For example, let's say you have a sound 对象 with the following three Effects applied to it:
Matrix Reverb(矩阵混响器)
Parametric EQ(参数均衡器)
Compressor(压缩器)
如果为 Parametric EQ 选择渲染选项,在打包到 Soundbank 之前还将渲染 Parametric EQ 和 Matrix Reverb 效果器。此外,若旁通了效果器链中的第一个效果器,则后续效果器即便没被旁通也无法进行渲染。
备注 | |
---|---|
若针对某个效果器同时选中了 Bypass 和 Render 选项,则将优先应用 Bypass 选项而不会对效果器进行渲染。 |
离线渲染效果器的方法如下:
将对象加载到 Property Editor 中。
Switch to the Effects tab of the Primary Editor.
备注 | |
---|---|
若对象不是顶层对象,则必须先选择 Override parent 才能选择 Effect。 |
在 Effects 表中,为您要渲染的各个效果器选择 Render(渲染)选项。
在生成 SoundBank 时,所选效果器以及之前所有的效果器都将预渲染至对象中。
备注 | |
---|---|
有关生成 SoundBank 的详细信息,请参阅“Generating SoundBanks for a project”一节。 |
您可以根据需要编辑任何效果器的属性。特别是,您有可能会需要先编辑新共享集或自定义效果器的属性,然后再应用它们。如果您不进行编辑,则效果器属性会保留其默认设置。通过将 RPTC 指派给某些属性,您可以进一步增强效果器。
在更改共享集的属性值时,所有使用该效果器的对象都将受到影响。如果编辑某自定义效果器实例,则只有应用了该效果器实例的对象会被更改。
备注 | |
---|---|
您可以使用预设来存储效果器属性并提高创建多份效果器的速度。有关预设的详细信息,请参阅使用 Preset。 |
编辑共享集的方法如下:
在 Project Explorer 的 ShareSet 选项卡中,双击要编辑的共享集。Or, click Edit in the Effect Tab in the Primary Editor.
此时将会为所选效果器打开 Effect Editor。
您可以按照项目中实际需要达到的听觉效果来定义效果器属性。
备注 | |
---|---|
有关效果器属性的完整说明,请点击相应 Effect Editor 中的 Help(帮助)按钮。 |
编辑自定义效果器的方法如下:
将对象或总线加载到 Property Editor。
Switch to the Effects tab of the Primary Editor.
在 Effect 表中,点击要编辑的自定义效果器的 Edit 图标(...)。
此时将会为所选效果器打开 Effect Editor。
您可以按照项目中实际需要达到的听觉效果来定义效果器属性。
备注 | |
---|---|
有关效果器属性的完整说明,请点击相应 Effect Editor 中的 Help(帮助)按钮。 |
要将自定义效果器实例的属性值返回到该实例基于的共享集的效果器,请点击 Reset Effect Settings(重置效果器设置)。