How To - Particles
Updated: Apr 15, 2021
Let's understand particles.
Particles are a common technique used in computer graphics that use sprites(2D Images) or 3D models or other graphic objects. Particles are often used to simulate moving water, fire, explosions, smoke, clouds, fog, snow, stars, and other abstract effects like magic. These simulated replicas of natural phenomena are often systematically re-emitted from the source of an effect. Other uses for particle effects are strands like fur, hair, and grass.
Particle systems can be implemented in numerous software. Depending on the software particles are usually come from an emitter source. The emitter source may be an object that contains a set of parameters. These parameters can then be adjusted to suit whatever effect the artist wants to achieve. The most realistic for natural phenomena requires a physics generator. This means that the software will need to have built-in physics that can be manipulated to that effect.
Particles are usually represented in systems. This is because most particle systems in nodal based networks house a set of parameters that can be manipulated. This is the beauty of particles. A particle can start with a generic shape, but with the parameters, any set of particles can become a fire, smoke, dust, or any of the above mentioned natural/ ethereal phenomena.
So why are particles important?
Particles can make or break an experience. Let's say you are designing a brightly lit room for a video game. Naturally, when light rays hit a window sometimes dust can be seen. Having these little seemingly unimportant elements within the environment allows for that sense of realism.
Examples Using Unreal Engine:
Dust Particles- this is using sprites represented by the jagged edges. Sprites are usually 2D images. Using 2D is better for optimization than a 3D for many software. Something like this would be created in photoshop with alpha data (transparency) and then is repeatedly animated and then emitted from the source.
When rendered (in engine) it is preserved as dust particles.
Fire with overlays of particles. Again this is using sprites. For fire, multiple particle systems are overlayed to create this effect.
Let's break it down.
Fire is made up of a source flame or a point of emission.
The embers emitting upward are smaller particles with different physics.
Fire also emits smoke
Lastly, it needs to emit light
Each aspect of the flame listed would be a particle system that overlays on top of each other to create the effect of fire.
When rendered (in engine) a compilation of particles is then preserved as fire.
The beauty of game engines is that physics is built in. Physics is important because it determines whether fire needs to float upwards or if rain needs to fall down.
These are just some examples of particles. And particles can be created in many different ways.
Let's relate this back to Touch Designer (TD).
Touch Designer doesn't have a traditional physics like a game engine does or other 3D software. Touch Designer does offer physics through the Bullet Solver, but (from my understanding) does not provide the same sort of range in physics.
Touch Designer's use of particles is generally more abstract (from my pov). A lot of the work coming out of Touch Designer is more abstract, which breaks out of constraints of realism. Particles in TD can be driven by 3D shapes or sprites or both.
By now, you should have a basic understanding of TD nodal network.
View Touch Designer Glossary for Terms
Let's set up a simple render output so we can visualize it.
Attach particle sop to Geo Comp.
Set up Camera and Light source.
Also, add a render Top, this will be the source of our output.
In the example, I added a transform and gave the alpha channel a value of 1. Then checked off comp over the background color. That gives the effect of the black background.
Finally, add a null and rename it as Out. This will be your final output, which can be displayed while working.
See Examples below.
In TD, the particle system is geometry driven. Meaning that a set of geometry nodes are needed to drive the particle generator. However, this may not always be the case.
Let's start by adding a Circle SOP(Surface Operator).
Now let's attach a Particle SOP. We can see that the particles are emitting based on Geometry.
Let's change this to a Sphere SOP.
Now the particles are being driven by a 3D shape, not just a planar shape.
Let's look at the particle parameters.
There are several different options here.
State, Forces, Particles, and Limits
These allow you to manipulate the particles.
Under the State tab,
If you change the particle type to point sprite a MAT will be needed. Attach MAT to the Geo node.
This beneficial because it gives more parameters to manipulate the particles.
Change the values in these tabs to create more dynamic movement.
To create more dynamic movement you can add more SOPs to the particle, like a noise.
This how to get started using particles.
For more check out these tutorials:
TouchDesigner Tutorial Particle part 1
TouchDesigner Tutorial Particle part 2
TouchDesigner Tutorial Particle part 3
Download Basic Particles Project TD