版本
menu_open

使用 3D 空间化对象

对于 3D 空间化声音和音乐对象,各个输入声道可输出至环绕声环境下的任意扬声器,便于模拟对象相对于听者的移动。为了获得这种增强的环绕声体验,Wwise 同时使用空间定位和衰减。

空间定位

空间化确定游戏 3D 环境中对象的实际位置或定位。使用空间化时,游戏中的声源移动表现为从不同的扬声器中听到声音。

根据正在处理的声音类型,有两种空间化可供选择:

  • Position(位置):仅使用游戏对象的三维定位信息(X-Y-Z 坐标)。

  • Position + Orientation(位置 + 朝向):同时使用游戏对象的三维定位和朝向信息(顶部和底部矢量的 X-Y-Z 坐标)。

    [备注] 备注

    为了更好地理解朝向的微妙之处,请参阅“3D 定位图解”(特别留意“Spread 的影响”和“朝向的影响”示例)。

除此之外,还可根据声音类型来选择定位类型(共三种):

  • Emitter(发声体):由实时游戏位置数据来定义“发声体”游戏对象的空间定位。在选择 Emitter 时,Wwise 中所定义的传播属性将直接关联至游戏中听者和发声体的位置或朝向。

  • Emitter with Automation(发声体自动化):通过在 Wwise 中创建路径来定义“发声体”游戏对象的空间定位。您可以定义忽略游戏对象位置和衰减的一组固定的传播行为。自动空间化路径对游戏界面声音、菜单声音、非固定位置的环境声及语音来说非常有用。

  • Listener with Automation(听者自动化):指定通过在 Wwise 中创建路径来定义“听者”游戏对象的空间定位。您可以定义忽略游戏对象位置和衰减的一组固定的传播行为。自动空间化路径对游戏界面声音、菜单声音、非固定位置的环境声及语音来说非常有用。

游戏中的移动声音和音乐对象大多使用 Emitter 定位,但也可使用 Automation 来完善各种对象,如非固定位置的环境声(鸟叫声或虫鸣声)。

此外,还可选择固定发声体或听者的朝向,或者固定发声体位置(可使用或不使用 Automation)。在启用适用选项后,朝向和位置会随动画路径移动。

Attenuation

除空间化外,还可定义对象的衰减设置。衰减设置用于模拟当信号远离听者时的自然减弱。Wwise 使用一系列曲线来把游戏中的距离值映射到 Wwise 的属性利用这些曲线,可为对象创建基于距离的复杂衰减。为了增加逼真效果,还可使用声锥。声锥根据对象相对于听者的朝向来衰减声音。对于空间化对象,有关如何定义其衰减设置的详细信息,请参阅“应用基于距离的衰减”。

组合使用定位选项

您可以组合使用不同的定位选项为游戏创建丰富多样的音频环境。在特定情况下,可能只需要使用空间化;在其他情况下,则可能需要同时使用空间化和衰减。当然,您也可以只使用衰减(详见“使用 Speaker Panning”)。

[备注] 备注

对于那些对游戏玩法很关键的 3D 声音,可能需要将它们的信号传送到中置扬声器,以确保能够清晰听到。Center %(中置百分比)控件可用于定义通过中置扬声器的信号量。有关使用 Center % 控件的详细信息,请参阅将音频信号传送到中置扬声器

振动对象的 3D 空间化

并非所有振动设备都完全支持 3D 空间化。例如,游戏控制器内电机很少,移动类型也有限,因此就无法利用 3D 空间定位信息。因此,对于较为简单的振动设备,应将 Speaker Panning(扬声器声像摆位)设置为 Direct Assignment(直接指派)。然而,有些情况下可能需要根据声源的距离降低振动信号的强度。在这些情况下,您可以使用衰减设置而不启用空间化。

Wwise 3D 详情

请参阅以下列表来详细了解 Wwise 是如何计算 3D 定位的。如果您只想在设计工具中进行设置,而无需知道这些细节,则可以跳转到下面的第二个列表。

3D 定位是如何计算的:

  1. 虚声源的位置将根据 Spread 值确定(有关更多详细信息,请参阅“Spread versus Focus”图示)。使用多个输入声道时,会在散布弧线上进行相应的声道划分(例如对于立体声,其中一半虚声源位置分配给左侧,剩下的一半分配到右侧)
  2. 对于每个虚声源位置,都会计算 VBAP 增益。
  3. 所有虚声源位置的增益都是这样合并计算的:
    • 对于每个输出声道,会将全部有效输入声道的增益进行平方并加在一起,
    • 再除以输入声道数量,
    • 然后取商的平方根。
    [备注] 备注
    要注意在 Spread == 0 的特殊情况时,所有的虚声源都在同一位置。这自然需要对输入声道进行下混。

定义 3D 对象属性的方法如下:

  1. 将对象加载到 Property Editor 中。

  2. 切换到 Positioning 选项卡。

    [备注] 备注

    如果该对象不是顶层对象,您则必须选择 Override parent选项后才能设置 Positioning 选项。

  3. 启用 Listener Relative Routing(听者相对通路)。

    分组框将激活。

  4. 选择 PositionPosition + Orientation 选项。

  5. 在 3D Position(3D 定位)分组框中,选择以下选项之一以便确定空间化信息的来源:

    • Emitter:由游戏实时计算空间定位信息。

    • Emitter with AutomationListener with Automation:在 Wwise 中使用动画路径来预定义空间定位信息。

    [备注] 备注

    若选择 Automation 选项,请单击 Automation… 按钮,打开 Position Editor (3D Automation)。在此,可定义对象的动画路径。有关创建动画路径的更多信息,请参阅 使用动画路径定义空间定位

  6. 若将 Position 设为使用 Listener with Automation 选项,请启用 Hold Listener Orientation(固定听者朝向)复选框,以便存储声音开始播放时听者的瞬时朝向,声音播放期间的位置偏移将以此作为基准。在未选择此选项时,将始终通过相同扬声器播放声音,而不管听者朝向如何。在选择此选项时,听者将独立于路径移动。这意味着当听者转身时将通过不同的扬声器听到声音。有关此选项的详细信息,请参阅创建顺着听者朝向的动画路径

  7. 若将 Position 设置为 Emitter 选项,请启用 Hold Emitter Position and Orientation(固定发声体位置和朝向)复选框来保持声源位置不变,直至播放完毕。若禁用此选项,则每一游戏帧都会更新声源位置信息。

  8. 若要计算空间定位信息来模拟 3D 游戏空间内的移动,请将 3D Spatialization(3D 空间化)设置为 PositionPosition + Orientation


此页面对您是否有帮助?

需要技术支持?

仍有疑问?或者问题?需要更多信息?欢迎联系我们,我们可以提供帮助!

查看我们的“技术支持”页面

介绍一下自己的项目。我们会竭力为您提供帮助。

来注册自己的项目,我们帮您快速入门,不带任何附加条件!

开始 Wwise 之旅