Bulk Rendering
Binaural rendering of spatialized audio sources in 3D space with high resolution and fidelity is a complex process - even more so when many sources are involved.
In order to provide the highest quality rendering while maintaining low CPU usage in demanding projects, trueSpatial can be set up to accumulate as much information as possible about the sources and their spatialization in order to render them in a single pass.
This requires a two step process that involves two dedicated plugins:
The atmokyRenderer is inserted in an Audio Mixer Group and does the heavy lifting by batch-rendering the spatialized audio sources. It receives audio data and spatialization metadata from the atmokySpatializer plugin instances, which is automatically instantiated by Unity when the "Spatialize" checkbox is enabled on an Audio Source.
Under the hood, Renderer and Spatializers are connected via their Renderer Index
parameter. The Renderer will only render the Spatializers that have the same index as itself.
Signal Flow
The following diagram illustrates the signal flow:
This example shows a simple setup with four Audio Sources.
The two voice sources are routed to the Voices
Mixer Group, which has an atmokyRenderer plugin with Renderer Index 1
. Their Renderer Index
is set to 1
, accordingly. The effects sources are routed to the Effects
Mixer Group, which has an atmokyRenderer plugin with Renderer Index 2
.
Each subgroup will be rendered separately, so you can apply different effects to each subgroup, like level attenuation or EQ, before they get mixed together on the main bus.