|
..::entering the atmosphere::..
Note
from the author:
This article was written with 3ds max 5 in mind. It should be
noted that later versions of 3ds max contain a new particle system,
so some of the techniques in this article may not apply and/or could
be performed easier using the new tools available.
Most people
have, at some point, modelled and set up a scene to emulate an asteroid,
comet, spaceship (etc) entering the atmosphere by simply assigning
a particle system to the object, using a volumetric smoke plugin
for the fire and then moving the object vertically down. While this
is okay when the object is controlled, what if we need to have the
object out of control, tumbling before and while entering the atmosphere?
Normally
we would stop after adding our particle system (and smoke effect).
The problem is the tumbling object. Usually, we can just assign
particles to emit from the object itself, but as the object only
emits fire / smoke (etc) from the surface in contact with the atmosphere,
it makes it a little more difficult to emulate and control this
effect. Therefore, a sub-object selection should be made on the
geometry facing the atmosphere. Once this sub-object selection is
used within the particle system, it will only emit particles from
this geometry.
To create
the selection so it is always facing the correct direction, we need
to use a Volume Select modifier. Using a box gizmo we can position
this so it selects the bottom faces of our tumbling object. Why
don’t we simply select these faces using any normal sub-object
selection method? Well, as our object is rotating, this selection
will also rotate, which we do not want. Also, if we rotate the object
itself, then the volume selection will also be rotated, so we need
a way to just rotate the object and not the selection. The way to
do this is to use an Xform modifier to rotate the sub-objects, therefore
the local axis co-ordinates remain the same so the volume selection
gizmo will stay in one place!
The smoke
is emitted in a similar fashion. An additional non-renderable emitter
is created from the original object and a sub-object selection made
my using a volume select modifier as before. The volume select modifier’s
gizmo should then be scaled and repositioned so that there is only
a thin ring of polygons selected around the middle of the object.
The particles used to generate the smoke should then be emitted
using this sub-object selection. The reason we are using a thin
band is because the heat is too intense and the air velocity too
high to form the smoke underneath the object. Therefore, as the
fire / burning material reacts with the air above the falling object
the smoke is formed and billows away and out of shot.
Previewing
the animation we notice that the sub-object emitted particles pass
through the object emitting them. Therefore a larger non-renderable
clone of the original object should be used to emit the particles,
and another slightly larger non-renderable clone of the original
should be used to deflect the particles around the original. Therefore,
if a surface emits the fire/smoke, it should flow around the object
and not through it.
The materials
are a simple setup. There are two particle systems: fire and smoke.
The fire system has a material that has additive transparency and
particle age maps handling the opacity and colour of the fire particles
so that they change colour and opacity as they get older. The smoke
particle system is handled much the same way, but the opacity fades
in then out and the particles start small then grow to their full
size at death, so the smoke grows and dissipates with age
Depending
on what the object that is entering the atmosphere is made from,
the overall effect will differ; for example if the object is a comet
then the ice will be heated to form steam (ie white – grey
smoke), but if say metal begins to burn then we could have a darker
more transparent smoke but hotter flame. These effects can be mixed
and matched later on by tweaking the material and particle system
settings.
 |
Load
in the scene teapot_start.max from the cover cd. Select the
teapot in the scene and note that it already has the rotation
set up. Reference clone the teapot and add a Push modifier to
the stack. Set the Push Value to 10. Add a Volume Select modifier,
set the Stack Selection Level to Face, Selection Type to Crossing,
Select by Box, and position the gizmo so the underside of the
teapot is selected as illustrated. Label it “Teapot-emitter
fire” |
 |
Reference
clone the original teapot again and label it “Teapot-emitter
smoke”. As before, add a Push modifier and set the Push
Value to 10. Add a Volume Select modifier, set the Stack Selection
Level to Face, Selection Type to Crossing, Select by Box, and
position the gizmo so a ring of faces is selected as illustrated |
 |
Create
a Wind spacewarp over the teapots pointing upwards, set it’s
Strength to 6 and Turbulence to 2. Reference clone the original
teapot, label it “Teapot deflector” and add a Push
modifier to the stack. Set the value to 2. Create a UDeflector
and select the Teapot deflector as the deflector object. Set
the Bounce to 0.1, Variation to 100 and Chaos to 30. |
 |
Create
a PArray system and label it “PArray fire”. Bind
it to the UDeflector and Wind Spacewarps. Select the Teapot-emitter
fire object as the emitter and check on Use Selected Sub-Objects.
Animate the birth rate from 0 at frame 0 to 200 at frame 100.
Set the speed to 0, Emit Stop to 301, Display Until to 301,
Life to 20, Variation 15, Size 25, Variation 50%, Grow For to
0. Set the particle type to Facing. |
 |
Clone the
particle system and label it “PArray smoke”. Set
the Teapot-emitter smoke as the emitter. Set the birth rate
at frame 100 to 60, speed to 1, Life to 50, Variation to 10,
Size to 500, Grow for to 60 and Fade for to 0. Create a new
material and label it Fire. Check on Face Map, Self Illumination
and set the Advanced Transparency Type to Additive. |
 |
Add a Particle
Age map in the diffuse slot, set colour 1 to yellow, colour
2 to orange with an age value of 10, and colour 3 to red. Clone
this map to the self-illumination slot. Add a Mask map in the
Opacity slot. Add a Particle Age map in the Mask’s Mask
slot, swap colours 1 and 3 and set colour 1 to a light grey.
In the Mask’s map slot, add another Mask map. Add a Gradient
map set to radial to both slots and set the Noise amount to
0.3 and Size to 6.3 in the map slot’s Gradient. (continued
in the tips column…) |
 |
The final
render has had the air wave displacement geometry (a modified
hemisphere) composited on top of the particle, teapot and environment
backplate so the particles’ image motion blur is not masked
out. |
 |
Zip file
to accompany. |
..::tips::..
Create
a new material and label it Smoke. Set the diffuse colour to RGB
67,67,67. Check on Face Map. In the Opacity slot, add a Mask map.
In the Mask slot, add a Particle Age map, set colours 1 and 3 to
black and colour 2 to a dark grey with an age of 40. In the Mask
map’s Map slot, add another Mask map. Add a Gradient Map to
both slots as before and set the Noise amount to 0.3 and Size to
6.3 in the map slot’s Gradient. Assign the materials to their
respective particle systems. Hide the deflector and emitter teapots.
Create an air wave by creating an un-capped hemisphere with a noise
gradient ramp (stretched using a elongated cylindrical uvw map)
fading in (with animated key positions in the gradient to pull it
out). This should be masked with another gradient ramp map to fade
the wave out at the top so the edge of the hemisphere isn’t
visible.
If we want effective motion blur assigned to the particles and to
the air wave geometry, we till have to use object (or scene) motion
blur. This can take a long time to render because of the amount
of geometry produced. Image motion blur is out as the air wave geometry
will mask out the image motion blur on the particles. Therefore
to get an effective result, the final render should be produced
in two passes. Render off the scene using image motion blur for
the particles, then render off (or composite) the air wave using
object motion blur over the top of first render.
Finally, once everything is set up, we can animate the particle’s
birth and set up the environment’s animation. As the particles
are set to generate from frame 0, we should animate the air wave
growing / fading in. Also, try adding camera shake using a noise
controller on a dummy and link the camera to the dummy to add a
little more drama to the scene. Animate a large geosphere with flipped
normals to show the atmosphere and cloud coming into shot.
Initially
published: 3D
World magazine, Issue 39, June 2003.
Copyright
© Pete
Draper, June 2003. Reproduction without permission prohibited.
www.xenomorphic.co.uk |