目录
在《Cube》中,敌人察觉的状态是用两个 Event 发送给 Wwise 的:Monsters_Aware 和 Monsters_Unaware。最后一步要将 Event 关联到 EnemyAware Game Parameter 上。Event 可以用来设置 Game Parameter 的值,其方法和用 Event 来设置 State 是类似的。
-
在 Project Explorer 中,点击 Events 选项卡,并且在 Music Work Unit 中,创建一个新的 Event,命名为 Monsters_Aware。
当怪物们发现玩家时,你希望 RTPC 的值上升到 100。
-
在 Event Property Editor 中,单击 Add>>(添加)按钮,并依次选择 Game Parameter > Set Game Parameter(游戏参数 > 设置游戏参数)。
-
若要将 Delay(延迟)列添加到 Event Property Editor(事件属性编辑器),请右键单击表格标题并选择 Configure Columns...(配置列...)。
-
在打开的 Object Property Settings(对象属性设置)对话框中,展开 Events(事件)。选中 Delay(延迟)复选框,然后单击 OK(确定)。
这时便会显示 Delay 列。
你现在需要给 Game Parameter 赋值。
-
在 Project Explorer(工程资源管理器)中,单击 Game Syncs(游戏同步器)选项卡,然后将 EnemyAware Game Parameter(游戏参数)拖到 Target(目标)列的空白框中。
-
选中 Event Property Editor 中的第一行,接着单击三角图标来展开右侧窗格,然后将 Game Parameter Value(游戏参数值)属性设为 100。
现在你需要创建一个 Monsters_Unaware Event 来将 EnemyAware Game Parameter 设为 0。
-
重复第 1 ~ 4 步,创建 Event 对象 Monsters_Unaware,并将 EnemyAware 的 Game Parameter Value 属性设为 0。
通常来说,Wwizard(魔法师)只有在跟怪兽战斗时才会落败,所以这个时候播放的一般是 Combat 音乐。尽管在关卡的开头通常都会播放 Explore 音乐,但是当玩家重生时,即刻听到的有可能是 Combat 音乐,然后才会过渡到 Explore 音乐。这种情况的发生是由你之前为 EnemyAware Game Parameter 配置的转换速率造成的。你可以使用 Set Game Parameter Action 来立刻强制让 EnemyAware 的值降回为 0,这样做之后,当玩家重生时,就能听到正确的音乐了。
-
在 Event Viewer(事件查看器)中,选中 Defeated_Player Event。
就跟之前设置其他 Game Parameter 值一样,我们要将玩家落败时的 "EnemyAware" Game Parameter Value 属性设为 0。
-
添加一个 Action 来将 EnemyAware Game Parameter 设为 0。
这里的关键在于既要强制将值迅速降到 0,又要确保其在完全过渡到 Defeated 音乐之前不能等于 0。为此,我们要为 Action 设置半秒钟的延迟。此外,你还要使用 Bypass Game Parameter Interpolation 复选框来指明,在这个情形中,你之前定义的转换速率应该被忽略,并且半秒延迟一过,EnemyAware Game Parameter 值必须立刻降为 0。
-
将 Action(动作)的 Delay(延迟)属性改为 0.5,然后单击选中 Bypass Game Parameter Interpolation(旁通游戏参数插值)复选框。
现在需要测试你配置的 Event 能正常工作,方法是将它们添加到 Music Testing Soundcaster Session 中。
-
在主菜单中,依次选择 Views > SoundCaster(视图 > SoundCaster),然后将刚才创建的 Event(事件)拖到 Music Testing SoundCaster 会话中。
-
播放 Music Event,然后播放 Monsters_Aware 和 Monsters_Unaware Event。
当 Wwise 收到 Monsters_Aware 和 Monsters_Unaware Event 时,音乐可能不会立马就变化,这是由于你之前配置了 Slew Rate。