Creating Asteroids
Tools Used: 3ds MAX 4.2 (most of this material should apply
to earlier versions of max)
Texporter - for exporting mapping coordinates to an image
www.waylon-art.com
waylonbrinck@gmail.com
1) Start
with a
geosphere.
Give it a
radius
somewhere
between 80
and 90, and
5 segments.
(The radius
isn't
important,
except that
it works
better with
the example
values I
give
throughout
this tutorial.
I gave it
five
segments
because I
liked the
polygon
count this
resulted in.)
2) Add a
"Noise"
modifier.
This gives
the asteroid
its basic
shape. Type
in a scale of
about 80
and strength
values of
60, 50, and
40 for the
X, Y, and Z
strengths,
respectively.
Now play
with the
seed value
until you
find a shape
you like.
(Putting in
different
values for
the X, Y,
and Z scales
gives the
asteroid a
somewhat
less uniform
shape. The
numbers I
picked just
happened to
work well
for me, but
play with
them a bit if
you don't
like the
results they
give.)
3) Add a
meshsmooth
modifier.
This will
smooth out
the mesh,
give you
more
polygons to
work with,
and allow
you to
further
shape the
mesh if you
want to. Set
the
"Iterations"
value to 3,
and you're
on your
way!
(Setting
"Iterations"
higher or
lower will
give you
more or less
polygons to
work with.)
Advanced
If you want
more control
of your
mesh: In
the "Local
Control"
section, click
on the
"vertex"
icon just to
the right of
where it
says
"Subobject
Level". This
will display
a bunch of
control
points
across the
mesh, which
you can
move
around to
warp the
geometry.
Be sure to
play around
with Soft
Selection a
bit, since it
can really
speed up
your
modeling.
Also, note
that with
the noise
modifier, the
mesh will be
more or less
symmetric
across one
axis. You'll
want to
manually
adjust
control
points to
make this
look better.
4) You're done with the basic shape of your asteroid! Now it's
time to add some details...
www.waylon-art.com
waylonbrinck@gmail.com
Adding Details
1) First,
we're going
to add some
craters using
Displacement
Maps. For
this
example, I
used a few
different
bitmaps,
including
single craters
and
collections of
multiple
craters. If
you like, you
can use the
displacement
maps I've
provided, or
(obviously)
you can
make your
own.
2) Add a
"Displace"
modifier. Set
the strength
to -100, and
the decay to
20. Under
"Bitmap",
click on the
button
labeled
"None", and
go find the
displacement
map you
want to use.
In the "Map"
section, type
a value in
"Length" and
"Width". I
typed 200
for this
crater, but
you can
change that
to make
your crater
bigger or
smaller.
(Setting the
"Decay"
value to
something
other than 0
helps make
sure the
crater
doesn't also
end up as a
bulge on the
other side of
the
asteroid.)
3) Now you
get to
position your
crater. An
easy way to
do this is to
rotate the
perspective
view until
you're
looking
"down" at
the asteroid
from the
direction you
want the
crater to be
applied. In
the
"alignment"
section of
the modifier,
click "View
Align". That'll
point the
crater in the
right
direction, but
you still
need fine-
tune the
position.
4) Go into
sub-object
mode for the
gizmo (Click
on the word
"Displace" in
your
modifier
stack). Set
the
"Reference
Coordinate
System"
dropdown to
"local". Now,
move the
gizmo in the
Z-axis so
that it's just
barely
resting on
the surface
of the
asteroid -
this will give
you control
of how
"deep" the
crater
appears. You
can move
the crater
left and right
by moving
the gizmo in
the x- and
y-axes.
5) Here, I
added a
displacement
map with a
few craters
in it. The
settings, for
the most
part, are the
same.
6) After
your asteroid
is sufficiently
cratered,
I've found
that it's nice
to add a few
more noise
modifiers, to
give it a little
texture. The
problem with
noise,
though, is
that it's very
uniform - all
the bumps it
creates have
a very even
distribution,
even with
fractal noise
enabled.
7) To get
around this,
add two
noise
modifiers
with different
scale and
strength
values, and
possibly
check
"Fractal" for
one of them.
This will
make it look
a little more
random. The
values I used
in the
example
worked out
pretty well,
but as
always, play
around with
them until
you find
something
you like.
www.waylon-art.com
waylonbrinck@gmail.com
2) Start by
making a new
material, and
give it a
texture map
that's just a
black and
white
checkerboard...
Make sure it's
an actual
bitmap (don't
just give it a
"checker"
material), and
click the "Show
Map in
Viewport"
button. A
checkerboard
texture is a
really useful
tool for finding
stretched
mapping
coordinates,
and I use it on
nearly every
object I need
to UVW map.
3) Apply that
checkerboard
material to
your asteroid,
and add a
UVW Mapping
modifier. At
this point, if
you want to
minimize
seams,
"Spherical" is
the best
mapping
method, and if
you want to
minimize
stretching,
you'll want to
use "Box"
mapping.
There. You're
done! But if
you used
spherical
mapping, look
at how the
texture is all
bunched up at
the top, and
how stretched
it gets around
the edges. Or
with box
mapping, look
at how ugly
those seams
are. That's not
good at all!
Cylindrical and
planar
mapping have
similar
problems, so if
you REALLY
need to do a
good job,
here's how:
2) First things
first, we need
to divide the
asteroid in
half. Add an
Edit Mesh
modifier, and
go into Polygon
mode. (Hit F4
to turn on
"Edged Faces")
Change the
selection type
from
"Rectangular
Selection
Region" to
"Fence
Selection
Region". Find a
nice seam
halfway
through your
object, and
select half of
your asteroid,
following as
closely as
possible to the
seam.
3) There, now
half of your
object should
be red. If you
look closer, the
selection will
follow the
seam pretty
nicely in some
areas, but
you'll need to
touch it up a
little. Before
you begin,
check the
"Ignore
Backfacing"
box - that way,
if you deselect
faces on one
side of the
object, you
won't
accidentally
deselect the
ones on the
other side as
well.
4) Now, go
around the
object,
selecting and
deselecting
groups of faces
so that the
selection
boundary
follows your
seam. (Hold
"ctrl" to add to
the selection,
and "alt" to
remove from
it.)
5) Your seam
should look
nice all the
way around.
To make sure
that you got all
the right faces,
you may want
to hit "delete",
look to make
sure there
aren't any
stray polygons
floating
around, then
hit undo when
you're sure it
looks good.
When you're
done with that,
change the
material ID for
the selected
faces - it'll
make it a lot
easier to keep
track of the
two halves of
the asteroid
later on. With
a GeoSphere,
the default
material ID is
2, so change it
to 1 for the
selected faces.
Now, we're
just about
ready to add
some UVW
mapping.
Advanced
- There are a
number of
things you can
do at this point
to make
mapping your
asteroid easier.
All of them,
however,
involve
messing with
the geometry -
and at some
later point,
you'll need to
be able to
revert the
asteroid to the
state it's in
right now,
while keeping
the finalized
UVW
coordinates. A
Morph object
will work
nicely, but for
now, all you
need to do is
make a copy of
the asteroid
and hide it for
later.
- Mapping the object can be easier if you go back and delete some of
your displace modifiers, since craters can mess with your mapping
coordinates. If you have really wacky geometry, you might also want
to add another edit mesh modifier to push and pull some vertices if
there are any real problem areas.
- Adding a
"Spherify"
modifier at this
point will also
improve the
outcome of
your mapping,
and it will help
you find
problem areas
in the mesh.
You can fix
these problems
by going back
and forth with
the
aforementioned
edit mesh
modifier, but
that's not
usually
necessary.
6) At this
point, it's
useful to have
a checkerboard
pattern on the
asteroid. If
you're not sure
how to do this,
follow the
directions in
Step 2 of the
"Simple
Mapping
Coordinates"
section.
7) Add a Mesh
Select
modifier, and
go into Polygon
mode. Your
polygons
should still be
selected, but if
they're not,
just type in the
correct
material ID
(probably 1)
and click
"select".
8) Add a "UVW
Mapping"
modifier. We're
going to go
with "Shrink
Wrap" mode
9) Note: After
the last step,
your mapping
may look kind
of wacky,
depending on…
well, a few
different
things. If your
mapping looks
like the
example, click
on "UVW
Mapping" in
your modifier
stack to go
into gizmo
mode, then
click and then
right-click the
"rotate" tool to
bring up the
"Rotate
Transform
Type-In"
panel. Type in
10) Add another mesh select modifier, go into polygon mode, type
the material ID of the other half of the polygons (probably 2), and hit
"Select".
11) Add
another UVW
mapping
modifier. Set it
to shrink wrap.
Hit "fit". If you
skipped step
12 before,
you'll likely
need to do it
now.
Advanced
If you played
with the
geometry of
the asteroid
before, you'll
need to morph
it back to the
correct shape
now. Un-hide
the earlier
version of the
mesh, go to
the "Create"
panel, and
change from
"Standard
Primitives" to
"Compound
Objects". Make
sure the fully
UVW-mapped
asteroid is
selected, and
click on
"Morph". Then,
click "pick
target" and
click on the
correctly-
shaped
asteroid. Your
asteroid should
now have good
mapping
coordinates
and have the
correct
geometry. (You
can delete the
extra asteroid
now, if you
want.)
12) Yay!
You're almost
done. The last
thing we need
to do is to
make sure
none of the
mapping
coordinates
from the two
halves of the
asteroid are
overlapping.
First, add a
"UVW Xform"
modifier, and
the bottom of
the box. Switch
back to "All
IDs", and you
can move and
scale both
halves of the
asteroid so
that they fit
inside the box,
making sure
they don't
overlap.
www.waylon-art.com
waylonbrinck@gmail.com
Finishing Touches
-----
- Waylon Brinck
www.waylon-art.com
waylonbrinck@gmail.com