[RELEASED] - Impact CFX - Collision Effects System

I am very pleased to announce the release of Impact CFX - Collision Effects System!

Impact CFX is the successor to my asset, Impact - Physics Interaction System. It is a powerful and flexible material-based collision effects system for producing effects such as audio, particles, and decals from physics collisions and raycasts.

Asset Store | Documentation | Tutorials Playlist | Discord

Demo
At the moment I do not have a web or other demo available, but I do have a walkthrough of the demo included in Impact CFX that demonstrates what it can do:

Getting Started
Check out the Getting Started tutorial for how to get up and running.

Collision Effects
• Play audio when physics objects collide with each other, with sounds based on the collision velocity and the objects’ materials.
• Play sliding and rolling sounds.
• Emit particles on collision.
• Leave decals behind on collision.
• Support for terrains.
• Works great with rigidbodies connected by joints and ragdolls.

Footsteps
• Utilize Impact CFX to play different footstep sounds based on the material a character is walking over.

Weapon Impacts
• Use Impact CFX to play sounds, emit particles, and place decals for bullet impacts.

Note that knowledge of C# scripting is required to implement footstep and weapon impact effects done via raycasting.

Performant & Configurable
• Impact CFX utilizes Unity’s Jobs system and Burst compiler to efficiently process effects with minimal performance impact, even with hundreds of colliding objects.
• Extensive configurability means that you can optimize Impact CFX for your specific needs.

Integrations
FMOD Integration | Wwise Integration | Master Audio Integration

Dependencies
Impact CFX requires the following packages from the Package Manager:
• Burst
• Collections
• Mathematics

Please let me know any questions, concerns, or any other feedback that you have!

Impact CFX does support emitting particles and placing decals for sliding and rolling! If you look at the Particle Effect and Decal Effect documentation, you can see there are options to enable the effect for sliding and rolling.

I made a quick example for the particles: Imgur: The magic of the Internet

The decals are not dependent on any particular decal system. Really all the decal effect is doing is simply placing a game object; it does not have any concern for what other components are attached to the object.

Impact CFX Version 1.1.0 has been released! Check out the Change Log.

2 key features in this update:

  1. Impact Particle Systems and Impact Decals now have the ability to change certain properties based on the collision velocity. For example on Impact Particle Systems you can change the particles’ starting size, speed, and lifetime:

  2. A new Enable Impact CFX Logging option has been added in the Project Settings that enables debug logging to help pinpoint issues that are causing effects to not play correctly.

Also, while technically separate from the core 1.1.0 update, I have made some extensions for enhanced support for URP and HDRP Decals. You can read the docs and download the extension packages here.

As always, please let me know of any questions, concerns, or any other feedback!

Does it support Master Audio?

Currently I do not have an official integration package for Master Audio. I have been waiting to gauge demand before I invest in making one for Impact CFX (so consider your post the first +1 :))

1 Like

Impact CFX Version 1.2.0 has been released! Check out the Change Log.

The most notable change in this update is an overhaul of the Impact Effect Processors to consolidate much of the code into shared base classes. This greatly simplifies writing custom effect processors (though custom effects generally still require a good amount of work).

The Custom Effects documentation has also received a major overhaul, with code examples and an example effect package available for download.

Just wanted to follow up on this. I now have a Master Audio 2022 integration package available for download: https://roadturtlegames.com/impact-cfx/documentation/master-audio

1 Like

Hello! Would this be compatible with Unity 2020.3.26? Or is it just for Unity 2021.3+?

Impact CFX does mostly work with Unity 2020.3, however there are couple of editor scripts that use APIs from 2021.3+. These are not necessarily difficult to modify to work in 2020.3, and the core Impact CFX system does work otherwise, but I am not officially supporting any Unity versions before 2021.3.

I see, would it be easy to check which scripts need changes? I’m not versed in C# but if it’s just editor scripts the asset itself would work without issues?

There are only a few problematic scripts, and the specific lines that are producing errors technically could just be commented out or deleted (of course this would disable the associated functionality, but the affected areas are not critical and there are workarounds).

If you really would like to use Impact CFX in Unity 2020.3, you can send me an email at support@roadturtlegames.com and I can provide the modified files. However when installing updates it would be up to you to keep these modified files, and since I am not supporting anything less than 2021.3 in an official capacity I cannot guarantee that future updates will always use features or APIs that are compatible with 2020.3.

1 Like

Thank you for your availability, we decided to bite the bullet and upgrade our project to Unity 2022.3!
After a couple of errors, Unity crashes and “Re-Import All” throughout the whole day, everything is now working as intended. Thought it was going to be an actual nightmare but it was all right.
All this to say I ended buying your asset as well, can’t wait to try it properly. It’s bit weird not having a demo scene for built-in but it was just a matter of setting standard shaders on all materials no biggie.

The main reason I didn’t include a demo using the Built-In renderer is because it doesn’t come with any real decal solution out of the box, the the closest thing being projectors. URP and HDRP were also a bit simpler to convert between since they share some common standards and workflows.

I will admit that I have underestimated how many devs still use Built-In over URP or HDRP.

1 Like

Hey Cramonky,

I’m trying to do a build of the game but I have these errors:


Would you know how to fix this as this is the only thing stopping me from doing a build? I have Jobs installed (and FMOD extension thank you btw)

etc.

Thank you

Do you have logging enabled in the Impact CFX settings? It looks like its throwing errors on lines related to debug logging, which is not Burst-compatible.

1 Like

Thank you, that was it, not familiar with Burst and all that!

Hey @Cramonky ,
Just bought impact cfx : would you have an fmod example project (with events and parameters) working with your plugin ? Would save me a lot time
Thanks !

1 Like

Came here asking the same question :slight_smile:

1 Like

I can provide a sample project, but it would have some caveats:

  • I obviously can’t freely distribute Impact CFX within this package, so you would have to open the project in Safe Mode to import it yourself to resolve errors.
  • I can’t redistribute the FMOD for Unity package either, so you would have to import that yourself as well and potentially have to make sure things are configured correctly.

If you would still like to have a simple sample project with this extra setup work, I can put one up for download in the documentation.

1 Like

Sure, no problem with the caveats ! I would just like to see how the events and parameters are configured in FMOD studio. Everything else else on how it works in Unity is well explained in your doc :slight_smile:

Edit : or maybe it’s really really easy : should I just add the parameters like “ImpactCFX_Intensity” on my sounds, and Impact will do the rest ?

Edit 2 : making something like this just with the “ImpactCFX_Intensity” works well for me :

But I think it might be nice to have a prefab parameter for fmod studio users, just to have the exact same thing as in Unity built in audio