版本

menu_open
Wwise Unreal Integration Documentation
Spatial Audio 对象

AkAcousticTexture

此 Unreal 对象代表 Wwise Acoustic Texture。可通过从 Wwise Picker 拖放 或在 Unreal Content Browser 中右键单击来创建。在创建后可将其应用于 AkSurfaceReflectorSetComponent 多边形或者应用于 AkSpotReflector

利用 AkGeometry Surface Properties Map,可在 Integration Settings 中将 AkAcousticTexture 关联到 Unreal Physical Material。

  • 属性
    • Edit Color:此 Editor 专有属性用于定义所要使用的颜色,以便为指派有 AkAcousticTextureAkSurfaceReflectorSetComponent 多边形着色。

AkSpotReflector

SpotReflector Actor 允许在 3D 空间中放置全指向 Spot Reflector(反射点)。Spot Reflector 适合放在半径较大的远距离对象上(如远处的大山)。

对于启用了 Enable Spot Reflectors 并置于同一区域中的 AkComponent ,Spot Reflector 会反射其发出的全部声音。若 AkComponent 处在 Room 之外,则其会向同在 Room 之外的所有 Spot Reflector 发送声音。 若 AkComponent 处在 Room 之内,则其只会向同一 Room 内的 Spot Reflector 发送声音。您可以通过绑定有 AkRoomComponent 的 Volume 创建 Room。

在 BeginPlay 时通过 Spatial Audio API 调用 AK::SpatialAudio::AddImageSource()

  • 属性:
    • Aux Bus:带有 AkReflect 插件(用于早期反射 DSP)的 AkAuxBus 。此辅助总线需启用游戏定义的辅助发送,同时启用 Listener Relative Routing,但要将 3D Spatialization 设为 None
    • Acoustic Texture:用于对此镜像声源所反射的声音进行滤波的 AkAcousticTexture
    • Distance Scaling Factor:镜像声源距离缩放系数。此数值用于根据听者所在位置有效地调节 sourcePosition 矢量,进而缩放距离并保持朝向。
    • Level:针对此声源设置的游戏控制的线性电平。

AkSurfaceReflectorSetComponent

此组件跟 AkGeometryComponent 一样,只不过需要绑定到 AVolume Actor 上。在 BeginPlay 时,会将 Volume 启用的所有多边形发送到 SpatialAudio 引擎。

  • 属性
    • Enable Room:启用或禁用此组件。
    • Acoustic Surfaces:此数组用于定义与各个多边形关联的 AkAcousticTexture 。在选中父级 Volume 时,会在 Game Viewport 中显示数组中的索引。一旦将材质指派给多边形,就会使用该材质所对应的 Edit Color 为多边形着色,并会在 Game Viewport 中的多边形上显示 Acoustic Texture 的名称。若将 None 指派为 Acoustic Texture,则会把表面设为 100% 反射,而不应用任何附加材质滤波器。此外,还可使用 Enable Surface 复选框来分别启用或禁用各个多边形。
    • Acoustic Surface Properties
      • Enable Diffraction:针对此 Geometry 启用或禁用几何衍射。
      • Enable Diffraction on Boundary Edges:针对此 Geometry 在边界边缘启用或禁用几何衍射。其中,Boundary Edge 代表仅连有一个三角形的边缘。边界边缘可能有用也可能没用(取决于几何构造的具体形状),因此最好减少所要处理的衍射边缘总数。
      • Associated Room:(可选)将此 Surface Reflector Set 与 Room 关联。在将 Surface Reflector Set 与特定 Room 关联后,会限制几何构造的可见/有效范围。若将其保留为 None,则会把该几何构造的范围设为全局。若几何构造 (1) 完全包含在 Room 内(除非带有 Portal 否则在其他 Room 内不可见),并且 (2) 此 Room 不与其他 Room 共享几何构造,则建议将几何构造与 Room 关联。这样可以缩小反射和衍射计算中执行的射线投射的搜索范围。注意,一旦将若干几何构造集与某个 Room 关联,那么对于该 Room 内的声音,全局范围的几何构造将不再生效。

AkRoomComponent

您可以将此组件添加到任何 Volume 中,然后创建 Spatial Audio Room。Room 有两个作用:

  • 允许实现带有朝向的混响效果。Room 内游戏对象上应用的所有 Auxiliary Bus 朝向均与 Volume 的前向矢量相同。
  • 结合使用 AkAcousticPortal 来通过 Portal 将湿声信号从某一 Room 输出到另一 Room。

无论对于哪种情况,都必须针对所用 Auxiliary Bus 启用 Listener Relative Routing,以便在 Positioning 选项卡中指定 3D Spatialization 并指派 Attenuation。

  • 属性
    • Enable Room:启用或禁用组件。
    • Priority:设置应用 Room 时的优先顺序。若 Room 之间存在重叠,则选用优先级最高的那个。若多个存在重叠的 Room 拥有相同的优先级,则无法确定到底会选用哪个。
    • Wall Occlusion:在无法借助 Wwise Spatial Audio 找到通往听者的声音传播路径时,为 Room 内的发声体设置 Wwise 声笼值。该值与墙壁透射多少声能相关,您可以将其想象成墙壁“厚度”。有效范围为 0.0f-1.0f(映射至 Wwise 工程中定义的声笼曲线)。
    • Room Tone
      • Ak Audio Event:要针对 Room 游戏对象发送的 Event。
      • Aux Send:针对 Room 触发的声音的发送电平。有效范围:(0.f-1.f)。若值为 0,则禁用辅助发送。
      • Auto Post:在 BeginPlay 时自动发送针对 Room 发送的音频 Event。

