Top 5 MAX Concepts
MAX Dataflow
No, its not pretty. Its not sexy. It doesnt automate
shockwave explosions, particle laser rifles, or even melting flesh.
Even if you have never imported geometry that was 20 times the size
of everything else in your scene, or even if youve never handed
a game model off to software engineers only to have it thrown back
to you because the entire model was only four inches tall, you need
to know how MAX handles the geometry as it flows down the 3D pipeline
to be rendered.
One of the most important concepts to understand about 3D Studio
MAX is not a feature, plug-in, or shader. It is dataflowwhat
makes MAX tick. Understanding the dataflow can prevent some major
headaches and provide a deeper understanding about why the software
does what it does. It doesnt even require any math. Well,
maybe a little.
Lets pull back and look at MAX in its most general terms.
MAX is a modeling, animation, and rendering program. Thats
it. The dataflow has an impact on all three of these. The stage
of the dataflow you use while modeling can profoundly affect what
happens when you animate and render.
Think of the dataflow as an assembly line. As a product moves down
an assembly line, things are added or changed at various stages
by different workers. The end result is a product made possible
by the coordinated effort of those on the line. But if things happen
out of order, it can muck up everything else down the line.
In MAX, the dataflow is an assembly line for geometry as it heads
from the modeling stage (the assemblage of parts) to the renderer
(the final product). If things arent fitted properly, or the
parts are not the right size, or the process is flawed, the end
product wont look right. Lets look at the MAX dataflow
in five stages.
Stage 1: Mesh Parameters and Creation Parameters Are Established
Every model in MAX has three things in common: they all have a
pivot point, a bounding box, and creation parameters. When looking
at primitives, this is easy to discern. The creation parameters
are the parametric settings in the General Parameters rollout (length,
radius, height segments, and so on). If the object is not a primitive,
the parameters are the locations of the faces, vertices, edges,
etc.in other words, a collapsed mesh.
A model enters stage 1 after you are done modeling it and hit the
Render button. This is actually the starting point for the many
processes that determine what your final animation or scene will
look like.
Stage 2: Modifiers Are Calculated
At this stage, any modifiers you have placed in the objects
stack are calculated in the order in which they were applied. This
is why the order of modifier placement is important.
All modifiers happen in object space. Except for a few instances,
all modifications happen within the bounding box.
If you model games or create databases for real-time simulations,
your use of the MAX dataflow might stop here.
Stage 3: Transformations Are Made
During stage 3, any movement you made to any piece of geometry
is calculated, and the object is positioned within world space.
This is a very important aspect to understand. If you dont
understand this stage, heres where youre likely to encounter
some of those snafus I mentioned above.
You may have seen this annoying warning when you try to apply a
non-uniform scale:

The warning is telling you that, by using the Scale button to make
something smaller, you might be making a transformation of the vertices
in stage 3 as opposed to a modification to the object, which should
really happen in stage 2.
If you try to scale an object to make it smaller and dont
do that in stage 2 (the modifier stack), you exclude that scaling
from being seen if the model never makes it to stage 3.
Why would a model never make it to stage 3? What if you are working
at a game company and you export your models to the software engineers?
Your models will never make it to stage 3. Remember, data goes into
this pipeline at render time. If you are not rendering your scenes
yourself, this stage becomes critical to understand.
This doesnt apply just to gamers, but to everybody using
MAX. Most users might get by, about 80 percent of the time, without
running into any problems. If you export anything like a .dxf
file or any other ASCII-based file (including .3ds
files), this will affect you because your model is skipping stage
3.
Stage 4: Space Warps Are Applied
By now, your object has been created, modified, and transformed.
Now, any space warps present are applied to your objects. Space
warps can deform and change geometry like modifiers and transforms.
Space warps also happen in world space and affect objects only after
their current position and orientation have been evaluated in stage
3.
Stage 5: Object Properties Are Evaluated
This is the last stage before a pixel is written at render time.
Here, all of the other goodies like shadows, materials, visibility,
and other settings (if any) are calculated by the renderer. This
includes G-buffer information and material ID information that might
be passed along to Paint or Effect.
Conclusion
Now that you understand the dataflow a little better, you can better
choose what happens to your models and when.
|