by
Scott "Icky" Rudi , game designer
Contents
Shape
Building Philosophy
Shape
Terms
Shape
Damage Levels
Collisions
Shape
Size and the Hit Box
Triangle
Count and Textures
Don't
Forget
Shape
Building Philosophy
"Do
not seek perfection in purity - find purity in perfection."
Zen Master Icky, 11/19/98
So,
you think you can do better?
Congratulations!
You've taken your first step to becoming a full-on shape builder!
Below are several insights (ok, excuses) on why I made a lot
of the objects as I did.
Shape
building is very different than model building. In model building,
you get to build incredible models using as many textures
and faces as you darn well please. The only consideration
is how the finished product looks. With some time and elbow-grease,
any 3D modeler can come up with breath-taking scenes that
tickle the mind... er, look good, that is (didn't mean to
gross you out with mind tickling).
A
shape builder has a completely different job. In
addition to making a shape that looks good, he (or she) must
consider other factors: how many faces (triangles) make up
the shape, how many bitmaps, what does the shape do, are there
moving parts, and so on...
The
number of faces is the biggest challenge. This number needs
to be kept as low as possible, or the simulation will slow
down trying to draw all of them. Granted, the arrival of 3D
accelerator cards lightens this load, but you still can't
go crazy. My guidelines for building the vehicles in RB2 was
around 20 faces/triangles to make the maximum detail undamaged
shape. Think about it , 20 triangles to make an AATruck that's
supposed to drive around the airfields. Nasty.
I
remember once seeing a replica of the White House made entirely
of toothpicks (yes, boyscouts ARE a wierd bunch). Thinking
back, they must have used a few thousand of the little sticks
of wood to make something that looked very real. Now, tell
them to do the same thing with a few dozen and, well... you'd
have a Swiss Army knife at your throat faster than you can
say, "Be Prepared."
The
shapes of Red Baron 2 / 3D were created with three things
in mind - to look good, to not impede sim speed (framerate),
and not overload texture memory. When editing the shapes,
please try to keep those guidelines in mind. It might be easy
to make an incredibly detailed and richly textured shape to
replace the mundane ones you'd find in the game, but even
the prettiest shape looks like crap at 5 frames per second...
In
a nutshell - remember the K.I.S.S. rule: Keep It Simple, Stupid
!<G>
Shape
Terms
You
may see certain terms in the lines below. Here's what they
mean:
Vertex
- basically a dot in space.
Edge
- a line that connects two verticies.
Face
- the surface area of a triangle.
Triangle
- a combination of 3 verticies, 3 edges, and a face.
Part
- a collection of triangles. A wheel would be a bunch of triangles
that form a circle with depth.
Shape
- a collection of parts. A car shape has wheel parts, a chassis
part, and so on.
Object
- a collection of shapes that contains all damage levels (if
any). Some of the shapes may be hidden. A car object may have
an undamaged shape, a damaged shape, and a destroyed shape
all in one 3ds file.
Axis
- All parts and shapes have an axis. The axis is the dead
center of the shape, though it may be moved manually.
Normals
- textures on a face are usually displayed in only one direction.
A normal is the direction the texture will be displayed, unless
the texture is designated as a 2-faced texture. Check out
the bottom of the elevators on a Halberstadt DII to see what
it looks like when you forget this...
Texture
- a bitmap or flat color assinged to a face or group of faces.
Shape
Damage Levels
MUCH
simpler than the naming convention for the various shapes
and details, the various damage levels of a shape are contained
within the .3ds file itself.
When
you load up a shape in your editor, you may see that some
shapes are colored differently (if your editor has that capability).
The undamaged (normal) state of a shape has blue parts, damaged
is green, and destroyed is yellow. You may notice that the
normal and damaged states are the same shape - this is because
most of our damage is shown only via bitmaps. You,
of course, may show damage any way you see fit!
Each
part in the shape is named. A wheel part will be named, "Left
Wheel" or whatever. Note that there is an extension after
each part name. An extension of ".aa"
means that the part is undamaged, ".ab"
is damaged, and ".ac" is destroyed.
So,
a jeep would have three left tires. "Leftwheel.aa",
"Leftwheel.ab", and "Leftwheel.ac" to
show the wheel in each of it's damage states.
Now,
every part of the shape does NOT need damaged states. You
could have a shape that graphically shows no damage by only
having parts with ".aa" on them. You'll notice that
most of the Low Detail level shapes have not damage states
within the shape file.
HOWEVER,
any part in the shape file that is damaged MUST have a corresponding
undamaged part! This means that if you have a part called,
"window.ac" - you better have a "window.ab"
and "window.aa" in the shape file as well. Note
that you may have a "window.aa" and a "window.ab"
with no "window.ac" in the shape.
Just
make sure that you have the preceeding letters of the alphabet
in each shape.
One
little trick I like to use is a single vertex named as a part.
Single verticies (a vertex is usually part of a triangle)
are not displayed because they don't actually take up any
space - they are points in space (think back to your basic
geometery). What this enables is "invisible parts"
in a shape. For debris in a destroyed object, I create an
actual debris shape to the side of the undamaged object. I
name the debris shape, "debris.ac". Then I create
two vertexes in the same space and name them, "debris.aa"
and "debris.ab".
Most
of my shapes have examples of this - just take a look in your
shape editor...
Collisions
Collisions
are a bad thing in the creation of a shape. Basically, a collision
is when two parts of the same shape intersect one another.
For
example, I built an Artillery Emplacement shape. The nature
of the shape is that I have the gun surrounded by walls of
sandbags. If I made the walls all one shape, then the gun
shape would exist inside the walls
shape. When the shape is drawn in the game, the program wouldn't
know which shape should be drawn on top of the other since
they exist in the same space. For this reason, I made
each wall its own part.
A
good way to check your work is to view your shapes in "box"
mode, where the 3D editor displays your shapes in rectangular
boxes. If any part of the boxes intersect, you have a collision
problem.
There
may be shapes where a little collision is unavoidable - like
when wings connect to a fuselage. For this reason, the MCU
utility comes with a "shrink" setting. This shrinks
all parts in an object to their individual axiis - so that
if just the edges of each part are intersecting, it will usually
be enough to clear up any collisions. The object parts will
not remain shrunk - it only does so long enough to clear up
collisions and build a sorting tree (which part is drawn over
another part).
Just
remember to make sure that all parts exist in thier own space
and do not intersect other parts too much.
Shape
Size and Hit Boxes
There
is nothing keeping you from taking a truck object in the game
and creating a new object five times the size of the original.
Some may be tempted to do this - instead of a church in the
center of each city, how about a full-sized Notre-Dame?
You
may be able to do this graphically - there is no size checker
in the program to make sure that all the shapes in the game
are the right scale. However, each shape in the game has a
"hit box" drawn around it. A hit box is an invisible
box or collection of boxes that can be shot by planes. When
a bullet hits this invisible box, the program calculates damage,
and so on.
The
hit box will not change when you edit a shape. If you create
a massive cathederal, it will still have the old small church
hit box. You may find yourself shooting and flying through
spires that may as well be made of smoke.
For
that reason, try to keep your shapes the same basic size and
shape of the original. Most vehicles have just one big hit
box that is used for the whole shape. You could replace the
Allied Large Tank in the game with a Russian T34 tank and
probably get away with it. Both are roughly the same size
and most won't notice the hit box being off in some places
by a foot... On the other hand, the Factory shape has prominent
smoke stacks - if you create a new shape that doesn't have
these stacks, players may still hit them even though they
aren't visible any more.
Experience
and common sense will be your most valuable tool in this regard.
Another
thing to keep in mind is the axis of the original object.
Most object have their axis in the center bottom. As objects
are placed in the world in relation to their axis, you could
get yourself into trouble.
The
large hangar's axis is like this, with its axis right in the
middle of the object and right on the ground. If you edit
the hangar and move its axis up from the ground, it will be
drawn as if it had sunk into the ground up to where its axis
has been moved to.
Also,
the hit box is drawn in relation to the axis - if you move
the axis, the hit box follows, no matter what the shape looks
like.
Triangle
Count and Textures
The
number of triangles (aka faces, polygons, or polys) that make
up the object is very important. Most of you will be tempted
to create a really cool looking shape made up of hundreds
or thousands of triangles. While this will indeed make much
better shapes than you get with the boxed version of the game,
it will also potentially slow the game down.
Remember
that the computer has to draw the triangles - if you were
to change the number of triangles in a city building from
12 to 60, you would increase the work that the computer has
to do in drawing that shape by five times for EACH city building
drawn on the screen. Little increases may eventually creep
up on you - the expression, "Nickel and dime yourself
into poverty" is as true with a triangle budget as with
a normal money budget!
The
textures that an object uses is also an issue. Most of the
texture in the game are simple and small for two reasons -
first, the smaller the texture, the quicker it is drawn. Every
argument that can be used for conserving on triangles can
be used for being conservative with textures. Sure, it would
be nice for everything to have a 256 pixel mural slapped onto
its side, but what looks good at 5 fps? Secondly, what's
used in the boxed version of the game is very near the limits
on what a 4-megabyte 3D card can handle. If you were to increase
the amount of texture memory (determined by bitmap size),
you may have some angry Voodoo 1 users breathing down your
neck.
Again,
common sense and experience will be your best guide. This
whole process is very much a "try it and see" cycle.
Don't
Forget!
1.
When you copy the new shapes to your \RedbaronII\Data\Simpatch
folder (after running them through the MCU converter), you
need to include the shape file (*.dts), the renamed material
list file (*.dml), and all of the bitmaps used by the object.
The game will crash if some and not all are copied in!
2.
All new bitmaps must have thier correct RB palette loaded
.The same rules for painting your plane are in effect for
modifying shapes.
3.
Keep It Simple,
Stupid! Some shapes may be tougher than others.
Just like anything else - from cars to computers - as your
shapes get more complex, more and more things can go wrong
with them. Collisions, misspelled part names, mysterious "zero
face normals" (don't ask), may have you pulling out your
hair and/or wishing you could pull out ours.
4.
What you edit may cause the game to crash. Try to edit one
shape at a time so you know which shape is giving you trouble.
If everything blows up in your face, you can always reinstall!
Muahahaha!
5.
This is something that was never promised, advertised, or
anything. If it just won't work for you, too bad. Neither
Dynamix nor *we* under any obligation to help or pull your
fat out of the fire. Tech support ...well...doesn't exist
for RB3D anymore , so no one at Sierra will have a clue what
you are talking about regarding these shapes . Those who demand
support will become *prefered targets* of Flybert ,
Moritz and friends ... he he
5a.
Help each other out! The best aspect of "hacking"
a game is the community environment it builds !:)