AkSpatialAudioVolume

为方便起见,我们在集成包中添加了一个 AkSpatialAudio Volume。它由一个简单的 Volume 构成,并绑定了 AkSurfaceReflectorSetComponentAkRoomComponentAk Late Reverb Component

AkAcousticPortal

此组件代表 Unreal Engine 4 中的 Portal。允许某个绑定有 AkRoomComponent 的 Volume 内所含的声音渗透到其他绑定有 AkRoomComponent 的 Volume。在初始化时,会检测这些与 Portal 重叠的 Volume。经过声像摆位和 3D 空间化处理的声音均可通过 Portal 进行输出。

  • 属性
    • Initial state:在初始化时是将此 Portal 设为打开(启用)还是关闭(禁用)状态。
    • Obstruction Refresh Interval:设置声障检查之间的时间间隔(听者和 Portal 开口之间的直接视线)。若设为 0,则禁用声障检查。若要使用全方位 Spatial Audio 衍射,则建议将其禁用。
    • Obstruction Collision Channel:对象碰撞通道,仅针对所需几何构造检测声障射线投射(在 Portal 和听者之间)的碰撞。

AkGeometryComponent

此组件跟 AkSurfaceReflectorSetComponent 一样,只不过它不能直接绑定到 Brush 而是需要添加到 StaticMeshComponent。AkGeometryComponent 会将其 Mesh 转换为 Spatial Audio Geometry。它可以通过 Static Mesh 本身和 Simple Collision Mesh 来进行转换。注意,对于 Simple Collision,Sphere Primitive 和 Capsule Primitive 近似于 Bounding Box Mesh。

在调试游戏时,可在 Wwise 设计工具内的 Game Object 3D Viewer 中查看 Spatial Audio Geometry。利用 AkGeometryComponent,现在可以发送更加复杂的形状。不过,这样可能会导致 Game Object 3D Viewer 不显示几何构造。为了对游戏发送的附加数据进行补偿,请确保在 初始化设置 中恰当设置 Monitor Queue Pool Size。

无论选择哪种 Mesh Type,都将通过 Mesh 的 Physical Material 得出 Acoustic Texture 和声笼值。为了将 Physical Material 关联到 AkAcousticTexture 和声笼值,请在 Integration Settings 中使用 AkGeometry Surface Properties Map。

  • 在选用 Static Mesh 时,将通过 Static Mesh 所用每种 Material 的 Physical Material 得出 Surface Properties。
  • 在选用 Simple Collision Mesh 时,将通过 Simple Collision Physical Material 得出 Surface Properties。

注意,在 Unreal 中,若未选择任何 Physical Material(保留为 None),则使用 DefaultPhysicalMaterial。对于没有指派 Physical Material 的 Mesh,请将 AkAcousticTexture 关联到 DefaultPhysicalMaterial。

  • 属性
    • Geometry
      • Mesh Type:决定是要通过 Static Mesh 还是 Simple Collision Mesh 转换几何构造。
      • LOD:若在 Mesh Type 列表中选择 Static Mesh,则可通过此参数 来选择将 LOD(细节层次)用作 Spatial Audio Geometry。
      • Welding Threshold:若在 Mesh Type 列表中选择 Static Mesh,则可通过此参数来选择按 Unreal 单位计量两个要融为一体的顶点之间的局部距离。只要两个顶点之间的距离小于此阈值,就会将其视为同一顶点并为其指派相同的位置。增大此阈值会减少三角形之间的间隙数量,使得网格更加连续、声音泄漏更少,同时也会删除因太小而无关紧要的三角形。此外,增大此阈值还有利于 Spatial Audio 借助寻边算法找出更多有效的衍射边缘。
      • Acoustic Texture Override:此处输入的 Acoustic Texture 将覆盖 Mesh 的 Physical Material。若在 Mesh Type 中选择 Static Mesh,则可单独覆盖每种 Material 的 Acoustic Texture。
    • Diffraction
      • Enable Diffraction:就跟 AkSurfaceReflectorSetComponent 一样,此项会针对此 Geometry 启用或禁用几何衍射。
      • Enable Diffraction on Boundary Edges:就跟 AkSurfaceReflectorSetComponent 一样,此项会针对此 Geometry 在边界边缘启用或禁用几何衍射。
    • Optimization
      • Associated Room:(可选)将此 Geometry 与 Room 关联。在将几何构造与特定 Room 关联后,会限制几何构造的可见/可达范围。若将其保留为 None,则会把该几何构造的范围设为全局。若几何构造 (1) 完全包含在 Room 内(除非带有 Portal 否则在其他 Room 内不可见),并且 (2) 此 Room 不与其他 Room 共享几何构造,则建议将几何构造与 Room 关联。这样可以缩小反射和衍射计算中执行的射线投射的搜索范围。注意,一旦将若干几何构造集与某个 Room 关联,那么对于该 Room 内的声音,全局范围的几何构造将不再生效。

此页面对您是否有帮助?

需要技术支持?

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

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

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

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

开始 Wwise 之旅