This topic provides
some tips on how to control fractures.
After you procedurally
slice up an object for fracture, the new pieces fit snugly among
each other. When one piece breaks loose after a fracture event,
it might be in contact with other pieces that are still part of
the non-fractured body. This can throw the broken piece into unstable
oscillations against two or more opposing pieces. The result is
a chain-reaction throughout the fracture body, with all the pieces
flying off into space. It might appear as though some of the pieces
simply wink out of existence. Unlike normal rigid bodies in reactor,
Fracture pieces are allowed to exist in a state of interpenetration,
where restoring forces are applied to separate them. Many objects
sitting in penetrating states next to each other can result in an
To make the system more stable and less
prone to exploding:
Try one or more of the
- Reduce the
value in the Fracture Penetrations group
of the reactor utility World rollout. This value can be as low as
–1.0, but –0.1 should suffice in most cases. This scales the
Tolerance for pieces of a fracture object.
A negative Scale Tolerance value effectively shrinks the object
as it is perceived by the collision-detection system. Pieces that
were snug against each other now have a comfortable safety zone
where no collisions take place. This is tied to the Collision Tolerance
value, so changing Collision Tolerance changes the effective tolerance
used when fracture pieces collide with other fracture pieces. It
dramatically reduces unstable oscillations. This is the most effective
thing to try when you wish to avoid explosions.
- Manually offset the pieces from each
other, leaving a physical gap between all pieces. The gap should
be as big as Collision Tolerance * Scale Tolerance.
- Increase the Energy Loss value on the
Fracture object's Properties rollout. This is the percent of energy
that can be "lost" in the fracture event by transferring momentum
from the broken piece to the unbroken Fracture object. Increasing
it increases the relative velocity between the newly fractured piece
and the remaining unfractured pieces. Ultimately this reduces the
chances of a chain-reaction of unstable oscillations.
- Increase the Separation Time value and/or
decrease the Velocity Cap in the
Penetrations group of the World rollout.
This controls how aggressively reactor pushes the pieces out of
a state of interpenetration. After doing this you may notice visible
- Slice up your object in a different configuration.
Avoid creating very small pieces, especially if they are right next
to very large pieces.
- Turn on the Use Connectivity check box
on the Properties rollout of the Fracture helper. When connectivity
is enabled, clumps of pieces that are disconnected from other clumps
but still internally glued to each other are set free to move independent
of the other clumps. This serves to create gaps between fractured
pieces earlier, so unstable oscillations won’t happen.