How to Create a Dancing Particle Effect using 3ds Max and Thinking Particles
Twice a month we revisit some of our reader’s favorite posts from throughout the history of Cgtuts+, and today we have an awesome 3Ds Max post by Cristian Pop. This tutorial was first published in November 2009 and provides a great look at using thinking particles! Let’s take a look…
In this intermediate level tutorial you will learn how to create an interesting “dancing” particle effect using 3ds Max and Thinking Particles. You also will be able to choreograph the animation to your audio track by creating an animated map using AfterEffects.
Final Effect Preview
Project Files
Download
Step 1
Open AfterEffects and create a new composition. Set the “Width” and the “Height” to ’400′. Change the “Pixel Aspect Ratio” to “Square Pixels”, the “Frame Rate” to ’30′, and set the “Duration” to 20 seconds.

Step 2
Download the project files, and import them in AE.

Step 3
Drag “Metric_Bass.wav” into the composition’s timeline. Right click on it, go to “Keyframe Assistant” > “Convert Audio to Keyframes”. This process converts the audio waveform into keyframes, and stores them in a new layer called “Audio Amplitude”.

Step 4
Change the new “Audio Amplitude” layer’s name to “Bass Amplitude”. Delete the “Metric_Bass.wav” layer, because the new layer contains all the audio data you will need. To expand or collapse a property group, click the triangle to the left of the layer name or property group name. Expand “Bass Amplitude” > “Effects” > “Both Channels”.

Step 5
Drag “Bass_map.png” in the composition’s timeline. Expand “Bass_map” > “Transform”.

Step 6
Next, you will connect the “Bass_map” layer’s “Opacity” value to the “Bass Amplitude” layer’s audio data. Press the “Alt” key and click the on the Bass_map’s “Opacity” stopwatch icon, to add an expression to this property.

Step 7
Click the “Expressions Pick Whip” icon, and drag a wire to the Both Channel’s “Slider”. This action will connect the “Opacity” value to the audio data.

Step 8
Do the same for the “Normal” and “Treble” files.

Step 9
Render the animation as a .jpeg sequence.

Step 10
Open 3ds Max and set the “Animation Length” to ’600′ frames (20 seconds) in the “Time Configuration” dialog.

Step 11
Create a plane, and change the name to “Emitter Plane”. Set the plane’s length and width to ’140′, and move it to the coordinates: x = 0, y = 0, and z = 0.

Step 12
Add a “UVW Map” modifier to the plane and disable “Real-World Map Size”.

Step 13
Go to the “Command panel > Create > Particle Systems > Thinking” menu, and place a “ThinkingParticles 3″ icon in the Viewport.

Step 14
Go to the “Modify” panel, and click “Properties” in the “Thinking” rollout (you can also use ‘Alt + Shift + P’ to open, and ‘Alt + Shift + C’ to close the “ThinkingParticles 3″ user interface). In the “DynamicSet Tree” view, select “Master Dynamic”. Disable “Edit on the fly” to see the changes in real time and enable “Show Mesh” to see the particle shape.

Step 15
In the “Particle Group Tree” view, click the “Create” button, under “Master System”. Name the group “Box Particles”, by clicking on the name “Group” twice (slowly).

Step 16
To dictate what the particles do, you need to create a “Dynamic Set”. In the “DynamicSet Tree” view, click the “Create” button, under “Master Dynamic”, and name the new Dynamic Set “Generate”.

Step 17
Highlight the “Generate” DynamicSet, and then go to the right-hand side of the dialog, where you will see a new set of “Create” rollouts.

Step 18
Click the “Operators” icon, and then choose “Generator” from the drop down list. Select the “MatterWaves” node to highlight it, then click in the schematic portion of the “Wire Setup” view, and add this node to your “DynamicSet”.

Step 19
In the “MatterWaves” rollout, on the right portion that appears, click the “Pick Object Based Emitter” button, and select the “Emitter Plane” in the viewport. Select “Box Particles” as your “Group” (from the drop down menu). Change the particles creation type to “Pistol Shot”, and set the particle amount to ’3000′. Change the “Life Span” value to ’300′, the “Speed” value to ’0′, and the “Size” value to ’2′.

Step 20
In the “Emitter” rollout, set the “U/V Emitter” to ’50′.

Step 21
In the “Write to Channel” rollout, set the second spinner of the “UVW” parameter to ’0′. This spinner defines the Data Channel number that should be written (-1 means no Data Channel is written).

Step 22
In the “Particle Group Tree” view, highlight the “Box Particles” group. In the “Box Particles” group rollout, on the right portion that appears, you need to create a “Data Channel”. In the editbox, write ‘UVW Data’, then select “Point3″ from the drop down list. Press the “Add” button. Now the “UVW Coordinate” data from “MatterWaves” is written to “Data Channel 0″.

Step 23
Create a new “DynamicSet” and change the the name to “Effect”. In the “Create” panel, click the “Groups” icon. Add the “Box Particles” group to your Dynamic Set.

