第 1 课

目录

尝试发送 Wwise Event

要想在 Unity 中发送 Wwise Event(事件),Wwise 必须获取以下两条信息:

  • 被引用的游戏对象

  • 触发方式

除非另有说明,否则 Event(事件)均指 AkEvent 脚本所添加到的游戏对象。声音引擎将通过引用该游戏对象来计算距离衰减、Game Parameter(游戏参数)值、Switch(切换开关)等。在 AkEvent 组件中,我们会看到 Trigger On 属性。在此,可选择各种触发方式。

接下来,我们添加 301_Campfire 游戏对象,发送与其关联的 Ambient_Campfire_Play Event,并试听 3D 空间中的声音效果。

[技巧]

在《Wwise Adventure Game》中,听者绑定在 Main Camera 上而非 Player 上。因此,在实施距离衰减时,计算的都是声音相对于 Main Camera 的距离。

  1. 在 Unity 菜单栏中,依次选择 Audiokinetic > Certification > 301 > Lesson 1 > Playing your first Wwise Event

    首先,我们要找到 301_Campfire Prefab,并将其作为新的游戏对象拖到 Scene 视图中。

  2. 在 Project 视图中,搜索 Campfire(篝火)。

    当然,您也可以选择在《Wwise Adventure Game》中添加其他各种 Prefab 和游戏对象。

[备注]

假如 Project 视图中没有显示列表,您可以将右下角滑杆拖到最左端来切换查看方式。

  1. 301_Campfire Prefab 拖到 Scene 视图中。

  2. 使用 Move Tool(单击 W)将其放在 Training Area(训练场)的空地上。

    现在,我们将游戏对象添加到了场景中。接下来,可以发送与其关联的 Event。正如前文所述,我们可以使用 Wwise Picker 将 Event 快速添加到游戏对象。

  3. 在 Wwise Picker 中,依次展开 Events > Ambient > General,然后选中 Ambient_Campfire_Play

  4. Ambient_Campfire_Play Event 从 Wwise Picker 拖到 Hierarchy 中的 301_Campfire 游戏对象上。

    就这么简单!在将 Ambient_Campfire_Play 拖到 301_Campfire 游戏对象上时,系统会自动地将 Event 设为 Ambient_Campfire_Play 并添加播放 Event 所需的脚本(AkAmbient 和 AkGameObj)。在游戏启动时,将从 General SoundBank 加载声音,并通过引用 Campfire 游戏对象来发送对应的事件。假如在运行时移动该游戏对象,声音也会随着游戏对象变换位置。为了验证 Ambient_Campfire_Play 的集成效果,我们要进入 Play 模式来具体试听一下。不过,在此之前最好切换布局以便同时查看 Scene 和 Game 视图。

  5. 在 Unity 菜单栏中,依次单击 Window > Layouts,然后选择 2 by 3

  6. 单击 Play

  7. 在面朝 301_Campfire 游戏对象时,通过拖动鼠标来旋转镜头。

    声音在声景中的朝向会随着镜头相对于 301_Campfire 游戏对象的位置变换。虽然 AkAudioListener 组件(听者)绑定在 Main Camera 上,但声音却是从该游戏对象的中心发出来的。所以,相对距离和角度会影响听觉效果。

  8. 按下 P 来显示鼠标,然后在 Hierarchy 中选中 301_Campfire 游戏对象。

    [技巧]

    您也可以在 Scene 视图中选中 301_Campfire 游戏对象;不过,这样的话必须确保选中的不是 301_Campfire 游戏对象的子对象而是顶部关联有声音事件的父对象。

  9. 使用 Move Tool(单击 W)来移动 Campfire 游戏对象,使其远离 Main Camera。

    因为 Ambient_Fire_Campfire Sound SFX(音效)应用了 3D 空间化,并且针对 301_Campfire 游戏对象发送了 Ambient_Campfire_play 事件,所以游戏会随着游戏对象位置的改变不断更新声音的位置。最后,我们将布局重置为 Default 以便完成后面的练习。

  10. 在 Unity 菜单栏中,依次选择 Window > Layouts > Default

利用 Wwise Unity Integration 脚本,只要事先加载了包含该 Event 的 SoundBank(音频包),就可将该 Event 快速地从 Wwise 集成到游戏中。