I would like to take a 3d character model, cut out a bunch of shapes (or a bunch of triangles in the shape of the pieces I want) and then have the pieces separate from each other at the beginning of the animation and fall apart with gravity so it looks like the model is falling apart in shattered pieces.

Is there a way to run a script on a mesh, cut out these pieces, instantiate all of them as separate models and then run gravity on them during the simulation?

  • \$\begingroup\$ Is your model textured? Have you thought about what you would display on the interior faces of the shattered pieces? \$\endgroup\$ Commented Apr 4, 2012 at 0:06
  • \$\begingroup\$ Is this in real time or prerendered? Also, what tools? \$\endgroup\$
    – DMan
    Commented Apr 4, 2012 at 0:41
  • \$\begingroup\$ Related question: Glass shatter simulation \$\endgroup\$ Commented Apr 4, 2012 at 5:13

1 Answer 1


Option a) have your 3d artist cut up suitable chunks for you, and disperse them at will. This will still demand a lot of work getting the pieces to do what you wish them to do. Make it look reasonably good without all the fuss. Slice the characters up in as many ways as you have attacks : horizontal, vertical, diagonal splits whatever, maybe even have them preanimated. Or you can have the bits drop around like particles. If you want every piece realistically floppy, prepare for lots of work.

Option b) make some fairly challenging code to cut the mesh at specific points, and separate pieces into objects that fly out. This is not perhaps not worth the effort, though it may look pretty cool.

( Apologies for slack first answer which simply suggested taking the easy way out. )

  • \$\begingroup\$ Option b can be achieved with a "voronoi shatter," and this is no easy task! \$\endgroup\$
    – notlesh
    Commented Apr 4, 2012 at 5:16
  • 3
    \$\begingroup\$ Option c) hot-swap to a previously cut up model with the falling animations. \$\endgroup\$ Commented Apr 4, 2012 at 5:50

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .