|
CriWare Unreal Engine
Plug-ins for CriWare solutions.
|
Atom Rack is the main mix element to ouput sound with ADX. An Atom Rack is the asset reprentation of an ASR Rack used by the sound render of ADX Atom.
In ADX sound engine, a mixage unit is called an ASR rack.
An ASR (Atom Sound Renderer) Rack is a group of DSP buses. ASR rack has always a main DSP Bus (BUS0) that is the main audio output.
A DSP Bus has for input any sound source's voices that are assigned to send audio to it, voices are panned individually (per sources 3D positioning and multi-channel based), then mixed togethers in one audio signal.
Following this, a DSP effect chain is applied to the audio signal.
Finally the bus audio ouput signal gain is attenuated or increased by a volume fader.
Except for the main DSP bus, all buses can send their audio output signal to other buses within the same ASR rack using a bus send with a volume level.
An ASR rack also defines where its final ouput signal is sent. This can be an hardware device or another ASR rack.
In the follwing diagram, two sound Cue are sent to individual ASR racks. Those two ASR racks send their output signal to a main rack that mixes them just before the main DSP bus volume fader (pre-fader stage).
For more information, please refer Basic knowledge of CRI ADX2.
For detailed diagrams above, please refer to Processing flow in the library
To set up a new Atom Rack, right-click from the Content Browser, then select ADX Atom > Sound Render > Atom Rack.
ADX Atom have always a main ASR rack created when initialized.
Therefore, it needs to be linked with an Atom Rack to be setup from Unreal Editor.
You can specify the main Atom Rack in Project Settings: CriWare > ADX Atom > Sound Renderer > Master Rack
Alternatively, main Atom Rack can be set on a per Atom Config basis. Open Atom Config in Content Browser. In its Detail panel, enable Override Master Rack and assign the desired Atom Rack. When the default Atom Config is loaded it will use the specfied Rack inside the Atom Config instead the one defined in the Project Settings.
By default a sound source sent its audio to the main Atom Bus or the main Atom Rack.
There are several ways to send sound sources to a Atom Rack:
To play a sound source on a Atom Rack, or to send its generated audio to a Atom Rack, assign the new Atom Rack asset to the Atom Rack property on the sound source. The Atom Rack property on sound assets is considered the base Atom Rack of the sound, and 100% of the audio is sent to that Atom Rack.
Each Atom Sound or Atom Component can send their sound to a choosen Atom Rack or to multilple DSP Atom Bus within the same Atom Rack.
A Base Rack property is given in Atom Sound with a list of Atom Bus Sends.
To open the Details panel for an Atom Sound (any classes derived from Atom Sound Base...), double-click the Atom Sound in the Content Browser.
To open The details of an Atom Sound Cue or Atom Sound Wave, first double-click the owner Atom Cue Sheet or Atom Wave Bank in the Content Browser, then double-click the Atom Sound in the Sound Browser.
You can choose an Atom rack to send the sound by checking Enable Base Rack in the Rack section.
Thes sound is send to the main DSP bus (BUS0).
To send to specific Rack's Atom bus, check Enable Bus sends and add an entry.
Atom Rack sends can also be set using Atom Attenuation settings. This is a convenient way to set up Atom Rack / Atom Bus sends on large numbers of assets from one place. Since Atom Bus sends can send their audio based on distance to the listener, it makes sense to use this where distance attenuation is also defined.
For more on this method, see Atom Attenuation.
This Blueprint function provides a way for audio components to dynamically route their audio to arbitrary Atom Buses using whatever method you choose.
Send Dynamically to Atom Rackes in Blueprint
To set a Atom Rack Send you will need:
Also see Blueprint APIs and Atom Buses later in this document.
Atom Gameplay Volume supports sending audio to Atom Buses in a similar way to how sends are set up directly on sound sources. The primary difference is that the Atom Bus send is based on its location relative to the Atom Gameplay volume geometry.
The properties in the Atom Bus Send array are identical to the properties that are directly set on the sound sources themselves.
Sound sources will send their audio to a given Atom Rack Send Array based on whether the Listener Location State shows the listener inside or outside the Volume.
Atom Gameplay Volume also supports Atom Bus Override, depending on the Listener Location State. The Atom Bus is overridden by another Atom Bus, depending on whether the listener is inside or outside of the Volume.
To open the Details panel for an Atom Rack, double-click the Atom Rack in the Content Browser.
You can use the Rack graph editor to create parent-child relationships.
You add an Atom Rack by drag-dropping it from the Content Browser onto the Rack graph editor.
You edit the parent-child relationship by connecting the nodes as shown below.
In the Rack graph editor of the Child Rack"</em> Details panel, Atom Racks are connected as shown in the image below. <br>
@image{inline} html ./Images/578b87ce-639a-4b88-9529-d8821bcf4710.png "Screenshot.png"
In the Rack graph editor of the Parent Details panel, Atom Racks are connected as shown in the image below.
You can specify some sound render paremeter.
Following properites are a redirection of the main Atom Bus properties for convinience:
When an Envelope Follower is assigned to the main Atom Bus those proserties specifies the Attack and Release Time of the follower.
See Envelope Following for more information.
Output Volume, Wet level and Dry Level can be externaly modulated in real time from Atom Modulation system. See Atom Modulation for more information.