第 4 课

目录

为对象指派衰减曲线

通过 Property Editor(属性编辑器)的 Positioning(定位)选项卡,可以将衰减曲线应用到 Actor-Mixer Hierarchy(角色混音器对象层级)的对象上面。为了学习衰减曲线如何工作,你要给《Cube》中随处可见的传送门(teleporter)添加一个声音。想象一下游戏中每个传送门都会发出一个不间断的声音向周围传播。你需要离传送门多近才能听到声音呢?这是衰减曲线负责解决的众多问题之一。

首先,你需要准备一个用在 teleporter 上的声音。

[备注]

衰减曲线也可以用到 Interactive Music Hierarchy(互动音乐对象层级)的对象上。

  1. 在 Project Explorer(工程资源管理器)的 Audio(音频)选项卡中,右键单击 Actor-Mixer Hierarchy(Actor-Mixer 层级结构)下的 Default Work Unit(默认工作单元),然后选择 Import Audio Files...(导入音频文件...)。

  2. 单击 Add Files...(添加文件...)。

  3. 转到 Lesson 4\Audio files for Lesson 4 文件夹,接着双击 "Teleporter" WAV 文件,然后单击 Import(导入)。

    你刚刚导入的文件非常短;但由于传送门要发出一个不间断的声音,所以你需要循环播放这个对象。

  4. 选中刚才创建的 Teleporter Sound SFX(音效)对象,然后在 General Settings(常规设置)选项卡中单击选中 Loop(循环)复选框。

  5. 选中刚才创建的 Teleporter Sound SFX(音效)对象,然后切换到 Sound Property Editor(声音属性编辑器)中的 Positioning(定位)选项卡。

    在 Positioning 选项卡中,可选择是否选用两种方式之一来渲染声音,并通过扬声器播放出来。这两种方式分别为 Speaker Panning 和 3D Spatialization。本质上讲,Speaker Panning 方式只是将声音直接通过扬声器播放出来,不改变声音当前的音量或声像位置。稍后在本课中你将学习 Speaker Panning 声的应用和配置选项。在选择 3D Spatialization 时,会使用发声对象(如传送门)的坐标来自动修改声音属性,以此根据游戏情境来确保听觉体验和视觉体验协调一致。

  6. 在 Teleporter - Sound Property Editor(Teleporter - 声音属性编辑器)中,将 3D Spatialization(3D 空间化)属性改为 Position + Orientation(位置 + 朝向)。

    在选择 Position + Orientation 后,将会显示其他可用属性选项,包括 Speaker Panning / 3D Spatialization Mix(扬声器声像摆位/3D 空间化混音)。此属性允许混合使用 Speaker Panning 和 3D Spatialization 这两种方式。一般情况下,我们会二选其一。在此,我们来将默认值设为 100。这样的话只会听到 3D 空间化声音。

    接下来,我们要调节 Object_Attenuation ShareSet 容器内的 3D Spatialization 参数。虽然技术上可以给传送门专门创建一条衰减曲线,但其实你的目的是以传送门为工具来测试游戏中所有的声音如何按你的要求随距离变化而变化。因为声音传播在距离上的效果一般对所有的对象都是相同的,所以只要在一个 ShareSet 中提前创建了这些设定,随着游戏开发向前推进,你就可以把这些设定快速应用到众多其它对象上去了。

  7. 单击选择器按钮 [>>],然后选择 Object_Attenuation

    Object_Attenuation 这个 ShareSet 被选中了。ShareSet 中的参数现在应用到声音上了;然而,这些参数用的是默认值。现在你需要按你的喜好来调节这些值。

  8. 在 Object_Attenuation 的旁边,单击 Edit...(编辑...)。

    Attenuation Editor(衰减编辑器)打开了。

    注意到 Attenuation Editor 跟你上一课中用过的 RTPC editor(实时参数控制编辑器)非常相似。它们本质上是非常类似的,但区别在于 Attenuation Editor 并不是把 Game Sync(游戏同步器)指派到特定的声音参数上去,而是自动把对象和 Listener 之间的距离指派到那些参数上。并且,有一组固定的参数可以受 Distance(距离)值影响。

    Attenuation 通常用来模拟当信号远离 Listener 时自然减弱的现象。Wwise 可使用一系列曲线将 Wwise 属性值(如音量和低通滤波器)映射到特定的距离值。利用这些曲线,你可以给声音和音乐对象创建细致的基于距离的衰减行为。

    跟上一课中用到的 RTPC 曲线一样,红线代表对象的音量如何受参数变化影响。

    [备注]

    有七条不同的衰减曲线,每条以不同的颜色显示。

    在这个场景下,发出声音的 Game Object 和 Listener 之间的距离远近将决定音量大小。在发出声音时,Wwise 可通过对比发声体和听者相对于彼此的 X/Y/Z 坐标来确定此距离。

    声源远离时声音最明显的变化就是音量会变小,所以默认情况下的曲线(也就是你现在看到的曲线)会影响音量,如 Graph View(坐标图视图)中红色对角线所示。


此页面对您是否有帮助?