You are on page 1of 41

Chapter 12: Particle Toolset Discussion

By Roland Hess

Particle systems are different from other Blender objects in a number of ways. First, instead of being made
of faces, edges and vertices, they are composed of a large number of points (up to 100,000). Second, the
locations of these points are calculated by Blender and are based on velocity and force values, instead of
being modeled by the user into exact shapes.
Various particle systems, both rendered and in the GUI.

Particle systems can be used for a variety of effects, but are most commonly found when making "aerial"
effects like smoke, fire, clouds, dust motes floating in sunlight, magical sparkles swarming around an
actor...you get the idea.

Emitters

Particle systems need a place to start. That place is an "emitter."

In Blender, an emitter can be any mesh object you choose. The shape of the mesh will form the starting
point for the particles.

A particle system is created by RMB selecting a mesh object, and clicking the "New" button in the Particles
panel of the Object buttons (F7), found in the Physics buttons subcontext.

Callout: Particles systems are generated by emitter objects.


The Particles panel. In the default configuration, the Particle Motion panel is nested as a tab behind the main
Particles panel, but we've pulled it out to show you everything at once.

Before you examine the particle tools, a couple of points about particle systems in general are in order:

- There are two kinds of particle systems, Static and Dynamic, each of which has its own tutorial. Static
particles are used for systems of Strands like hair, fur and grass. Dynamic particles are used for the
previously mentioned fire, smoke and dust effects.
- Unless you take special steps, the emitter mesh itself will not show up in a render.

The most basic settings for particles are found in the "Emit" section of the panel.

Amount: This is the total amount of particles in the system. How many you use will vary in relation to exactly
what you are trying to do. Keep in mind that more particles will take more calculation time, and, depending
on the speed of your computer, may slow things down significantly.

Sta: This stands for start, and refers to the frame number on which the emitter will begin to create particles.

End: The last frame on which the emitter will create particles.

An emitter will create particles at a constant rate between the Start and End frames. So, with only these
three controls, you can cause some serious differences in the way particle systems can act. 10,000 particles
being created between frames 1 and 1,000 will make 10 particles per frame, a fairly low rate. On the other
hand, 10,000 particles with a Start of 1 and an End of 2 will cause a burst of all 10,000 particles within 1
frame. Think of a fireworks explosion.
Life: How long each particle will live. Particles hang around in the scene for only as long as this parameter
will let them. After they die, new particles will be emitted to take their place, up until the End frame is
reached.

A low Life value (a couple of frames) will have particles blipping into and out of existence rapidly, like short-
lived sparks thrown from a welding torch. Life settings that are longer than the amount of time the particles
are actually being emitted will cause a build-up effect, with all emitted particles hanging around in the scene
long after the End frame.

Disp: Percentage of particles to display. This is indispensable when you are working with particle systems
that have enough particles to slow down your Blender experience. The value here is a simple percentage:
10 shows only 10% of the total particles, 50 shows 50%, etc. The really nice thing is that it is not just a
display speedup. Until render time, Blender does all of its particle calculations on this reduced amount,
giving good speed boosts for any particle-related activities. When you render your scene, though, the full
particle amount is used.

You can also control which parts of the mesh emitter the particles come from, in the appropriately named
"From:" section of the panel.

By default, both the "Verts" and "Faces" buttons are On, meaning that particles can be emitted from either
vertices or faces. For certain effects, you could restrict it to one or the other by setting either to Off. For
example, if you wanted to create an effect where particles emitted in a burst from several points on a grid,
you would turn off the Face option.

The particle system on the right shows particles emitting from faces and vertices. The one on the left only
emits from the vertices.
Rand: Creates a truly Random distribution. The normal distribution of particles looks pretty random to the
untrained eye, but from a mathematical perspective it isn't. Without getting all math-geeky, really random
things tend to cluster and clump. Their elements are not as orderly as the standard particle layout. When
looking at the illustration, you can see patterns in the standard emit, but none in the Random emit.

The particle system on the left has the normal particle distribution. The one on the right is using the Rand
option.

Even: Attempts to distribute particles evenly over the surface of the mesh emitter. Usually, Blender assigns
particles on a per-face basis, meaning that in a 20,000 particle system, each face of a 100 face mesh gets to
emit 200 particles. That sounds fine until you realize that some areas of the emitter mesh might have more
densely packed, smaller faces. Particles will be denser in those areas.

Using the Even option attempts to alleviate this by assigning each face a number of particles in proportion to
its part of the area of the mesh. You need to be careful when using this option with things that could change
the shape of the mesh though: shape keys, character animation through armatures, lattices, etc. These tools
can change the relative sizes of faces in your mesh, causing particles to seem to jump around as they are
reapportioned for different face areas.