Step 24
In the “Create” panel, click the “Helpers” icon and add a “TexmapColor” helper. This helper is used to get the current surface color of a map.

Step 25
Select the “Box Particles” group and move your cursor over the light green box in the upper right corner of the operator. It will display a tooltip that says “Outputs”. Click on the “Outputs” box which will reveal a complete list of output data streams for the “Box Particles” group.

Step 26
Choose “*Position” and “*CH: UVW Data”. Now these outputs are visible on the “Box Particles” group.

Step 27
Connect the “*CH: UVW Data” output of the “Box Particles” group to the “UVW” input of the “TexmapColor” helper. From “*CH: UVW Data” the “TexmapColor” helper gets the UVW coordinates information.

Step 28
In the “TexmapColor” helper rollout, add the image sequence created in AE.

Step 29
Now, you need to change the particles position on the ‘z’ axis, based on the map. In the “Create” panel, select “Standard” from the drop down list. Add a “Position” operator, and connect the “Particle” input to the “Particle” output, of the “Box Particles” group.

Step 30
Because the ‘x’, ‘y’ and ‘z’ position is set to ’0′, all the particles will be moved to the same position. You need to get the original particle position on the ‘x’ and ‘y’ axis, and to leave them unchanged. Click the “Helpers” icon and add two “Point3″ helpers.

Step 31
Connect the “Position” output of the group to the “Vector” input of the first “Point3″ helper. Now this helper gets the original particle position. Connect the “X-Value” and “Y-Value” outputs of the first “Point3″ helper to the “X-Value” and “Y-Value” inputs of the second “Point3″ helper, then connect the “Vector” output of the second “Point3″ helper to the “Position” input of the “Position” operator.

Step 32
As you can see, the particles go back thier original positions on the ‘x’ and ‘y’ axis. Next, you need to define the position on the ‘z’ axis. Add an “Add&Multiply” helper and change the operation type to “A*B”.

Step 33
Add a “Random” helper, and change “Value 1″ to ’55′ and “Value 2″ to ’60′.

Step 34
Connect the “Value A” input of the “Add&Multiply” helper to the “Value” output of the “Random” helper, and “Value B” input to the “Color” output of the “TexmapColor” helper. Now, connect the “Value” output of the “Add&Multiply” helper to the “Z-Value” input of the second “Point3″ helper.

Step 35
The “Color” output of the “TexmapColor” helper sends out a value between ’0′ and ’1′ (’0′ for black and ’1′ for white). The “Add&Multiply” helper multiplies the value from the “Color” output with a random number between ’55′ and ’60′, then sends out the result to the “Z-Value” input of the second “Point3″ helper, which in turn affects the ‘z’ position of the particles. As you can see, the particles are now moving on the ‘z’ axis based on the information from the animated map.

Step 36
Next, you will assign a cube shape to these particles. Go to the “Create” panel, and from the drop down list select “Shape”. Add a “Std Shape” operator. Select “Cube” from the drop down list, then connect the operator to the “Box Particles” group.

Step 37
To apply a modifier to a group, select “Master Dynamic”, in the TP3 user interface, and enable “Groups as Objects”. Now you can select the group, as an object in the viewport.

Step 38
Create a “Standard” material and add a “Gradient Ramp” map in the “Diffuse” slot. Open the “Gradient Ramp” map and disable “Use Real-World Scale”, then set the “Tiling” to ’1′.

Step 39
Create a gradient (as shown), then assign this material to the “Box Particles” in the viewport.

Step 40
Select the “Box Particles” and add a “UVW Map” modifier. Disable “Real-World Map Size”.

Step 41
Click on the “UVW Map” modifier, then rotate the modifier’s “Gizmo” by ’90′ degrees on the ‘y’ axis.

Step 42
Scale down the “Gizmo” on the “z” axis and move it up (as shown). Now render the animation.

Final Effect
I hope you enjoyed this tutorial. Below you can see my final results.

Don’t miss more exciting tutorials and guides published daily! – Subscribe to Cgtuts+ by RSS.

