Overview
CrySpatial is a Head-Related Transfer Functions (HRTF) audio plugin that allows users to enhance the soundscapes of their games with binaural audio. Upon each mono sound that is passed through it, CrySpatial filters out and computes a separate audio track for each of the listener's ears.
Since the plugin is deployed differently from other Engine modules, its setup is covered on this page.
In general, audio plugins must:
To get CrySpatial up and running for your audio designer, compile it and hand over the following files based on the middleware implementation used.
When compiled as a dynamic library, CrySpatial is loaded as part of the middleware's audio engine on initialization.
To be able to use CrySpatial in your middleware's authoring tool, the files listed in the section above need to be copied over to the plugin folder of your middleware.
Copy CrySpatialWwise.dll and CrySpatialWwise.xml into the Audiokinetic\Wwise <version>\Authoring\x64\Release\bin\plugins folder of your Wwise installation. CrySpatial can then be loaded as a MixerPlugin on your Mix buses after restarting Wwise.
CrySpatial won't work in the Wwise Authoring Software if either CrySpatialWwise.dll or CrySpatialWwise.xml is missing.
The user plugin directory for FMOD projects can be defined under the Preference → Assets → Plug-ins Folder option of your FMOD window's main menu.
Copy CrySpatialFmod.dll to this user plugins directory and restart FMOD Studio; CrySpatial should now become available as a Plug-in Effect.
CrySpatial's main functionality is to consume a 1-Channel Mono input and provide a 2-Channel Binaural output, meaning it should not be used with sources that are not Mono.
CrySpatialWwise is used like a normal Mix plugin, by adding it to a mix bus and routing mono voices to it.
CrySpatialWwise
Similar to other Spatialization plugins, CrySpatial cannot consume multi-channel signals; these signals cause issues, such as high-pitched feedback-like sounds that appear when routing stereo files into CrySpatial in Wwise v2018 and earlier.
This also means that CrySpatial should be inserted on the lowest bus in your hierarchy, to prevent other buses from changing the number of channels of a file before going into CrySpatial.
CrySpatial will, based on the output configuration of its bus, produce either a 2-channel binaural, 5.1 Surround, or 7.1 Surround output of the voices routed to it. This is especially useful for games that support multiple speaker configurations, since you don't have to create multiple Mix setups for different situations.
FMOD utilizes Mixing plugins on a per-voice basis. That means CrySpatial has to be added as a Plug-in Effect to voices that should be spatialized.
Plug-in Effect
CrySpatial only works for setups that provide a 1-Channel Mono input, producing a 2-Channel binaural output that is not Attenuated.
In order to have attenuation, the FMOD Attenuation Effect has to be added after CrySpatial has been added as a Plug-in Effect.