3D Sound

SoundSource 3D Plays sounds and audio clips in WAV format and positions them in 3D space.
ViewListener This node combines a View node with the Listener for the !SoundSource3D node.

Ventuz is capable of creating surround sound effects. The full effect however only comes to life with a surround sound speaker system and an appropriate sound card.


To create such effects the combination of two Nodes is necessary. The SoundSource 3D node represents the position, velocity and orientation of the sound source. The ViewListener node represents the position, velocity and orientation of the listener.

SoundSource 3D

The SoundSource 3D Node represents a sound source which can be positioned in 3D space using a regular Axis node. This node comes with a multitude of input properties to control the 3D sound effect.
The input property File specifies the .wav file which should be played. Loop indicates if the playback should be looped. The property AutoActivate specifies if the playback should start automatically when the scene is loaded or activated. The property Volume adjusts the playback volume. If the property AlphaVolume is enabled, the volume of the playback is affected by the alpha value of a superior Alpha, Color and Material node.

The category Audio Control provides properties to start and stop the audio playback. The property Control can be bound to a Keyframe Animation node to control the playback in the time-line of the Animation Editor. The property Ordinal specifies the audio device that should be used for playback.

The category Processing contains input properties to change to behavior of the sound source. Unique specifies if the sound source remains unique even if the node is multiple linked within the Hierarchy tree. This is useful in case that an object must be rendered twice e.g. for a glow effect and the sound source is linked to this object. In this case the sound should not occur twice. If the property StopIfBlocked is activated, the playback of the sound will stop if the SoundSource 3D node is blocked and start from the beginning if it is unblocked. Otherwise the sound will pause and continue. The property SoundMode3D specifies how the 3D sound is processed. It can have the following values:

Disable 3D sound processing is disabled and the sound seems to originate from the center of the listeners head.
HeadRelative The 3D properties of the sound source are all relative to the current position, velocity, and orientation of the listener. This means that the movement of the listener has no effect on the 3D sound.
Normal The sound source is positioned and oriented absolutely in world space. This is used for sound sources that do not move and turn with the listener.

The properties MinDistance and MaxDistance define the range in which the sound volume decreases. If the sound source is nearer than MinDistance, the volume will not increase and it will not decrease it the sound source is beyond MaxDistance.

The input properties in the category SoundCone define the sound cone that is emitted by the sound source. InnerAngle specifies the inner angle of the sound cone. Within this cone the sound has its maximum volume. The property OuterAngle specifies the outer angle of the sound cone. At any angle outside this cone, the volume is set to the value of the property OutsideVolume. Between the inner and outer cones is a zone of transition from the inside volume to the outside volume. The volume decreases as the angle increases. By default SoundSource 3D behaves like an omni-directional sound source, because the outside volume is not attenuated, and the inside and outside cone angles are at 360 degrees.

Because this node is based on DirectSound, the audio playback from it can not be embedded in the Video Output.


ViewListener

The ViewListener node is a combination of the View node and a listener in 3D space. It’s the eye and ear within a Ventuz scene. The positioning of the ViewListener is done by a matrix which is bound to the property View. This matrix comes either from one of the Camera nodes or the Matrix nodes.

Compared to the View node the ViewListener node extends it by three input properties. The property Ordinal specifies the audio device that should be used for playback. This value must match the Ordinal value of a SoundSource 3D node in order to hear any sound. The property DistanceFactor defines the number of meters in a vector unit. By default, the distance factor is 1.0. If the velocity of a sound is (2.0, 0.0, 0.0), the sound source is considered to be moving along the x-axis at 2 meters per second. If a different unit of measurement for 3D graphics vectors should be used, DistanceFactor must be changed accordingly. The property DopplerFactor affects the Doppler shift effect which occurs if listener and sound source are moving relatively to each other. To disable the Doppler effect, DopplerFactor must be set to the minimal value.