Nuclide
Software Development Kit for id Tech
NSSoundScape Class Reference

Shared-Entity: Sound System Scape/Reverb Controller. More...

#include <NSSoundScape.h>

Inheritance diagram for NSSoundScape:
NSPointTrigger env_sound

Public Member Functions

void NSSoundScape (void)
 
nonvirtual void SetDensity (float)
 Reverb Density, controls the effect of the reverb. More...
 
nonvirtual void SetDiffusion (float)
 Reverb Diffusion, linear multiplier. More...
 
nonvirtual void SetGain (float)
 Reverb Gain, linear gain control. More...
 
nonvirtual void SetGainHF (float)
 Reverb Gain HF, linear gain control for high frequency sounds. More...
 
nonvirtual void SetGainLF (float)
 Reverb Gain LF, linear gain control for low frequency sounds. More...
 
nonvirtual void SetDecayTime (float)
 Decay Time, in seconds. More...
 
nonvirtual void SetDecayHFRatio (float)
 Decay HF Ratio, linear multiplier. More...
 
nonvirtual void SetDecayLFRatio (float)
 Decay LF Ratio, linear multiplier. More...
 
nonvirtual void SetReflectionGain (float)
 Reflection Gain, linear gain control. More...
 
nonvirtual void SetReflectionDelay (float)
 Reflection Delay, in seconds. More...
 
nonvirtual void SetReflectionPan (vector)
 Reflection Pan. More...
 
nonvirtual void SetLateGain (float)
 Late Reverb Gain, linear gain control. More...
 
nonvirtual void SetLateDelay (float)
 Late Reverb Delay, in seconds. More...
 
nonvirtual void SetLatePan (vector)
 Late Reverb Pan. More...
 
nonvirtual void SetEchoTime (float)
 Echo Time, in seconds. More...
 
nonvirtual void SetEchoDepth (float)
 Echo Depth, linear multiplier. More...
 
nonvirtual void SetModulationTime (float)
 Modulation Time, in seconds. More...
 
nonvirtual void SetModulationDepth (float)
 Modulation Depth, linear multiplier. More...
 
nonvirtual void SetAirAbsorptionGainHF (float)
 Air Absorption Gain HF, linear gain per meter. More...
 
nonvirtual void SetHFReference (float)
 HF Reference, in Hz. More...
 
nonvirtual void SetLFReference (float)
 LF Reference, in Hz. More...
 
nonvirtual void SetRoomRolloffFactor (float)
 Room Rolloff Factor, linear multiplier. More...
 
nonvirtual void SetDecayHFLimit (int)
 Decay HF Limit, integer value. More...
 
nonvirtual void SetRadius (float)
 Sets the radius of the soundscape. More...
 
nonvirtual float GetDensity (void)
 
nonvirtual float GetDiffusion (void)
 
nonvirtual float GetGain (void)
 
nonvirtual float GetGainHF (void)
 
nonvirtual float GetGainLF (void)
 
nonvirtual float GetDecayTime (void)
 
nonvirtual float GetDecayHFRatio (void)
 
nonvirtual float GetDecayLFRatio (void)
 
nonvirtual float GetReflectionGain (void)
 
nonvirtual float GetReflectionDelay (void)
 
nonvirtual vector GetReflectionPan (void)
 
nonvirtual float GetLateGain (void)
 
nonvirtual float GetLateDelay (void)
 
nonvirtual vector GetLatePan (void)
 
nonvirtual float GetEchoTime (void)
 
nonvirtual float GetEchoDepth (void)
 
nonvirtual float GetModulationTime (void)
 
nonvirtual float GetModulationDepth (void)
 
nonvirtual float GetAirAbsorptionGainHF (void)
 
nonvirtual float GetHFReference (void)
 
nonvirtual float GetLFReference (void)
 
nonvirtual float GetRoomRolloffFactor (void)
 
nonvirtual int GetDecayHFLimit (void)
 
nonvirtual float GetRadius (void)
 
virtual void SpawnKey (string, string)
 This method handles entity key/value pairs on map load. More...
 
virtual void Input (entity, string, string)
 Called when we are being prompted by another object/function with an input message. More...
 
virtual void EvaluateEntity (void)
 Run each tic after physics are run to determine if we need to send updates over the network. More...
 
virtual float SendEntity (entity, float)
 Called by the engine whenever we need to send a client an update about this entity. More...
 
virtual void Save (float)
 Handles saving a copy of this entity to a given filehandle. More...
 
virtual void Restore (string, string)
 Similar to NSIO::SpawnKey but for save-game fields. More...
 
nonvirtual bool LoadFromEFX (string)
 
virtual void DebugDraw (void)
 
virtual void ReceiveEntity (float, float)
 Client: Handles network updates from the server for the associated entity. More...
 
nonvirtual void SetupEFXReverb (reverbinfo_t *)
 

Detailed Description

Shared-Entity: Sound System Scape/Reverb Controller.

QUAKED NSSoundScape (1 .5 0) (-8 -8 -8) (8 8 8)

OVERVIEW

Environmental soundscape and reverb controller.

KEYS

