Getting Started with Blender’s Particle System- A Sequel

Blender 2.49 Scripting

April 2010


If you already know Blender and some Python, this book will help you greatly increase the power and flexibility of this tool. Learn in easy steps how to use scripting to add brand new functions and efficiencies.

Creating Fire

Taking from the same setup we had for the creating the smoke, making a fire is almost a similar process except for a few changes: the halo shader settings and force field strengths.

Let’s go ahead and start changing the halo shader such that we change the color, hardness, add, and to disable the texture option. Then, we change the Force Field from Texture to Force with Strength of -6.7.

Halo Settings for Fire


Force Field Settings


Fire Test Render


Furthermore, we can achieve even more believable results when we plug these image renders over to our compositor for some contrast boosting and other cool 2d effects.

Creating Bubbles

Let’s start a new Blender file, delete the default Cube, and replace it with a Plane primitive. Then let’s position the camera such that our plane is just below our view.

Preparing the View


Next, let’s add a new particle system to the Plane and name it “Bubble”. Check the screenshots below for the settings.

Bubble Cache Settings


Bubble Emission Settings


Bubble Velocity Settings


Bubble Physics Settings


Bubble Display Settings

Bubble Field Weights Settings

Now that we’ve got those settings in (remember though to play around because your settings might be way better than mine), let’s add a UV Sphere with the default divisions to our scene and name it “Bubble”. Then place it somewhere that the camera view won’t see.

Adding, Moving, and Renaming the UV Sphere


What we’ll be doing next is to “instance” the UV Sphere (“Bubble”) we just added into the emitter plane, thus obeying the Particle Settings that we’ve set awhile back. To do this, select the Emitter plane and edit the Render and Display settings under Particle Settings (as seen below).

Emitter Render and Display Settings

Now if we play the animation in our 3D Viewport, you’ll now notice that the UV Sphere is now instanced to where the particle points are before, replacing them with a mesh object. Often, the instanced Bubble object would look small in our view, if this happens, simply scale the Bubble object and it will propagate accordingly in our Particle System.

Instanced Bubble Objects


And that’s about it! Coupled with some nice shaders and compositing effects, you can definitely achieve impressive and seamless results.

Bubbles with Sample Shaders and Image Background


Bubble Particles Composited Over a Photograph

Bubbles and Butterflies


Creating Rockslides

Similar to the concept of creating bubbles via Particle Systems, let’s derive the steps and create something different. This time, we’ll take advantage of Blender’s physics systems to automate natural motion and collision interaction. We won’t be using the Blender Game Engine for this matter (which should do almost the same thing), but instead we’re still going to use the particle system that is present in Blender.

Like how we started the other topics, this time again, we’ll start by refreshing Blender’s view and starting a new session. Delete the default cube and add a plane mesh or a grid and start modeling a mountain-like terrain. This will be our slope from which our rock particles will fall and slide later on. You can use whichever technique you have on your disposal. Fast forward into time, here’s closely what we should have:

Terrain Model for Rock Sliding


Next step is to create the actual rocks that are going to be falling and sliding on our terrain mesh. It’s optimal to start with an Icosphere and model from there. Be sure to move the models out of the camera’s view since we don’t want to see the original meshes, only the instances that are going to be generated. Model five (5) variations of the rocks and create a group for them named “RockGroup”.

Rock Group

Add an emitter plane across the top of the mountain terrain, this will be our particle rock emitter.

Rock Particle Emitter


Next, create a Particle System on the emitter mesh and call it “RockSystem”. And this time, we’ll use the default gravity settings to simulate falling rock. Check the screenshots below for the particle setup.






Additionally, we must set the terrain mesh as a collision object such that the particles react to it whenever they collide. Play around with the settings until you’re satisfied with the behavior of your particles. Press ALT+A or click the play button in the Timeline Window to preview the animation.

Setting Terrain as Collision


Single Frame from the Animation


Single Frame Rendered


Creating Hair/Fur and Grass

Almost in every CG film we watch, we see a bunch of hair and fur and as simple as it looks, it is one of the hardest tasks to accomplish in the realm of CG, let alone the realistic animation that should come with it.

Luckily, Blender has an array of tools via the particle system to simulate hair/fur and grass. All this time we have been dealing a lot with the Emitter type of particle system and almost oversaw the Hair type which is a thing on its own and is one of the most fun to play with inside Blender.

To start the fun ride with Bleder’s Hair system, let’s go ahead and delete the default cube and replace it with a UV Sphere, just so we could clearly see how the hair acts on a uniform mesh.