Vgroup: Vertex Group. Vertex groups are covered in Chapter 4. You can enter the name of an already-
created vertex group here to cause only that portion of the mesh to act as an emitter.
A mesh with a vertex group of a face saved. The particles are set to emit from the "face" vertex group.

Sidebar: Materials: What do the particles look like?

Particles use a material option that is not covered in the Materials and Texturing chapter. We'll go over it
here. To get the most out of this, you should probably have read Chapter 9 so you understand the basics of
creating and working with materials and textures.

By default, particles are rendered with the Halo material. Halos are rendered at a different stage than normal
geometry, and are strictly 2D effects placed into the final render.

Note: Halos do not react to raytracing, so they will not show up in Ray reflections or Ray transparency. Also,
as they are a 2D post-render effect, Halos cannot cast shadows.

The following illustration shows what halos can look like:


A particle system, showing two different Halo settings.

A material's halo options can be accessed by enabling the "Halo" button on the material's Links and Pipeline
panel.
The Halo options for materials.

Tuning Halos to get them to do what you want is not an exact science. A lot of trial and error will be involved,
so try not to become frustrated.

HaloSize: This controls the overall size of the Halo. When working with Halos, this is the first setting to start
playing with.

Hard: This control varies Halos from rendering as tiny dots with a small lightness surrounding them (1.0) to
diffuse circular blobs with no discernible center (0.0). Particles that should look like "magic" would have high
Hard values, where smokes and other less defined effects would require near-zero values.

Add: Determines the level to which Halo effects reinforce themselves. Normally, several halos stacked in
front of each other would only render the values for the nearest halo. With Add turned up to 1.0, stacked
Halos reinforce each other, accumulating their brightness. Particle systems that are meant to simulate fire
should have high Add values.

In addition to the "glowing ball" look, Halos can be given other properties, too.
Ring, Lines, Star, and all three together as Halos.

The particle systems in the illustration show the effects of the Ring, Lines and Star buttons on the Shaders
tab. The buttons can be combined, as seen in the system on the lower right. The numbers of Lines and
Rings are controlled by the corresponding spinners on the same panel. Line and Ring color can be adjusted
individually through the color pickers on the Material panel, where the Spec and Mirror colors normally
reside.

Shading

By enabling the "Shaded" button on the Shaders panel, you can make Halos react to light.
The same particle system, rendered as both Shaded Halos and non-Shaded.

Any particle effect that would be shaded in real life, like smoke or clouds, should use this setting. "Magic"
effects, or anything that appears to glow, like fire, should avoid the Shaded option.

Alpha

In most cases, good particle effects will require reducing Alpha and enabling ZTransp. For example, when
making a cloud effect, you could simply make a low number of particles (100 or so) and give them a large
HaloSize and high Alpha value (0.9). This would produce a cloud, but it would have very low detail. A better
way to go about it would be to increase the number of particles (say, to 5,000), drop the HaloSize and drop
Alpha to around 0.1. This would produce a cloud of the same overall density, as the drop in Alpha would
offset the larger number of particles, but with much better detail and more of a sense of volume.

End Sidebar

Display

The set of buttons that is labeled "Display" contains controls that determine how particles appear both in the
3D view and at render time.

Material: the Material spinner selects which material index of the emitter you want the particles to use. In
Blender, meshes can have several materials attached to them. You will need to refer to the emitter's Material
buttons panels to see which number corresponds to the material you would like to use. If you are not
enabling the Show Mesh option, though, there will almost certainly only be a single material linked to your
emitter.

The Material panel, showing material index numbers.

Mesh, Unborn, Died: These buttons control whether or not the mesh, unborn, or dead particles show up in
the final render. If you want particles to show up before they are emitted (unborn) or after they have reached
the limit of their Life setting (died), you can do so with these buttons. For example, you may want your
particles to represent "fairy lights" or some such thing, which begin their life speckling the outside of a tree.
As the animation progresses, they fly off and about. In this situation, you would enable the "Unborn" option
so that particles that have yet to leave the tree are still visible.

Under normal circumstances a particle's mesh emitter will not show up in a render. The Mesh button makes
it visible.

Vect: Causes particles to render as lines instead of points, with the line facing along the direction the particle
is moving. The "Size" spinner beside this button controls the render size of the vectors, not their lengths.
Difference between standard particles, and vector particles.

Children

If you want your particles to generate new particles when they die, you use the Children tools.
Particles with children.

In the interface presented here, the Generation: 0 in the spinner is the first, main emission of particles. To
make particles create children when they die, adjust the "Prob:" spinner, which refers to the probability that a
particle will emit a child when its life ends. At the default setting, 0, no particles will emit children. If you
choose 1.0, this corresponds to a 100% chance that a particle's death will result in a child, meaning that all
particles will spawn children when they die.

To add additional generations of particles, use the Generation spinner to move into generations 1, 2 and 3
and adjust their probabilities to something other than 0.

