RayFire for Unity

RayFire is a plugin that allows you to infinitely Demolish or Slice 3d objects in Runtime over and over as well as Preshatter them to fragments in Editor. 
Automatically creates particle Debris and Dust on Demolition, Activation, and bullet impact.

RayFire provides Advanced Dynamic Simulation Control over your simulated objects and demolished fragments like Activating them at the moment you need and affect them by Bomb explosion, Gun shooting, Wind and Vortex forces.

  - YouTube tutorials playlist
  - Unity forum page
  - Discord channel

Full Feature list:

Simulation Types:
- Dynamic. Object will be affected by gravity, will start fall down and it will be possible to affect on it by other simulated objects.
- Sleeping. Object will freeze in the air until the first collision, then it will start behaving as Dynamic object.
- Inactive. Object will freeze in the air and will not be affected by gravity, it can be affected by other simulated objects but it will not start to fall down until it will be activated. After activation object will start behaving like a Dynamic object.
- Kinematik. Object will affect other objects but will not be affected anyhow by any other object. Object can be activated and start behaving like Dynamic object.

Object Types:
- Mesh. Simulate object using it's Meshfilter's mesh in Mesh Collider.
- Skinned Mesh. Allows to demolish SkinnedMesh objects.
- Nested Cluster. Simulate object using all it's children Meshfilter's meshes as one solid concave object. At demolition Cluster will detach every child and start to simulate them on their own. If a child is a root for other children with meshes after demolition it will be considered as Nested Cluster as well.
- Connected Cluster. Simulate object using all it's children Meshfilter's meshes as one solid concave object. At demolition Cluster will detach fragments at contact point while the rest of the fragments will stay as solid cluster. At every demolition cluster checks itself for connectivity and if it detects that some groups of fragments are not connected together anymore they will start to simulate as separate Connected Clusters.

Demolition Types:
- Runtime. Demolishes object in runtime relative to the collision point. Supports Windows, Mac OS X, iOS, and Android platforms.
- Reference Demolition. Swap demolished object to predefined reference which can be another scene object, cluster, prefab, or FBX asset. Can be used on any platform.
- Awake Precache. Prepare fragment meshes in Awake and create fragments at demolition.
- Awake Prefragment. Prepare fragments in Awake and keep them deactivated until demolition.
- Reference Demolition. Demolish object to fragments created in Unity and saved as FBX/Mesh Asset or created in other 3d applications.

Fragment Types:
- Voronoi. Low poly, convex, physics friendly fragments.
- Splinters. Low poly, convex, stretched along one axis.
- Slabs. Low poly, convex, stretched along two axes.
- Radial. Low poly, convex, creates radial fragments pattern.
- Custom. Low poly, convex, uses custom User defined Point Cloud for fragments distribution.
- Slice. Slice object by planes.
- Tetrahedron based fragments.

- Fragments clustering with debris. Allows to glue fragments together and produce complex high poly concave fragments.

Forces:
- Bomb. Explode objects relative to a point in space.
- Wind. Affect to rigid objects like a Turbulent wind.
- Vortex. Affect to rigid body objects like a Vortex

Helper components:
- Connectivity. Establish connectivity for Inactive and Kinematik objects and activate them when they lose connection with Unyielding objects.
- Gun. Allows to shoot objects, physically affect them, generate debris, dust, impact flash, apply damage, and demolish objects.
- Blade. Allows to slice objects in Runtime.
- Debris & Dust. Automatic Debris and Dust particle generation for demolished and activated objects.
- Sound. Play audio clips on Rigid component Initialization, Activation, and Demolition.
- Activator. Activates Inactive and Kinematik objects and turns them to Dynamic objects.
- Combine. Combines all children meshes to one single mesh.
- Recorder. Record dynamic simulation into animation clip to Play as animation in Runtime as Kinematik objects with the ability to return objects back to simulation as Dynamic objects.
- Snapshot. Save demolished/simulated objects in Runtime and Load in Edit mode in the scene for environment modeling purposes.

Other features:
- Collapse. Allows to demolish complex prefragmented structures considering connectivity among fragments.
- Runtime Caching. Allows to distribute runtime demolition process over time and demolish Hi poly object to hundreds of fragments.
- Multi-Material fragmentation. Allows to fragment objects with several different materials and applies defined material to the inner surface.
- Reset & Reuse. Allows to demolish object once and then reset and reuse already cached fragment meshes or fragments.
- Export to Unity asset. Allows to export fragment meshes into Unity asset.