HISTORY

Creative's Environmental Audio Extensions (EAX)

Creative Technology's Environmental Audio Extensions, also known as EAX, attempted to create more ambiance within video games by more accurately simulating a real-world audio environment.

The release of Windows Vista deprecated the DirectSound3D API on which EAX relied on in 2007, so Creative Technology encouraged the move to OpenAL's EFX.

EFX

EFX is a system in OpenAL that delivers high quality sound reverberation. It is the successor to Creative's Environmental Audio Extensions (EAX).

Nuclide** offers abstraction for new and old entities relying on digital signal processing.

NOTES

Reverb effects only work with the OpenAL sound backend.

See Also

Constructor & Destructor Documentation

◆ NSSoundScape()

void NSSoundScape::NSSoundScape ( void  )

Member Function Documentation

◆ DebugDraw()

void NSSoundScape::DebugDraw ( void  )
virtual

Reimplemented from NSPointTrigger.

◆ EvaluateEntity()

void NSSoundScape::EvaluateEntity ( void  )
virtual

Run each tic after physics are run to determine if we need to send updates over the network.

Reimplemented from NSEntity.

◆ GetAirAbsorptionGainHF()

float NSSoundScape::GetAirAbsorptionGainHF ( void  )

◆ GetDecayHFLimit()

int NSSoundScape::GetDecayHFLimit ( void  )

◆ GetDecayHFRatio()

float NSSoundScape::GetDecayHFRatio ( void  )

◆ GetDecayLFRatio()

float NSSoundScape::GetDecayLFRatio ( void  )

◆ GetDecayTime()

float NSSoundScape::GetDecayTime ( void  )

◆ GetDensity()

float NSSoundScape::GetDensity ( void  )

◆ GetDiffusion()

float NSSoundScape::GetDiffusion ( void  )

◆ GetEchoDepth()

float NSSoundScape::GetEchoDepth ( void  )

◆ GetEchoTime()

float NSSoundScape::GetEchoTime ( void  )

◆ GetGain()

float NSSoundScape::GetGain ( void  )

◆ GetGainHF()

float NSSoundScape::GetGainHF ( void  )

◆ GetGainLF()

float NSSoundScape::GetGainLF ( void  )

◆ GetHFReference()

float NSSoundScape::GetHFReference ( void  )

◆ GetLateDelay()

float NSSoundScape::GetLateDelay ( void  )

◆ GetLateGain()

float NSSoundScape::GetLateGain ( void  )

◆ GetLatePan()

vector NSSoundScape::GetLatePan ( void  )

◆ GetLFReference()

float NSSoundScape::GetLFReference ( void  )

◆ GetModulationDepth()

float NSSoundScape::GetModulationDepth ( void  )

◆ GetModulationTime()

float NSSoundScape::GetModulationTime ( void  )

◆ GetRadius()

float NSSoundScape::GetRadius ( void  )

◆ GetReflectionDelay()

float NSSoundScape::GetReflectionDelay ( void  )

◆ GetReflectionGain()

float NSSoundScape::GetReflectionGain ( void  )

◆ GetReflectionPan()

vector NSSoundScape::GetReflectionPan ( void  )

◆ GetRoomRolloffFactor()

float NSSoundScape::GetRoomRolloffFactor ( void  )

◆ Input()

void NSSoundScape::Input ( entity  eAct,
string  strInput,
string  strData 
)
virtual

Called when we are being prompted by another object/function with an input message.

Reimplemented from NSEntity.

◆ LoadFromEFX()

bool NSSoundScape::LoadFromEFX ( string  efxFile)

◆ ReceiveEntity()

virtual void NSSoundScape::ReceiveEntity ( float  flNew,
float  flChanged 
)
virtual

Client: Handles network updates from the server for the associated entity.

Reimplemented from NSEntity.

◆ Restore()

void NSSoundScape::Restore ( string  strKey,
string  strValue 
)
virtual

Similar to NSIO::SpawnKey but for save-game fields.

Whatever you write into file handles within your NSIO::Save() method needs to be read back in here.

Reimplemented from NSPointTrigger.

◆ Save()

void NSSoundScape::Save ( float  handle)
virtual

Handles saving a copy of this entity to a given filehandle.

Within you want to use the NSIO::SaveFloat() etc. methods to write the internal member attributes to the specified file handle.

Reimplemented from NSPointTrigger.

◆ SendEntity()

float NSSoundScape::SendEntity ( entity  ,
float   
)
virtual

Called by the engine whenever we need to send a client an update about this entity.

Reimplemented from NSEntity.

◆ SetAirAbsorptionGainHF()

void NSSoundScape::SetAirAbsorptionGainHF ( float  newAirAbsorptionGainHF)

Air Absorption Gain HF, linear gain per meter.

Values 0.892f to 1.0f. Default is 0.994f.

◆ SetDecayHFLimit()

void NSSoundScape::SetDecayHFLimit ( int  newDecayHFLimit)

Decay HF Limit, integer value.

Values are 0i (false) and 1i (true). Default is 1i (true).

◆ SetDecayHFRatio()