Currently, child particles use the same motion settings as their parents, so children are limited to doing
simple fireworks effect.

Particle Motion

Once you have decided how many particles to emit, how long they live, and how they will be visualized, you
have to define how they will move.

Motion is controlled on the Particle Motion panel that shares tabs with the main Particles panel.
The Particle Motion tab.

Velocity Controls

Normal: This spinner gives particles a velocity based on the surface or vertex normal of the emitter at the
point where the particle is created. The non-technical explanation is that this will cause particles to shoot
straight out from the surface emitter. This control can give very fast motion, so you might want to begin by
clicking on the spinner's right arrow section which will advance the value by small increments.

Object: When emitted, particles have the same direction and velocity as their emitting object at that point in
the timeline. If your object is not animated and moving, this setting will have no effect. However, if your
emitter object is moving and spinning in 3D space, you get nice animated particles. With values approaching
1, all of the emitter's motion is used, and the particles will appear to fly off of it as though under the object's
momentum. Lower values, for example 0.2, will have the particles string out behind the emitter, but with a
small amount of following motion, like a smoke trail.

Random: This control adds a bit of random motion on top of that generated by the other controls. Usually,
very low values (0.001-0.025) will add believability to certain effects. However, this control can easily
override and essentially destroy other carefully refined control values, especially if it is cranked the whole
way up to 1.0. Try it and see.

Damping: Damping is a sort of friction control. 0.0 damping means that particles will continue at their initial
velocity until the end of their lives: they will not slow down. Turn damping up to 1, however, and the particles
will quickly slow to a stop, almost immediately after they are emitted.

Force controls
The force controls are simple. There are three spinners, one each for the X, Y and Z axes. The spinners can
range from -1.0 to +1.0, and apply a constant force along the indicated axis.

As an example, let's pretend that you would like your particles to appear to be affected by gravity. The Z axis
represents up and down, so to fake the effects of gravity, you could try a value of -0.5 in the Z force spinner.
This applies a constant downward (negative Z) force on all particles. -0.5 may or may not be the right value
to enter, but simply playing the animation in the 3D view will give you good feedback on whether it looks
correct or not.

On the opposite end, you could add a small positive value to the Z spinner in order to simulate the way that
smoke climbs into the air after it is emitted.

Texture Motion and Other Controls

There are a number of other controls for particle motion, many of them concerned with textures and groups.
Using 3D textures to control and alter the motion of particles can be tricky, and is a topic that, if covered
thoroughly, would double the size of this chapter. That being the case, it will not be covered in this book.

Force Fields

Particle motion can also be affected by Force Field objects. These are usually Empty objects that have been
activated in the "Fields and Deflection" panel of the Physics buttons.
The Fields and Deflection panel, once a field type has been chosen.

There are several kinds of force fields that can affect particles. To create one, add an object to your scene
(an Empty is good for this), then select one of the field types from the Fields dropdown menu on the Fields
and Deflection panel.
Wind, Sphere and Vortex fields.

The different types of fields shown in the illustration are:

Wind: A wind field pushes all particles in a uniform direction. The strength and direction of the wind are
visualized by the row of circles trailing away from the field object.

Sphere: Sphere fields act like magnets. Positive strength values attract particles toward the center of the
field object, while negative values repel them.

Vortex: A vortex field causes particles within its area of influence to move in a spiral.

The field types have a common set of controls:

Strength: Determines how pronounced the particular effect is.

Falloff: How quickly the effect dissipates as you get further from the field object. A value of 0.0 means that
there is no falloff and the field affects all particles regardless of distance. The best way to determine a good
falloff value, if you need one at all, is to experiment in the 3D view as feedback from moving field objects
occurs in real-time.

The MaxDist feature, if enabled by clicking the "Use MaxDist" button, sets an absolute cutoff beyond which
the field will have no effect. This Maximum Distance of effect is shown by a dashed circle around the field
object.

Particles as Object Duplicators


In addition to showing up as points and vectors, particles can also be used to make duplicates of other
objects. This technique can be a good way to distribute custom grass blades, small pebbles and other
objects.

The particle system on the right is set to duplicate the small object in the center.

To use this feature, make the object you wish to duplicate the child of the particle emitter (Ctrl-P). Then, with
the emitter as the active object, enable the "DupliVerts" button on the "Anim settings" of the Object buttons.
If you want the duplicated objects to follow the rotation of the particles, enable the Vect option on the
Particles panel of the Physics buttons.

Strands for Hair and Fur

There is a completely different way of using particles than the ones you have seen so far. Blender is capable
of dealing with particles as "Strands," which can be used to simulate hair, fur and grass, among other things.

To use particles as Strands, enable both the "Static" and "Vect" buttons in the Particles panel. When you do
that, the way particles are displayed changes completely.
A normal particle system on the left, with a Strand system on the right. Both of these systems have identical
motion and emit settings.

