| VRS - The Virtual Rendering System |
| version 3.3 |
#include <vrs/openal/listeneral.h>

Public Member Functions | |
| ListenerAL (const SO< LookAt > &lookAt, const VRS::Vector &velocity=Vector::origin, float gain=1.0f, bool enabled=true) | |
| ListenerAL (const VRS::Vector &position, const VRS::Vector &direction, const VRS::Vector &tilt, const VRS::Vector &velocity=Vector::origin, float gain=1.0f, bool enabled=true) | |
| void | setLookAt (const SO< LookAt > &lookAt) |
| const SO< LookAt > & | getLookAt (void) const |
| void | update (void) |
| void | setPosition (const VRS::Vector &position) |
| Vector | getPosition (void) const |
| void | setDirection (const VRS::Vector &direction) |
| Vector | getDirection (void) const |
| void | setTilt (const VRS::Vector &tilt) |
| Vector | getTilt (void) const |
| void | setVelocity (const VRS::Vector &velocity) |
| const Vector & | getVelocity (void) const |
| void | setGain (float gain) |
| float | getGain (void) const |
| VRS_TYPEINFO (ListenerAL, MonoAttribute) | |
| VRS_SERIALIZABLE (ListenerAL) | |
Protected Member Functions | |
| ListenerAL (void) | |
| VRS::SOUND::ListenerAL::ListenerAL | ( | const SO< LookAt > & | lookAt, | |
| const VRS::Vector & | velocity = Vector::origin, |
|||
| float | gain = 1.0f, |
|||
| bool | enabled = true | |||
| ) |
| VRS::SOUND::ListenerAL::ListenerAL | ( | const VRS::Vector & | position, | |
| const VRS::Vector & | direction, | |||
| const VRS::Vector & | tilt, | |||
| const VRS::Vector & | velocity = Vector::origin, |
|||
| float | gain = 1.0f, |
|||
| bool | enabled = true | |||
| ) |
| VRS::SOUND::ListenerAL::ListenerAL | ( | void | ) | [protected] |
| void VRS::SOUND::ListenerAL::update | ( | void | ) |
| void VRS::SOUND::ListenerAL::setPosition | ( | const VRS::Vector & | position | ) |
The OpenAL listener object and source objects have attributes to describe their position, velocity and orientation in three dimensional space. OpenAL -- like OpenGL -- uses a right-handed Cartesian coordinate system (RHS), where in a frontal default view X (thumb) points right, Y (index finger) points up, and Z (middle finger) points towards the viewer/camera. To switch from a left handed coordinate system (LHS) to a right handed coordinate systems, flip the sign on the Z coordinate.
| Vector VRS::SOUND::ListenerAL::getPosition | ( | void | ) | const [inline] |
| void VRS::SOUND::ListenerAL::setDirection | ( | const VRS::Vector & | direction | ) |
Set/get listener direction.
| Vector VRS::SOUND::ListenerAL::getDirection | ( | void | ) | const [inline] |
| void VRS::SOUND::ListenerAL::setTilt | ( | const VRS::Vector & | tilt | ) |
Set/get listener tilt.
| Vector VRS::SOUND::ListenerAL::getTilt | ( | void | ) | const [inline] |
| void VRS::SOUND::ListenerAL::setVelocity | ( | const VRS::Vector & | velocity | ) |
Set/get listener velocity.
| const Vector& VRS::SOUND::ListenerAL::getVelocity | ( | void | ) | const [inline] |
| void VRS::SOUND::ListenerAL::setGain | ( | float | gain | ) |
The gain defines a scalar amplitude multiplier. As a source attribute, it applies to that particular source only. As a listener attribute, it effectively applies to all sources in the current context. The default 1.0 means that the sound is unattenuated. An gain value of 0.5 is equivalent to an attenuation of 6 dB. The value zero equals silence (no contribution to the output mix). A gain larger than one (i.e. amplification) is permitted for source and listener.
| float VRS::SOUND::ListenerAL::getGain | ( | void | ) | const [inline] |
| VRS::SOUND::ListenerAL::VRS_TYPEINFO | ( | ListenerAL | , | |
| MonoAttribute | ||||
| ) |
| VRS::SOUND::ListenerAL::VRS_SERIALIZABLE | ( | ListenerAL | ) |