Earth Explosion


Hi everyone,
I need to make explode the crust of the Earth in a realistic way. The whole Eath is going to explode. The force is coming from the center of the Earth and destroy the whole planet. But I need to make different sizes and shapes of these pieces of The Earth being blown. I try the Parray method in Max… but it’s not really cool. I’d tryied to install Thinking Particules 2.5 but I’ve have a network error (9) when I use it. Something like the IPCLAMP i can really set. it’s a pity, TP2.5 is not working for Max9. I really wanted to use TP for the shattering effet that I’ve seen on the Cebas site. May be someone can help to fix that?.. Or use another software less expensive. May be Particle Flow is able to do it ?
Thank for your lights,


sure it is. you just have to put some more work in it, than with TP. here are some nice fragmenting scripts around, and also which assign the mesh of your fragments to particles, or particles drive your fragments. you can do it the way you want.

have a look on allanmckays fragment tutorial. (
also wath the rigidbody tutorial. there is a nice script inside :wink:


sure it is. you just have to put some more work in it, than with TP. here are some nice fragmenting scripts around, and also which assign the mesh of your fragments to particles, or particles drive your fragments. you can do it the way you want.

have a look on allanmckays fragment tutorial. (
also watch the rigidbody tutorial. there is a nice script inside :wink:


There’s also the Split it Up script in the MaxScript challenges thread here at CGTalk. It’s amazing, and perfect for what you need!


it sounds like you dowloaded the cracked version of tp2.5 becasue theres support for install problems that you get for free for buying it. so if you bought it call the support team up.


Don’t need TP, just use allan’s frag enerater script and then write a simple script that spawns each frag as particles and then blow it away, quite simple actually


check SplitItUp by Rivendale:

and here´s a script that links fragments to particles and spawns only as much particles as there are frags:

on ChannelsUsed pCont do
pCont.useAge = true
pCont.useTM = true
pCont.useShape = true

on Init pCont do
global ChunksArray = $frag_* as array

on Proceed pCont do
t = pCont.getTimeStart() as float

if t < 0 do
NumChunks = ChunksArray.count
for i = 1 to NumChunks do
pCont.particleIndex = pCont.NumParticles()
pCont.particleAge = 0
pCont.particleTM = ChunksArray[i].transform
pCont.particleShape = ChunksArray[i].mesh

on Release pCont do


note that $frag_[/i] can be replaced with the name of your fragments. the wildcard () makes sure every frag will be included from frag_0 to frag_[i]n.

NumChunks = ChunksArray.count[/i] counts the Fragments.

for i = 1 to NumChunks do


Adds as much particles as there are frags.

kind regards



Hi I’d like to thank everyone for the answers you gave me and for you support.
While I was trying from my side, I was looking your ideas and tip and I used some of them while they were writing.
So here is my solution.
I finally didn’t used TP2.5 coz I really needed working on my max9. So I took Particle Flow for max 9 which is very efficient when well setted. I made many trials and found the AllanMckay site to guide me. Concerning the shattering of the crust of the earth… I took my courage and the cut function of max and for 1 hour cutted in big and little fragments the earth… which gives a very good result. Combined to the script of Mckay for assigning modeled objets to particules… the ending was easy. You need to script a bit modifying your script with your own need… then It’s ok. You mix this with a PARRAY effects and some fake objects for simulating a growing magma… and it’s ok… Now the result is in calculation on my little render farm… I’ll put the animation in few days to have critics.
Once again… thanks to everyone.
PS: if you want to see my firsts works go on
in the 3d section Architecture/or media.


Here I need a beta tester. Don’t try to bake the animations yet. (Last button.) It’s broken but I’m working on it.

Edit: Forgot to mention that the instructions are inside the script so read them first. I’ve studied the SplitItUp script and this is more forgiving and doesn’t result in any artifacting.

Enjoy:thumbsup: The whole package is here and even creates the Pflow for you. I just expect some feedback on it. Please be critical. Also make sure you have your pivot point where you want the most fragmentation to occur. (most likely the center of your object)


great stuff!

i´ll test it today´s evening :slight_smile:




Great Job supremepizza,
I tested it, and it works well…
i didn’t link it to Pflow… lake of time… But I’ll try.

Some suggestions for modeling tool.

  • Try making breaking in a fractal or turbulence mode…
  • no feeding the shape, let it simple (i mean open shape), like that you apply a shell and it gives thickness to your fragments.
  • asking for average size + variations (hard demands but so cool to discover this in a tool).

If I would have had this tool during my work… I can tell you I would have enjoyed it.
But thank for people like you for developping this kind of tool…
Go on… i wait impatiently some improuvements in your tool…



Very nice work!

works like a charm!

only thing i missed form the “split it up” script is the mess up insides.

good stuff!


when i create a flow from the frags and wanna hide the original parts i get this error message :frowning:

– Error occurred in btnBHide.pressed(); filename: C:\3ds Max 9\Scripts\Rifter; position: 6591
– Frame:
>> MAXScript Rollout Handler Exception: – No ““hide”” function for undefined <<


That is what was causing the artifacting. I am working on a proceedural way to do a soft select of inner verts and add noise without exceeding the external mesh parameters. I could add another step so you can manually do the soft selection then add a noise modifier before the mesh is exploded into objects. Want the option?

Just to add to the instructions for anyone trying to use this without experience you need to:
After using the tool.

  1. Hit the “8” hotkey go to the “Atmosphere” rollout and add “Fire Effect”
  2. Scroll down to the “Fire Effect Parameters” rollout and hit the “Pick Gizmo” button
  3. While the button is still picked (blue) hit the “H” hotkey then click the “all” button and then the “Pick” button
  4. Then I generally change the density of my fire effect to one-ish ( around 1 )

Another note in the create gizmos rollout the value of 1 represents 1 gizmo per fragment. So if you want a long trail of fire to follow your fragment you may need more gizmos than you anticipated. If so you can go back to the rollout and add more gizmos then add those to your fire effect as well. Also to reset or “zero” the gizmos back to their start position I generally go to the spawn operator then tick it to per second then back to by travel distance.

Side Note: The gizmos also work well with the Afterburn plugin.

Then Render out 2 passes one with Event 1 Display set to Geometry and another with display set to ticks. On the second pass (geometry turned off) add a radial blur that looks something like the attachment. Composite the 2 passes and wow yourself.


Sounds like you’re using a different method to split up your geometry.:scream: NP Just choose all your objects that you want to use as fragments and run this.

select $'Object*'--selects all new objects by name
for i in selection do 
( = uniquename "bfrag"--renames to bfrag

Another possible reason you got that error could be that the objects were unselected some time. If so just re-select the objects. Thanks for pointing that out though. I’ll force another select on pressed to avoid that problem in the future.


Merci :slight_smile:
Oui le script est l’unité centrale intensive.
(Comment est mon français ? )

Please explain (elaborate/compliqué).

This method is meant to represent the volume of the object. If you want to do a hollow object, egg, bottle, jar, etc… just apply the shell modifier first before running the script.

I have planned to do a fragment by size but I haven’t gotten that far yet.

:thumbsup: Merci de nouveau.


yeah that would be great!

heh I may have a project that could realy use this. If it ends up going threw i will have to send u a check!


I updated the instructions a bit and added the ability to bake animations. So you can cut up fragments, bake the animations, cut, bake, etc… I haven’t tried baking with out gizmos so if baking without them causes an error let me know. I used a couple persistent globals so if this causes any bugs let me know and I’ll look into it. About the interior “messing up”. I have been experimenting with a few methods that won’t artifact the mesh. However the only method that works perfectly is the same method as the SplitItUp script. I hate using the same code so I have ommitted this for the time being. However sometimes there is only one way to do something so I may end up using the same method. I really don’t want to use the method since there is no manual/realtime control of the “messup” other than using the noise modifier which refuses to work the same inside script as it does outside (manually). I’ll give it another week or 2 before I figure out the best method. Anyway…

Atached: Rifter 1_1b



will give it a try tomorrow! for now you could probably cut the air here :frowning:

kind regards



supremepizza please don’t stop updating this, it’s too good