I’ve always been fascinated with the beauty of sparks, and have wanted to create them for a while, but the results were always disappointing. This was mainly due to their being no way to change the color or opacity of the sparks throughout the animation.
However, the particle info node recently came to Blender and saved the day! We can now finally delve in to creating some satisfying sparks :)
Plus, a bonus slow mo version:
Hope you enjoyed the tutorial! Creating something cool using this tutorial? Post it in the comments below. Read the Russian Translation
1. Delete the default cube and lamp, and add a Cylinder.
2. Go to side view (Numpad 3) and rotate the cylinder by 90 degrees.
3. Go into edit mode and from the front view (Numpad 1) select 3/4 of the mesh as pictured, then press delete.
You should now have a quarter cylinder like this:
4. Scale it down along the Y axis to make it thinner, then scale the whole thing as pictured:
5. With the cylinder still selected, add a new particle system and set the settings as shown:
6. Set the normal amount to 10, and random to 5, to shoot the sparks in every which way.
7. For even more randomness, add a subsurf modifier above the particle system so the cylinder shape isn’t so visible in the particles:
8. We need a floor, so add a plane and scale it up to be the size of the grid floor.
9. To make the sparks bounce off the floor, go to the collision settings and change the Damping and Friction as shown:
10. Add an icoshere and place it somewhere below the floor. This will actually be what each particle looks like.
11. Select the particle emitter, go to the particle render settings and set it to use the icosphere as shown:
12. Since the particle system is using the icosphere to render it, the spark material must be applied to the icosphere.
13. Switch to the Node Editor coz it’s about to get advanced and we need more control.
14. Press Shift+A and add a Particle Info node (new feature!).
The Particle Info node is a wonderful addition to blender that allows you to change a particle’s material according to a particle system’s velocity, lifetime and age etc. This allows us to (finally) be able to make particles fade out, as you’ll soon see…
15. Add a Math node (Add>Convertor>Math) and set the type to Divide, then connect it to the Age and Lifetime outputs as shown:
16. Add a ColorRamp node (Add>Convertor>ColorRamp) and connect as shown:
17. When sparks are born they are white/yellow hot and slowly cool to a red color before dying. So change the Color Ramp node to match that:
Give it a render to see if our ploy worked:
Next we’ll make the sparks fade out. This will be accomplished by blending the emission shader with a transparent shader.
18. Add a transparent shader:
19. Add a Mix Shader node and position and connect it to the Math node and two shaders as pictured:
20. Go to the render panel and enable Motion Blur with a shutter speed of 0.7.
Motion blur is currently only supported in CPU. Update! Motion blur now works in GPU as well! Available in any release after revision 52645 (download latest build here).