3D Positioning

3D positioning is a function that allows you to set the playback information of a sound source that is played in 3D space.
In the Cue settings, you can set cone settings, distance attenuation, Doppler effect, etc.
You can attenuate and change the sound depending on the position and orientation of the 3D source in the game space, the position and orientation of the listener, and the distance between them.

You can preview the 3D positioning with Session Window or CRI Atom Viewer .

How to support 3D positioning?

Tool settings

To support 3D positioning, you must change the "Pan Type" of the Cue or waveform region to "3D Positioning" or "Auto".

criatom_tools_atomcraft_pos3d00.png

Runtime configuration

You need to set a 3D listener and 3D source for the Player.

For details, please refer to the runtime manual.

Note
By default, units such as distance attenuation and Doppler coefficients are treated as meters.

The difference between "3D positioning" and "Auto"

If the pan type is set to "auto", the Cue will be played with either 3D positioning or Pan depending on what the Player is set to.

Specifically, if the Player supports 3D positioning, it will play in 3D positioning, and if not, it will play in panning.
To take advantage of 3D positioning, you need to set a 3D source and a 3D listener on Player.

On the other hand, if you specify the pan type as "3D positioning", you must set the 3D source and 3D listener to the Player and start playback in a state that supports 3D positioning.
Unlike the "Auto" setting, if the player does not support this setting, it will not play the pan, but will generate an error callback and abort the playback process.

When playing a normal preview of a Cue set to "Auto", it will be played with "3D positioning" by default.
To preview 3D positioning and panning switching in the "Auto" setting, use Session Window .

How to set parameters for 3D positioning

3D positioning is configured in the "3D Positioning" Inspector.

There are 3D positioning settings that can be set in Cue and waveform regions.

3D positioning settings (Cue)

The following items can be specified for a Cue:

  • Pan type
  • Effective angle
  • Attenuation Distance
  • Doppler coefficient
  • AISAC control linked to distance and angle
  • Random sound source shape
See also
Set Cue

3D positioning settings (waveform region)

The following items can be specified for a waveform region:

  • Pan type
  • Fixed pan

The initial value for the waveform region pan type is "Default", which refers to the Cue value.

See also
Waveform Region Settings
criatom_tools_atomcraft_pos3d_waveform.png

Width value when pan fixed is enabled

If "Fixed Pan" is enabled, the original sound will be played as is, without panning based on the position of the sound source as seen by the listener. (Calculations other than panning, such as distance attenuation, will be applied.)
When "Fixed Pan" is enabled, the wideness value will have the following behavior specifications:

  • When the wideness value is 1, the sound is played back at its original position without panning based on the relative position (default).
  • When the wideness value is 0, the sound source is mono-mixed and played as a point source.

By setting the graph where the wideness value decreases to Distance AISAC and using it in combination with "Fixed Pan", you can achieve the following behavior.

  • When the distance between the listener and the sound source is close, the sound is played back without panning, maintaining the original position.
  • When the sound source is far away from the listener, the sound source is mono-mixed and played as a point source
criatom_tools_atomcraft_pos3d_fixpan_spread.png

The black italic "L" and "S" stand for Listener and Source, respectively.
The blue "L", "R", "Ls", and "Rs" correspond to each channel in the original waveform file.

The position and direction of the sound source, and the position and direction of the listener are specified by the program.

Set distance decay parameters

The distance attenuation value is set in "3D Positioning Minimum Distance" and "3D Positioning Maximum Distance".
As a guideline, it is recommended to set it to between 10 and 300.

The maximum and minimum distances for distance attenuation are set taking into account the size of the sound source and the attenuation rate depending on the distance.
Example 1) When bees are flying around your head: Distance attenuation minimum 0.2, distance attenuation maximum 0.6
Example 2) When a jet plane passes overhead: Distance attenuation minimum 20, distance attenuation maximum 800

Note
A minimum distance of 0 will result in intense panning near the listener.
If the maximum distance is 0, the sound will only play when the sound source is at the same location as the listener.
criatom_tools_atomcraft_pos3d01.png

Customizing 3D effects using AISAC controls

By creating AISAC controls that correspond to the distance and angle from the sound source, you can create richer 3D spatial tonal changes that match Cue's unique distance attenuation and angle changes.
The parameters that can be linked with AISAC control are as follows:

  • Distance from the sound source
  • Listener reference azimuth angle
  • Sound source reference azimuth angle
  • Listener Listener reference angle of elevation
  • Sound source reference angle of elevation
criatom_tools_atomcraft_pos3d.png

Randomize sound source placement

Specifying a random sound source shape will result in 3D positioning sound sources being randomly placed when the Cue is played.
The shapes that can be specified are as follows:

  • (No Random)
  • Rectangle
  • Rectangular
  • circle
  • Cylinder
  • Sphere
  • freedom
  • List
criatom_tools_atomcraft_pos3d_random.png

For rectangles and cuboids, the random widths for left/right, front/back, and top/bottom will be within the range of the specified values.
For example, if you set the random width of the left and right of a rectangle to 10[m], the result will be set randomly in the range of -5[m] to +5[m].

For circles and spheres, the random radius will be randomized to be less than or equal to the specified radius.
For example, if you set the random radius of a sphere to 5 [m], the distance from the original position will be randomly set to a maximum of 5 [m].

For a cylinder, the random width above and below will be within the specified value.
The random radius will be randomized to a value less than the specified radius.

Free lists are used in conjunction with programs.
If it is free, the randomization method can be freely set by the program (a callback function is provided).
If you select a list, the coordinates will be randomly selected from the list you registered in the program.