Next, head straight and add a new particle system to the sphere, this time instead of choosing Emitter, we’ll be choosing Hair. Right after you choose Hair, you’ll notice that strands starts appearing from the sphere object. A new option was also added to the Particle Settings: Hair Dynamics. Hair dynamics is a cloth simulation process that renders the hair with certain criteria such as collision, mass, stiffness, etc. during animation. We’ll leave that unchecked for now.

Hair Particle


In the 3D Viewport, a new Mode has been added as well: Particle Mode. This enables us to edit the particle strands as though they were vertices in meshes and better yet, with a sculpting experience. Go ahead and enable Particle Mode then press T on the 3D Viewport to activate the Tool Shelf. Here, you’ll see options for Particle Mode which are self-explanatory. Experiment and see what you come up with.

Particle Mode


Additionally, while in Particle Mode, new selection modes are also possible. These are: Path Edit Mode, Point Select Mode, and Tip Select Mode. Each of which has its own characteristics in selection.

New Particle Selection Mode


The key to creating good hair/fur/grass relies mostly on the shader and on how the group of strands are behaving to create one solid figure. For now, we won’t be doing much of hair editing via the Particle Mode. Play around with the Hair Particle Settings until you get something close to this:

Basic Hair Appearance


As compared to emitter particles, hair particles do not need to be cached since changes to the particle settings directly reflect on all frames, regardless of where you are in time. An exemption to this is when we are using Hair Dynamics to simulate the flow and movement and hair across time. This will create a cache that will remember the interaction and movement of each individual strand, just like how it is in emitter particles.

All other Particle settings for hair are pretty basic and comparable to emitter particles EXCEPT for two options: the Render and Children settings. If you wanted to render hair particles, it is best to enable Strand Render and B-spline. What strand render does is it enables our hair particles to be given special shading found in the Material options (which I’ll show you later), and B-spline is basically the interpolation between points in a strand, the greater the number, the smoother it will be but at the expense of more computation time in real-time and render costs.

Children particles are also one good way of faking hair particles. Children are basically virtual copies of each of the original strands (set in the Amount field). This way, there is less computation processing since it is only computing changes for the parent strand and the children follow along virtually. That is not always the case though and there are a couple options in the Children Settings which will deviate the children from the parent strands as though they are separate particles on their own.

Particle Hair Options


Next is the part that should never be missed when creating hair/fur/grass: the shaders. This will tell a lot of information regarding your hair particles. Often, a good particle system setting will do already but an added shader improvement will make it even better.

Under Material Properties, probably the most important setting for hair is the Transparency which defines the fade-out value via a texture and we will set the Alpha value to zero since the texture we will be adding later would be the controller for how opaque the strands will appear, and the Strand setting which is dedicated for Hair particles. Here you will see options on how to make the strands thinner/thicker as it gets to its tips, how they are shaded, etc.

Transparency and Strand Settings


And now, we’ll create the texture that will define the fade-out point of the strands. Go to Texture Properties and add a Blend Texture then rename it as “blend”. Check the settings on the screenshots below. Using the blend texture and a color ramp to specify the distance of fading, we could imagine a strand laying on the color ramp as though the root is on the left part of the color ramp and the right part would be its tip. So when the left part of the color ramp is transparent, thus the root of the strand will be transparent and otherwise.

Texture Options


Additional Texture Options


And now with a decent lighting and environment setup, our render should somehow look similar to this:

Fur Ball


And with a slight change to the shader and strand settings, we now have a grass:

Grass Ball



And that concludes the article. To review, we went through Blender 2.5’s Particle System and familiarized ourselves with the common functions. We did some basic exercises that would rather seem complicated when seen first but with a few setting changes here and there we can achieve believable results given the right combinations.

To sum it up, we learned and refreshed our memories on how to create dust particles and fake smoke and fire via the use of the powerful Halo material shaders. We also took a closer look at using Groups and Objects as instances for our particle system in creating bubbles and rock slides. And finally, we learned how to use the Hair particle type to create furry objects that would be cumbersome or nearly impossible if it was done by hand.

For PART 2 of this article, I’ll discuss advanced usage of the particle system. I’ll describe the disintegration effect and how it can be achieved, animated hair attributes using textures via the Pattr property, multiple particle interactions and collisions, creating a simple light trail effect, destroying a mesh and lots of explosions, faking fluids with the particle system, fun with boids, and using the cloth simulator and the soft body simulator in conjunction with the particle system. Hope to see you there!

Books to Consider

comments powered by Disqus