Pepper.SFX
All Guidance pages

Guidance / API reference

Multi-Position Emitters

AudioMultiPositionEmitterParent

Namespace: AudioSystem Inheritance: MonoBehaviour

Description: Parent component that manages a group of child emitters for multi-position audio playback.

Properties

public MultiPositionType PositionType { get; }
public float PositionLerpTime { get; }
public bool UseSpreadCurve { get; }
public float MinSpatialBlend { get; }
public float MaxRandomOffset { get; }
public float MaxPitchVariationCents { get; }
public IReadOnlyList<AudioMultiPositionEmitterChild> AllEmitters { get; }
public IReadOnlyList<AudioMultiPositionEmitterChild> ActiveEmitters { get; }
public int ActiveEmitterCount { get; }
public bool HasActiveEmitters { get; }

Methods

public Vector3[] GetActivePositions()
public Transform[] GetActiveTransforms()
public void RefreshChildren()
public void EnableAllEmitters()
public void DisableAllEmitters()
public void SetAllVolumes(float volume)

Example:

var emitterParent = GetComponent<AudioMultiPositionEmitterParent>();
AudioMultiHandle mh = myEvent.PostMultiPosition(emitterParent);

AudioMultiPositionEmitterChild

Namespace: AudioSystem Inheritance: MonoBehaviour

Description: Individual emitter point in a multi-position setup.

Properties

public bool IsActive { get; set; }
public float VolumeMultiplier { get; set; }
public bool UseDirectionality { get; set; }   // Scene-view cone gizmo only; not read during playback
public float ConeAngle { get; set; }          // that gizmo's angle, 0–360
public Vector3 Position { get; }
public Quaternion Rotation { get; }
public Vector3 Forward { get; }

UseDirectionality and ConeAngle only draw a cone in the Scene view. They don’t change how an emitter sounds.

From the Pepper.SFX 3.1 guides (API_REFERENCE.md). Something wrong or unclear? Tell me.