void NSSoundScape::SetDecayHFRatio ( float  newDecayHFRatio)

Decay HF Ratio, linear multiplier.

Values 0.1f to 20.0f. Default is 0.83f.

◆ SetDecayLFRatio()

void NSSoundScape::SetDecayLFRatio ( float  newDecayLFRatio)

Decay LF Ratio, linear multiplier.

Values 0.1f to 20.0f. Default is 1.0f.

◆ SetDecayTime()

void NSSoundScape::SetDecayTime ( float  newDecayTime)

Decay Time, in seconds.

Values 0.1f to 20.0f. Default is 1.49f.

◆ SetDensity()

void NSSoundScape::SetDensity ( float  newDensity)

Reverb Density, controls the effect of the reverb.

Values 0.0f to 1.0f. Default is 1.0f.

◆ SetDiffusion()

void NSSoundScape::SetDiffusion ( float  newDiffusion)

Reverb Diffusion, linear multiplier.

Values 0.0f to 1.0f. Default is 1.0f.

◆ SetEchoDepth()

void NSSoundScape::SetEchoDepth ( float  newEchoDepth)

Echo Depth, linear multiplier.

Values 0.0f to 1.0f. Default is 0.0f.

◆ SetEchoTime()

void NSSoundScape::SetEchoTime ( float  newLateEchoTime)

Echo Time, in seconds.

Values 0.075f to 0.25f. Default is 0.25f.

◆ SetGain()

void NSSoundScape::SetGain ( float  newGain)

Reverb Gain, linear gain control.

Affects the volume of sound reflections and reverberation. Values 0.0f to 1.0f. Default is 0.32f.

◆ SetGainHF()

void NSSoundScape::SetGainHF ( float  newGainHF)

Reverb Gain HF, linear gain control for high frequency sounds.

Values 0.0f to 1.0f. Default is 0.89f.

◆ SetGainLF()

void NSSoundScape::SetGainLF ( float  newGainLF)

Reverb Gain LF, linear gain control for low frequency sounds.

Values 0.0f to 1.0f. Default is 0.0f.

◆ SetHFReference()

void NSSoundScape::SetHFReference ( float  newHFReference)

HF Reference, in Hz.

Values 1000.0f to 20000.0f. Default is 5000.0f.

◆ SetLateDelay()

void NSSoundScape::SetLateDelay ( float  newLateDelay)

Late Reverb Delay, in seconds.

values 0.0f to 0.1f. Default is 0.011f.

◆ SetLateGain()

void NSSoundScape::SetLateGain ( float  newLateGain)

Late Reverb Gain, linear gain control.

Values 0.0f to 10.0f. Default is 1.26f.

◆ SetLatePan()

void NSSoundScape::SetLatePan ( vector  newLatePan)

Late Reverb Pan.

X = Left/Right, Y = Up/Down, Z = Forward/Back. Values from -1.0f to 1.0 on each axis. Default is [0,0,0].

◆ SetLFReference()

void NSSoundScape::SetLFReference ( float  newLFReference)

LF Reference, in Hz.

Values 20.0f to 1000.0f. Default is 250.0f.

◆ SetModulationDepth()

void NSSoundScape::SetModulationDepth ( float  newModulationDepth)

Modulation Depth, linear multiplier.

Values 0.0f to 1.0f. Default is 0.0f.

◆ SetModulationTime()

void NSSoundScape::SetModulationTime ( float  newModulationTime)

Modulation Time, in seconds.

Values 0.004f to 4.0f. Default is 0.25f.

◆ SetRadius()

void NSSoundScape::SetRadius ( float  newRadius)

Sets the radius of the soundscape.

When a client is outside the radius the effects are nil.

◆ SetReflectionDelay()

void NSSoundScape::SetReflectionDelay ( float  newReflectionDelay)

Reflection Delay, in seconds.

Values 0.0f to 0.3f. Default is 0.007f.

◆ SetReflectionGain()

void NSSoundScape::SetReflectionGain ( float  newReflectionGain)

Reflection Gain, linear gain control.

Values 0.0f to 3.16f. Default is 0.05f.

◆ SetReflectionPan()

void NSSoundScape::SetReflectionPan ( vector  newReflectionPan)

Reflection Pan.

X = Left/Right, Y = Up/Down, Z = Forward/Back. Values from -1.0f to 1.0 on each axis. Default is [0,0,0].

◆ SetRoomRolloffFactor()

void NSSoundScape::SetRoomRolloffFactor ( float  newRoomRolloffFactor)

Room Rolloff Factor, linear multiplier.

Values 0.0f to 10.0f. Default is 0.0f.

◆ SetupEFXReverb()

void NSSoundScape::SetupEFXReverb ( reverbinfo_t *  info)

◆ SpawnKey()

void NSSoundScape::SpawnKey ( string  strKey,
string  strValue 
)
virtual

This method handles entity key/value pairs on map load.

You can easily convert the strValue parameter using the ReadFloat etc. methods that are part of NSIO.

Reimplemented from NSPointTrigger.

Reimplemented in env_sound.


The documentation for this class was generated from the following files: