A blog on software engineering by Trevor Brown

Faking Volumetrics With Blender


This tutorial video is 26 minutes long.

This tutorial will teach you how to make particles appear volumetric and create semi-realistic clouds and smoke with Blender 2.49

without using volumetrics. You might wonder what good fake volumetrics are when you could just use real volumetrics with Blender 2.5. Well, there are several advantages. First, fake volumetric are faster because there is no “volume precache” and second, they cast shadows from shadow buffer lamps onto other particles and strands.

So let’s get our scene setup.

There’s nothing solid but a red and white smokestack. Add a cylinder and a delete the center end vertices. Then scale up along the Z axis to about 4. Next select all the verts and extrude them and right click, leaving them in the same position. Then use the shrink/fatten tool (Alt-S) to give the edge of the smokestack some thickness. Next deselect all, then select all the verts on the bottom and scale them out to about 1.2. Now go back to object mode and move the smokestack to the right. Then in the editing buttons select “Set Smooth” and then click on “Add Modifier” and select “Edge Split”. Now the smokestack material, leave all the shader settings the way the are but change reflection to 1.00, and the specularity to 1.00. For the textures add a node texture in the first slot, leave it as the default red and white checkerboard pattern. Now set the mapping parameters as shown below.

material buttons

Add a blend texture in the second slot and click flip “XY” button, set the colorband as shown.


Set the parameters as shown. This texture will make the top rim of the smokestack look dirtier than the rest of the smokestack.

Smokestack texture

Now the lighting. This scene only has two lamps, the first is a hemi lamp. Add the hemi lamp anywhere in the scene and point it straight down, then rotate it on the y-axis -40 degrees. Set energy to 0.3 and the color to light grayish-blue color. The second light will be a spot light positioned down and at angle opposite to hemi lamp. Set the parameters to energy = 1.5, color = h 0.18 s 0.12 v 1.0, falloff = constant. Set the shadow parameters to shadow buffer, classical, with a size of 60.0, softness of 0.15, and with a buffer size of 3872. Spot parameters

Next let’s set all the world parameters. The sky is nothing but a blue background, I chose #80ACDC as the color of the sky. Go to the Ambient Occlusion tab and turn the AO on. Set the sampling to approximate and the energy 0.3.

Now comes the fun part - the smoke. Place the 3d cursor directly above the center of the smokestack and add a Icosphere. The scale down to 0.5 and add a subsurf modifier. Go to Object<Particles and add a new particle system. Set all the parameters as shown. particle params

Then go to materials and add a material to the sphere and set the setting as show below.

particle material Now that we have the particles set up you can press the bake button. As you can see the smoke stays close together as it goes up. This is not the way real smoke behaves, real smoke spreads out and gets thinner as it goes up. We will add a lattice and apply it to the particles, then stretch the top out to make the particles spread out. So add a lattice in the same spot as the particle sphere them set the UV parameters to U = 5 V = 5 W = 20. Then using proportional editing shape the mesh into a funnel like shape. Like this.

Lattice Shape Then rotate the lattice and and position the bottom of the funnel over the sphere, as shown. Now select the sphere and add a Lattice modifier to it. Enter the name of your lattice in the Lattice field.

Now we need a bit of wind to make the smoke move randomly, so add a Empty and go to Object<Physics click on the field type drop down menu and select wind. Set the noise to .2 and set the energy to 0.9. Then press “I” and select “Force Strength” then open up a IPO curve window. Use the up key to advance 200 frames ahead, then change the force -.02, move your mouse over buttons window and press “I” again and again select “Force Strength”. Repeat this several times to create a nice random force strength curve. Rotate the Empty so the wind blows horizontal.

Now everything is done except one thing - the shadows. The whole point of this tutorial is to make the particles look like they have volume. Right now if you render a picture you will see they look completely flat. So we need something to cast shadows.  We will use a triangle billboards. We will start one billboard and add particle instance modifier to duplicate the billboard to each particle.

So position the 3d cursor to the at the center and add a plane. Select two verts and Press Alt-M and select “Merge at Center”. Back in edit mode add a Empty in the same position as the plane. Now select the Empty and, holding shift, select the plane and enter edit mode. Select all the verts and and press Ctrl-H and select “Add, to Selected Object”. Now the modifiers. You’ll see the first modifier is the hook modifier we just added. Click the Add Modifier button and select “Particle Instance” from the menu, then enter the name of the particle emitting sphere in the Object field. Next we will add a Lattice modifier so the billboards will be effected by the Lattice like the particles are.  Now we need to make the billboards point to the light. Select the empty and go to object menu and click “Add Constraint” and select “Copy Rotation” set the parameters as shown. Empty constraint Scene Setup

If you render now you will have nice shadows, but one problem, the billboards show up. There is a simple way to fix this, go to the billboards material buttons and click on “Ztransp” and “OnlyCast”. And that’s it! you now have ordinary particles that look like volumetric smoke! Smokestack