Vixen
02b45cc4
csharp
public readonly record struct AudioListener

Where the ears are.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

One per mixer, and not one per camera. A split-screen game has two cameras and one set of speakers, and the answer to "which one does the audio follow" is a decision the game makes — usually a point between them — rather than something the mixer can average.

A value, published through the command queue. Fifty-two bytes cannot be written atomically, so a listener assigned directly from the game thread would be read torn by the audio thread — for one block, with a position from this frame and an orientation from the last one, which is a click. It goes through AudioEngine.SetListener instead.

Fields and properties (6)

  • public Vector3 Position

    Where it is, in world space.

  • public Vector3 Forward

    Which way it faces. Need not be normalised.

  • public Vector3 Up

    Which way is up for it. Need not be normalised or perpendicular to Forward.

  • public Vector3 Velocity

    How fast it is moving, in units a second. Only DopplerFactor reads it.

  • public float Gain

    A gain applied to every positioned voice. The master volume of the 3D world.

  • public static AudioListener Default

    At the origin, facing −Z, up +Y, still.

Methods (1)

  • public AudioListener()

    Where the ears are.

Used by (17)

  • AudioEngineVixen.Audio
  • AudioListenerSetVixen.Audio
  • AudioOcclusionVixen.Audio
  • AudioScattererVixen.Audio
  • AudioSystemVixen.Audio
  • AudioSystemTestsVixen.Audio.Tests
  • BuiltinParameterTestsVixen.Audio.Tests
  • HrtfTestsVixen.Audio.Tests
  • ListenerBufferVixen.Audio
  • MultipleListenerTestsVixen.Audio.Tests
  • OcclusionTestsVixen.Audio.Tests
  • ReverbZoneTestsVixen.Audio.Tests
  • ScattererTestsVixen.Audio.Tests
  • SpatializerVixen.Audio
  • SpatializerTestsVixen.Audio.Tests
  • SurroundTestsVixen.Audio.Tests
  • VoiceStealingTestsVixen.Audio.Tests