What’s the name of the song?
Metric – Help I’m alive
Help I’m Alive by Metric
Amazing Tutorial! I will try it soon
Amazing!
Look’s like nipple to me ;-) Btw. nice tiiii i mean tut :-P
cool!! nice one bro!
Cool effect!!Nice tut!
i am so tired of the 3d max tuts. that program is garbage and you keep putting tuts for it up!!!!!!!!!!!!!!!!!!!
There is a very good reason why we keep posting 3ds Max tuts (along with tuts for other major apps of course), and that is because many people use the program both professionally and in the classrooms, and there is an extremely high supply and demand for them. Besides, although you may think that 3ds Max is garbage, if you read the comments from other readers, check the apps you are required to know to apply for jobs on most CG job boards, and take a look at the final results of the 3ds Max tutorial authors…you will see that a vast majority of the industry does not agree with that statement.
i don’t agree you man … i am working for now on 3ds max about 4 years … the app is not garbage at all…. it’s all about how much you work on it you will be good at the end
Very nice tutorial ..and thanks a lot for it…. but i am beginner in after effect and i want to know how to put the sound on the movie back in after effects ….thanks in advance
Just put the movie and the sound files in the timeline, then when you render the anim, in the Output module settings, enable Audio output. That’s all.
Cool but you can make this so much faster with Cinema + Mograph 2.
Waste of time with nodes.
Thanks!
That’s really good, but not everybody use c4d. This tut is not just for creating a dancing particles effect, following it , you can learn something about tp, nodes, operator, helper and how to use them to create simple or complex particle effects.
Thanks guys ! I am glad you like this tut. You can also watch more tests, using different animated maps on vimeo:
http://vimeo.com/6891623 ,
http://vimeo.com/6891636
I got all the way to step 13 and there is no button on my 3ds max 2009 for ‘Thinking particles’. Where does this object come from – all the others in your diagram but where Thinkning is in yours I have blank space.
Thinking particles is a plugin form Cebas. Here you can download a demo version of TP3:
http://www.cebas.com/index.php?pid=product&prd_id=15&feature=570
Good luck with the next steps and I’m glad that you guys follow my tuts !
In step 28 when you say ‘In the “TexmapColor” helper rollout, add the image sequence created in AE’ what texture map do I choose from the material list of 3ds max to be able to add the image sequence created in AE?
Choose “Bitmap” then open the image seguence.
I think ive sussed it – choose bitmap and tick the box that says sequence.
sir this a full volume of speaker wonder full craete good
i like it
Can anyone recommend an application for seperating the bass, treble, and normal from other songs?
Can’t wait to try out this tutorial!
i like this tutorial, but i have a small doubt is ther any way to put a video on the particles……….?
where are the project files? Do we have to divide in three the song? bass mediums and trebles?
LOL! No. Max does that for you.
huy well i found it jajajaja
I am using 3dsmax 9 in that there is no thinking particle…… from where should i get it…. pls need your help wanna try this tuts……… Pls email me on sheetalart@gmail.com
I am new to Adobe After Effects, I am stuck on step 9 “Render the animation as a .jpeg sequence.” ? how is this done in Adobe After Effects CS4?
Sorry but I cannot download the Project Files
1: I’ve done quite a few of your tuts, and they’re all good, this one’s awesome too.
Hooooowever, there’s a few things I wish you could cover here please?
- How do we get the Bass, Treble and Normal from any song? I know there’s a tutorial on videocopilot covering this, but I’m wondering if you did it in another way?
- Secondly, your download project files button seem a bit buggy… :S Worked third time or something for me back when I did it…
Other than that, AWESOME tut man!
To get the bass and the trebe, I used a small program called GoldWave : http://www.goldwave.com/release.php
Thanks!
A very helpful tutorial – really!
but i don’t get one thing – where can i adjust the maximum height that the emitted particles can reach. in my scene they jump too high. Is there something becides the AE-generated jpg sequence to have more control over particles ? maybe i’ve missed something ?
thx anyway! =)
At step 33, decrease “Value 1″ and “Value 2″.
Thanks!
Thank you very much )
very appreciated!
what music track you use in this preview?) nice
Like to know myself
nice tutorial…3ds max is one of the craziest apps out there. depending on how much time you spend getting familiar with it, the possibilities are endless. personal story.
hi cristian great tutorial. can you pls tell why do step 41 ? just wanted to know what i am doin.
To be honest, this tutorial is quite useless without knowledge of how to extract the bass and treble from a soundtrack yourself.
You can only use this tutorial with that little sound clip you made. I was hoping to make a video with this effect for my friends music track.
Hi
Everybody may be send this file.
Thanks.
Thodesigner2004
Kudos on the tutorial and using Metric as the demo artist!
Wow, Thinking particles for that?? I think it could be done without plugin and even without particles, just a basic scatter and tricks for the color change. You don’t have to create the displass in After effects, everything could be done in 3ds max. Maybe I ll wrote a different version for this effect…
Anyway your tutorial is a good first step in TP.
It’s true, you don’t need TP for this effect… I am just a big fan of TP and I wanted to show how to create this effect with it.
Thanks,
Cris
hey chris, what music is that?
thanx
Hi Igor, it’s Metric – Help I’m alive
I for one am very thankfull for these 3DS max tutorials. Please keep them coming
Really getting discouraged. I’ve followed your tutorial to the letter, but at step 35, when I should see love bouncy particles, they just sit there. Nothing happens. Any idea where I went wrong? And I did remember to check sequence when importing the map. The tutorial is pretty easy to follow, so I’m getting a bit annoyed. The only thing different is that I made my own map in AE with different music.
Ahhh… Figured it out. By “to the letter” I meant missing that one little thing.
I have a daught Step 39
im wondering how did you do the gradient color.