Impact CFX Main Page Index API Reference Change Logs
Conversion From Legacy Impact
Impact CFX Project Settings Impact Tags Logging Impact Material Registry
Impact CFX Manager Material Mapping Managing Registered Materials
Impact Materials
Audio Effect Audio Source Prefab Audio Effect Processor Particle Effect Particle System Prefab Particle Effect Processor Decal Effect Decal Prefab Decal Effect Processor URP & HDRP Decals VFX Batch Effect VFX Batch Master Creating a Visual Effect VFX Batch Effect Processor Managing Attached Effects
Impact Objects Impact Object Single Material Impact Object Rigidbody Impact Object Rigidbody (Cheap) Impact Object Custom Velocity Objects With Multiple Materials Impact Terrain
Impact Triggers Common Trigger Properties Material Count Impact Collision Trigger Impact Slide and Roll Trigger Impact Speculative Collision Trigger Impact Simple Collision Trigger Impact Particle Collision Trigger Impact On Trigger Enter Impact On Trigger Stay
Impact Raycasting
FMOD Integration Wwise Integration Master Audio Integration
Custom Triggers Custom Objects Creating an Impact Object Script Impact Material Processors Custom Effects Impact Effect Authoring Asset Effect Result Effect Data Impact Effect Processors Impact Simple Effect Processor Impact Pooled Effect Processor Pooled Effect Object Pooled Effect Authoring Pooled Effect Result Pooled Effect Data Object Pool Pooled Effect Processor Add to Impact CFX Manager Example Effect Download

FMOD Integration

Impact CFX features an optional package for integrating with FMOD. This allows you to utilize FMOD for playing audio effects, rather than using Unity's built-in audio clips and audio sources.


Setup

First, you will need make sure you have downloaded and set up the FMOD for Unity package. You can get this package from either the FMOD site or from the Asset Store.

Next, you will need to download the Impact CFX FMOD Integration package.


FMOD Audio Effect

The Impact CFX FMOD integration introduces a new effect asset: the FMOD Audio Effect. This is very similar to the included Audio Effect, but with fields designed for FMOD. You can create a new FMOD Audio Effect by going to Assets > Create > Impact CFX > FMOD Audio Effect.

The FMOD Audio Effect has the following properties that relate to FMOD:

  • Collision Event – The FMOD event to trigger when processing single collisions. This event should consist of one-shot sounds.
  • Slide Event – The FMOD event to trigger when sliding. This event should have looping sound(s).
  • Roll Event – The FMOD event to trigger when rolling. This event should have looping sound(s).

FMOD Audio Effects also share the following properties with the default Audio Effect:

  • Velocity Reference Range – Input velocities will be converted to a normalized (0 to 1) value based on this range and the Collision Normal Influence.
  • Collision Normal Influence – How much the input normal will effect the calculated intensity of the collision. This can be used so that grazing collisions will have a low volume even if they have a high velocity.

FMOD Audio Effect Processor

Like all other effects, the FMOD Audio Effect requires a processor component, the FMOD Audio Effect Processor You can create this component by going to Add Component > Impact CFX > FMOD > Impact FMOD Audio Effect Processor. Make sure that you add this processor to the Impact Effect Processors list on your Impact CFX Manager.

The FMOD Audio Effect Processor has the following properties:

  • Queue Capacity – The maximum number of effects that can be processed in a frame.
  • Proxy Object Pool Config – This integration uses empty game objects that manage each FMOD effect instance. This property controls the object pool used for these empty game objects.
    • Pool Size – The size of the object pool. This effectively defines how many effects can be active simultaneously.
    • Stealing – The behavior for stealing when all of the objects are in use.
  • Effect Attach Mode – Defines what object involved in the collision, if any, the effect should attach to. This can be useful for long collision effects that you want to follow an object. See Managing Attached Effects for more info on how to properly manage attached effects.
    • None – Don't attach to an object.
    • This Object – Attach to the object that triggered the effect, if it is present.
    • Other Object – Attach to the object that was collided with, if it is present.
  • Audio Fade Out Time – For sliding and rolling effects, how long the audio takes to fade out once sliding/rolling has stopped.

FMOD Parameters

Impact CFX sends parameters to FMOD to let you control your sounds:

  • ImpactCFX_Intensity – A 0 to 1 value representing the intensity of the collision. This is typically the best parameter to use when controlling your sounds. This is calculated by normalizing the collision velocity relative to the Velocity Reference Range configured in Unity, and also takes into account the Collision Normal Influence.
  • ImpactCFX_RawIntensity – The raw intensity of the collision, taking into account the Collision Normal Influence. There is no specified range for this value.
  • ImpactCFX_CompositionValue – A 0 to 1 value representing the influence of the material at the contact point. If not using Material Composition, this will always be 1. You could use this value to scale the volume of your sounds, so that a higher composition yields a louder volume than a lower composition.
  • ImpactCFX_CollisionType – An integer number that represents the type of collision:
    • 0 = Collision
    • 1 = Slide
    • 2 = Roll

Examples

The following is an example for a collision sound effect:

There were 3 steps to creating this effect:

  1. Create a parameter with the name ImpactCFX_Intensity and a value range of 0 to 1, and create a parameter sheet for it. For this particular effect, the Timeline sheet is empty.
  2. Add audio clips. In this example the audio clips are placed in the parameter sheet. This makes it so a different audio clip will play based on the collision intensity.
  3. Add automation to the Volume so that the volume increases as the intensity increases.

This next example shows a possible setup for a sliding or rolling effect:

There were 3 steps to creating this effect:

  1. Add an audio clip to the Timeline with a Loop region.
  2. Use the same ImpactCFX_Intensity parameter from earlier to create a parameter sheet.
  3. Add automation to the Volume and Pitch so that the volume and pitch increases as the intensity increases.

These are only example setups, and you have complete freedom to use the parameters provided by Impact CFX in any way you like.