Strand particles operate under the same set of rules, and with the same set of controls, as standard
particles, with only a couple of exceptions. The main difference is that Strand particles, often called static
particles, have no "start" and "end" values - they are always there - and the "Life" value takes on a different
meaning.

Strand particles are really a drawing of the path that a normal particle would have followed, but frozen in
time. Just like a particle with a long Life value would travel farther than one with a short Life value, Strands
with long Life values are correspondingly long.

Also in the Particles panel, the Sta and End spinners are replaced by a "Steps" spinner.

The Steps control tells Blender how much detail to put into the Strand. If you think of a Strand as the
drawing of the path a normal particle would follow over its lifetime, Steps controls how closely the Strand
follows that path. A step value of 5, the default, draws the Strand using every 5th frame that the normal
particle would have followed, in essence "connecting the dots" between those locations. It's easy to see this
effect with very high Step values.
Strand particles with a life of 50 and Steps set to 25. See how each Strand is made of two straight lines.
Particle "dots" have been connected for frames 1, 25 and 50.
The same particle system with Steps set to 1. The curves are now very smooth, as the "dots" are connected
on every frame.

With Strand systems, the RLife spinner on the Particle Motion tab becomes particularly useful. RLife adds a
random factor to particle life, and in this case to Strand length. Very few strand applications (hair, fur, grass)
benefit from having strands of uniform length. Raising this setting can help to alleviate that.

If you are going to use the Strand particles on an animated emitter - by that we mean an emitter mesh that
will be deformed in some way - you will need to enable the "Animated" option on the Particles tab.

The real power of Strands, though, comes from rendering and material options that aren't available with any
other kind of object. Strands render with a special shading model called Tangent Shading that attempts to
create shading and highlights as they would appear in real hair situations.

On the Links and Pipeline panel in the Material buttons, you will find a popup button labeled "Strand" hidden
amongst several toggle buttons. Pressing the Strand button brings up a configuration palette.
The Strand configuration popup in the Material buttons.

Strands render differently than other types of objects. By default, each strand renders as a single pixel in
width, regardless of how close or far it is from the camera. This single pixel size can be changed on the
Strands configuration panel. The Start and End sliders control the pixel size of the Strand where it begins
and ends, and the Shape slider controls how quickly it blends between those values.

Strand Materials

Before you finish this chapter, we'll show you the controls for creating a material and texture that will map
along the length of a Strand, allowing you to create a variety of hair, fur and other looks. This is not a full
description of the material tools, though. If you haven't already worked through Chapter 9, you should
probably do so before tackling this.
A default Blend texture added to a Strand system's material.

The Blend texture type, chosen from the Texture Type dropdown in the Texture buttons is where the magic
happens. Once "Blend" has been chosen, the "Colorband" button on the "Color" panel needs to be
activated.

Note: In these illustrations, we have collapsed some panels and pulled some tabs off into their own panels
so you can see everything at once.

The Colorband tool consists of different markers along a band of color, each holding values for color and
Alpha. When Colorband is enabled, the panel looks like this:
The default colorband.

The markers are selected with the LMB, at which point you can alter their values with the RGB and Alpha
controls below. Markers can also be LMB dragged to change their position along the blend, or even to
rearrange their order. As you move them, the blend updates in real-time.

If you need more than just the two default markers at either end, new ones can be added by Ctrl-LMB
clicking at the location in the blend where you would like a new marker.

The next illustration shows a good Colorband for light hair:


Notice the last view of the panel with the fourth marker highlighted. Its Alpha value is 0.0, indicating that the
Colorband is completely transparent there. Alpha is shown in the Colorband preview by a checkered
background showing through.

The reason this makes a good hair texture is that light hair is often darker at the root (marker 1), and lighter
and more transparent at the tip (marker 4).

Back in the Material buttons, there are only a few things to do in order to make this work.
Material panel settings

The coordinate system in Map Input should be set to Strand. This will use each Strand's individual texture
coordinates, mapping the Colorband from the Texture buttons along the length of the Strand.

The texture should be set to affect both Col (Color) and Alpha in the Map To buttons.

Finally, in order to take advantage of the Alpha from the texture, the "A" (Alpha) slider on the Material panel
should be turned down to 0.0, and the ZTransp button on the Links and Pipeline panel should be enabled.

For a preview of the Strand material, you can click the "Hair Strands" preview type button in the Preview
panel. Turning on preview anti-aliasing with the "O" button can really help with the Strand preview.
This image is a render of some Strands with a material similar to the one shown here. As you can see, the
Strands are darker near the root, and become lighter and apparently thinner near the tip. The thinning is the
effect of the texture's Alpha, and not due to reducing the End size in the Strands popup palette.

Coming Soon!

There are some great new particle features coming in the next release of Blender that you can read about in
Chapter 15.