目录
现在,我们要创建 Event 来将刚才导入的声音与游戏中的动作关联。
程序员已为游戏中所有可能需要音频响应的地方添加代码行,以便将消息由游戏传给 Wwise 声音引擎来告知其发生了什么。这样的消息称为 Game Call(游戏调用)。Game Call 会发出“嘿,刚才投掷了 Ice Gem”之类的简单消息,但在发往 Wwise 时其实是用一串编了码的文本或数字来表示的。我们必须在 Wwise 中创建对应的 Event,这样 Wwise 声音引擎才能接收传入的 Game Call。在收到消息后,Wwise 会基于声音设计师的设定做出一系列的反应。
-
在 Project Explorer(工程资源管理器)中,右键单击 "IceGem_Blast" Sound SFX(音效)对象,然后依次选择 New Event > Play(新建事件 > 播放)。
这时会创建 Event。
在默认情况下,会基于 Sound SFX 对象的名称将 Event 命名为 Play_IceGem_Blast。Event 的名称必须与游戏引擎发来的对应 Game Call 的名称完全一致。
通常,由声音设计师决定声音引擎要获知哪些信息,并据此来在 Wwise 中分别创建对应的 Event。然后声音设计师再将这些 Event 的名称告知于程序员,以便其在游戏引擎中编写代码来使用相同的名称发送 Game Call。在本例中,《Cube》游戏引擎已经编好了代码,Game Call 的名称也已定义。在此,每次投掷 Ice Gem(冰晶宝石)都会发送名为 "Fire_IceGem_Player" 的 Game Call。
-
在 Secondary Editor 中,右键单击 Event(事件)并选择 Rename(重命名)。然后,将 Event(事件)重命名为 Fire_IceGem_Player,以与 Game Call(游戏调用)的名称保持一致。
之后,Wwise 会为工程生成相应的代码。在那些代码里面,所有对象的名称都会被自动转为小写字母来处理,所以对象名称不区分大小写。
-
查看 Transport Control(走带控制)的标题栏,确认其显示的是 Fire_IceGem_Player。若非如此,请在 Contents Editor(内容编辑器)中单击 "Fire_IceGem_Player" Event(事件)。
-
在 Transport Control(走带控制)中,单击 Play(播放)按钮或按下空格键。
这时应会听到 Ice Gem Blast(冰晶宝石暴击)音效,证明将 "Fire_IceGem_Player" Event 关联到了之前导入的 "IceGem_Blast" Sound SFX。注意,Wwise 不仅允许播放 Sound SFX 对象,还允许播放 Event。这样非常方便模拟游戏中发生的情形。