How to activate Inactive objects by collision

1.	Create Sphere. This is the object which will collide with Inactive fragments and activate them by collision.

2.	Set its name to "Rock" and position to [0,10,0]

3.	Add RayFire Rigid component to Rock and set Initialization to At Start.

4.	Create Cube, this will be a ground cube which will be used for collision.

5.	Set its name to "Ground", position to [0,0,0] and scale to [10,1,10]

6.	Create another Cube. 

7.	Set its name to "Floor", position to [0,5,0] and scale to [4,0.2,4]

8.	Add RayFire Shatter to the Floor object, in Voronoi properties set Amount to 300 and click the Fragment button. New object Floor_root will be created.

9.	Destroy or Deactivate Floor object, we won’t need it anymore.

10.	Add RayFire Rigid to the Floor_root object and set Initialization to At Start.

11.	Set Simulation type to Inactive. Inactive objects simulate like dynamic objects but they always have 0 gravity and 0 velocity until they will be activated.

12.	Set Object type to Mesh Root. It means that this Rigid component will be copied to all children objects with mesh with object Type Mesh instead of Mesh Root. 

13.	Start Play Mode. 

	Rock will fall to the floor fragments and start to slowly push them and at some point it will make hole big enough to fall to the Ground. Notice that some pushed floor fragments freeze in the air. Obviously this looks unrealistic and to fix this we need to activate such fragments.

14.	Turn Off Play Mode. 

15.	Select Floor_root object and in Activation properties set Velocity property to 0.3

	When something hits an inactive object it gets velocity and if this velocity will be higher than By Velocity value object will be activated, otherwise it’s velocity will be set back to 0.

16.	Start Play Mode. 

	Now Rock activates too many fragments, even fragments which got very low velocity because they were pushed by other pushed fragments.

17.	Turn Off Play Mode. 

18.	Select Floor_root object and in Activation properties set Velocity property to 3.

19.	Start Play Mode. 

	It looks much better now, some fragments close to the collision point were activated, but some fragments around the collision point still freeze in the air. We can fix this by lowering By Velocity value so they also will be activated but there is better way specially for fragments which can be in constant low collision with other dynamic objects, such fragments always will be pushed with low velocity and you will have to set By Velocity property very low to activate them which is not what you may need. 

20.	Turn Off Play Mode. 

21.	Select Floor_root object and in Activation properties set Offset property to 0.1. This property measures in units and allows to activate the object if it was moved from its initial position to By Offset value.

22.	Start Play Mode. 

	Now fragments close to the collision point activates By Velocity and fragments around collision points activates By Offset.

23.	Select the group of fragments in scene view and click on Activate button on top of Rigid component UI. This is a manual way to activate specific fragments, to do this in your code you can use the Rigid component public method Activate().