目录
-
-
- 相关视频
现在,"Music_State" State Group(状态组)可以为目前配置好的 State 正确选择所要播放的音乐了。《Cube》 的游戏引擎没有发送给 Wwise 任何关于 Music_State State Group 的信息。不过,游戏引擎中已经编好了程会在游戏中适当场合发送简单的 Event 游戏调用。例如,当玩家穿过倒数第二扇传送门后,这就意味着与 boss 怪的战斗要开始了,游戏引擎向 Wwise 发送一个 Event 调用,表明这场大战正在进行。如果打败了大 BOSS 并到达了最后一扇传送门,就视为过了这一关。这时会将另一 Event 调用发送到 Wwise 以示玩家取得了胜利。你可以使用这些 Event 来设置游戏状态,这样 Wwise 201 Music Music Switch Container 就可以选择恰当的音乐了。
-
在 Project Explorer 中,选择 Events 选项卡,展开 Events 文件夹,然后选择 Music Work Unit。
为了对流程有个大致印象,你先要为 boss 战创建一个 Event。因为这是从游戏引擎发送来的调用的名字,所以这里使用的名字应该和游戏代码里的 Event 名字完全匹配。
-
点击 Create New Event 图标,将其命名为 Boss_Start。
现在你需要用这个 Event 来将 Music_State State Group 设置为 Boss State。
-
选中 Boss_Start Event,接着在 Event Property Editor(事件编辑器)中单击 Add >>(添加 >>)按钮,然后依次选择 States > Set State(状态 > 设置状态)。
这时 Event Property Editor 中新建了一行。
-
右键单击 Target 列中的空白区域,然后依次选择 Set Target > Music > Music_State > Boss(设置目标 > Music > Music_State > Boss)。
接下来,针对玩家通过最后一个传送门并完成关卡的情况,重复上述步骤并设置新的状态。
-
创建一个叫作 Map_Completed 的 Event,然后用它将 Music_State 设为 Victory。
在大多数时间内,玩家都会处于通用的游戏玩法模式之中,你在 Music_State State Group 中将这个模式指派为 Gameplay State。目前这个状态设定为播放 Combat 音乐。为了确保 Wwise 201 Music Music Playlist 知道要在 Gameplay 模式时开始播放音乐,你可以将此信息添加到 Music Event Action 列表中。
-
选择 Music Event。
可以看到,你已经将 Music Event 设为播放 Wwise 201 Music。同时,你可以让事件来设置 Gameplay State。
-
添加一个 Action 来将 Music_State 设为 Gameplay。
尽管这些 Action 几乎是瞬间就会发生(除非通过 Delay 属性修改了时机),但 Action 的执行顺序是按照排列顺序由上到下来的。Gameplay State 应该在先,这样在播放 Wwise 201 Music 对象之前,State 就被正确地设置好了。你可以拖动 Event Actions 列表中的各项以设定顺序。
-
将 Set State Action 拖动到列表的顶端。
这样新顺序就建立好了。
另一个需要考虑的问题是,在有些情况下,Music Event 很可能发送了若干次,特别是在 Wwise 中测试的时候。这样的话可能会同时播放多个迭代的 Wwise 201 Music 对象,导致音乐之间相互交叠。为了不让这类情况发生,你可以添加一个 Stop Event Action 使得在开始新的播放之前关闭任何正在播放的音乐。
-
单击 Add >>(添加 >>)按钮,并依次选择 Stop > Stop(停止 > 停止)。
你需要指定哪个对象应该停止播放。方法是将目标对象拖动到 Target 这一列。
-
将 Wwise 201 Music 对象从 Project Explorer 中拖动到 Target 这一列 Stop Action 这一行。
在所有 Action 中,Stop Action 需要最先发生,这样才能确保正在播放的音乐在重新播放之前已被关闭了。
-
将 Stop Action 拖动到 Action 列表的最顶端。