 |
|
|
| |
2.01
No NURBS here
|



|
There are lots of different types of 3D modeling with a computer these
days from CAD technical drawing packages that turn flat sketches into
buildings to virtual potters wheel programs. This Primer is about
Polygon Modeling usings Sub-Division surfaces.
It doesn't include any information about a different form of Modeling
known as NURBS.
NURBS, short for non uniform rational B-spline, is
a computer graphics technique for drawing curves. A NURBS
curve is defined by a set of weighted control points, the curve's
order and a knot vector. NURBS are generalizations
of both B-splines and Bezier curves, with the primary difference being
the weighting of the control points which makes them rational (non-rational
B-splines are a special case of rational B-splines, in practice most
NURBS curves are non-rational).
And guess what? We aren't going to be discussing them here at all!
Why?
Sub-division modeling came along after NURBS modeling was well established.
It is generally excepted that modeling in Sub-D's is freer and more
fluid than with splines. Major Film studios have adopted Sub-D with
Pixar being one of the earliest to adopt them.
Inciditental Information:
Solid
Model Solutions has interesting information on this Page about
NURBS (B Splines) and Sub-division surfaces.
Here
is an encyclopedia entry about NURBS and has some interesting
historical information including how the development of NURBS began
in the fifties of the 20th century by engineers who were in need of
a mathematical representation of freeform surfaces like those used
for car bodies and ship hulls
What
are NURBS? Click for some Web links to the answer
What
are NURBS used for these days then?
|
| |
2.02
What is Sub-Division modelling?
|
| |
Subdivision modelling allows the Modeler to create a smoothed (Sub-divided)
model from a lower resolution model (Known as the cage or control
cage).
In the example below you can see a basic polygon cube which will
act as the control cage. Some programs let you Sub-divide in stages
(2) and other programs will be set to a very high level of Sub-division
as default (3). In both (2) and (3) you can still see the Cube in
outline form showing you that this object, even when it looks like
a Sphere is still actually a six sided object. In (4) and 5) you
can see the object becoming more complex and the result when it
is then subdivided.

Incidental information:
`Subdivision surfaces are used to create smooth surfaces out
of arbitrary meshes. Subdivision surfaces are defined as the limit
of an infinite refinement process. They were introduced simultaneously
by Edwin Catmull and Jim Clark, and by Daniel Doo and Malcom Sabin
in 1978. Little progress was made until 1995, when Ulrich Reif solved
subdivision surfaces behavior near extraordinary vertices`. source
That’s
what the books all say. But what does it mean to me as a new starter
in this confusing world of Polygon Modeling?
OK,
Basics. Too many polygons moving around a screen is bad. It's bad
for games as they slow things down and use too much system and graphic
card memory. Its also bad for 3D Modeling/animation packages as
more polygons means more complex scenes and longer render times.
As
mentioned earlier, Sub-Division modeling allows you to create a
polygonal model that acts as a `cage` that contains the structure
of the smoother, subdivided one. Only the smoothed version is taken
into account at render time. It is achieved by using sub-division
algorithms (math routines that do the smoothing)
Sometimes
it is nessecary to model with the geometry already Sub-divided.
This allows you to see your mesh in its final, smoothed state as
you go along. A disadvantage is that you may not focus on the layout
and position of the polygons in the underlying geometry (or Cage).
If you don't switch in and out of Sub-division mode as you model
you may end up with a messy mesh.
|
| |
2.03
Messy Meshes
|
| |
So, next question, what is a messy mesh?
By Messy mesh I am referring to a polygonal model that looks fine
when Sub-divided but looks a complete mess when not. It may have
vertices/points, edges or polygon faces that cross over each other
in lots of places. This looks messy but more importantly it can
create problems in later stages of the project.
For
example:
If UV co-ordinates are created on the base mesh they may need lots
of tweaking in a UV view to prevent Stretching (In most programs
polygon faces need to be flattened out in a UV view and not have
points crossed over each other).
When
rigging a character with a bones system the usual way is to have
the bones effect groups of points with differing degrees influence.
Therefore it follows that if the points are all messy and crossing
over each other it will make the whole job much harder. Obviously
this different from software package to software package.
|
| |
2.04
Catmull Clark or Doo-Sabin?
|
| |
Sub-division algorithm routines (the math doing the sub-dividing
behind the scenes) can come in different flavors and seem to be
named after the clever guys who created them. One very common one
is Catmull Clark and can be found in most of the major 3D packages
available today and to be honest you don't really need to know it's
being used unless you plan to help work on developing the software.
Even ZBrush uses this type of Sub-division in its multi-resolution
Sub-d features.
Incidental information: source wikepedi
Dr.
Edwin Catmull (born 1945 in West Virginia) is a computer scientist
who has contributed to many important developments in computer graphics.
Early
in life, Catmull found inspiration in Disney movies such as Peter
Pan and Pinocchio and dreamed of becoming a feature film animator.
However, he assessed his chances realistically and decided that
his talents lay elsewhere. Instead of pursuing a career in the movie
industry, he enrolled in the physics and computer science programs
at the University of Utah. It was there that he made three fundamental
computer graphics discoveries: Z-buffering, texture mapping and
bicubic patches. While at the university, he invented algorithms
for anti-aliasing and rendering subdivision surfaces and created,
in 1974, his earliest contribution to the film industry, an animated
version of his left hand for Futureworld, the science fiction sequel
to the film Westworld and the first film to use 3D computer graphics.
After
leaving the university, Catmull founded the Computer Graphics Lab
at the New York Institute of Technology. In 1979 he went to work
for George Lucas at Lucasfilm. It was at Lucasfilm that he helped
develop digital image compositing technology used to combine multiple
images in a convincing way. Later, in 1986, Catmull founded Pixar
with Alvy Ray Smith. At Pixar, Catmull was a key developer of the
RenderMan rendering system used in films such as Toy Story and Finding
Nemo.
In
1993, the Academy of Motion Picture Arts and Sciences presented
Catmull with his first Academy Award "for the development of Renderman
software which produces images used in motion pictures from 3D computer
descriptions of shape and appearance." Again in 1996, he received
an Academy Award "for pioneering inventions in Digital Image Compositing".
Finally, in 2001, he received an Oscar "for significant advancements
to the field of motion picture rendering as exemplified in Pixar's
RenderMan."
Maya
uses Catmull-Clark alogorythms, in SoftImage XSI Both are available.
ZBrush uses Catmull-Clark
C4D
Other
types include:
|
| |
2.05
Edge Loops
|
| |
If you have searched on google for sub-division modeling you will
have come across the work of Bay Raitt and possibly an article produced
in 2000 has been circulated that many times now it is probably dizzy.
This article give the best summary of edge loops and what they mean
to you as a Modeler.
incidental
information:
There has been lots of discussion about where the future of sub-D
modeling and therefore edge loops is going. As innovative software
like Pixologics ZBrush allow the digital sculptor to create multi-million
polygon meshes the relevance of edge loops slips away. While there
is still a low polygon cage in the equation then edge loops matter.
|
| |
2.06
3,4 and 5 sided polygons and poles.
|
| |
Polygonal
Models are made up of Polygon Faces. Faces are made up of Edges
and Points.
For more details see The
Polygon Object componants on
page 4
More and more modeling packages these days support the use of Polygons
with more than 4 sides (N-Gons).
A Pole is a Point that has more than four Edges coming into it.
All very straightforward so far?
3
sided (Tri)  4
sides (Quad)  5
or more (N-Gon) Pole
An example
of the above is shown in the image below. The head on the left is
made up entirely of Quads and gives a very predictable Sub-divided
mesh. The head of the right is full of N-Gons and Tri's and once
Sub-divided pinching and irregularities in the mesh can be seen.
Both models however do contain five-edged Poles.
So
which is it then? Who is right and what are the rules? These questions
abound in the forums for every Sub-division package available and
here is a selection of answers I have taken from books, forums,
magazines, training material and good old fashioned experience from
the last few years:
Modeling
with all quads is good for several reasons. Firstly when you sub-divide
a quad you get a very predictable result. Second, if you model with
100% quads by default you have also modeled 100% Triangles if needed.
You simply hit the button that splits the quads in half (Usually
something like triple or tessellate). So a mesh with 2000 Quads
can be quickly and predictably turned into 4000 Triangles.
If
you are learning to model then learn to model with all Quads. Generally
speaking modeling is one step in a process: Concept Art > Modeling
> UV'ing >Texturing > Rigging/Muscles > Animation. So
if you are a modeler working as part of a team you will have very
clear direction about how the mesh is to be created. If the instruction
is 'anything goes' then all is well. If the requirement is a limited
polygon count and all Quads but you never took the time to learn
to model that way then you lose.
It is, of course, easier to just model without constraint and end
up with 3, 4, 5 and more sided polygons. It can be liberating to
just model away throwing caution to the wind and think about shape
and form in the way a traditional sculptor may do. Some very skilled
modeler do indeed model this way and create awesome looking models.
N-Gons
(Polygons with more than 4 sides) don’t work in all sub-division
modeling packages. So, If you want maximum cross platform compatibility
use only Quads and Triangles. Even packages that can Sub-divide
N-Gons can give unpredictable results when Sub-divided
A
lot of modeling experts seem to stick to the mantra of `All Quads
except where you have to have a Tri`. Model with quads as much as
possible and where you struggle to achieve this use a Triangle but
try and hide them on the model in case they cause an issue at Sub-Division
time. The issues I refer to are usually facets in the smoothed mesh
or some sort of geometry error.
A
model that looks great and Sub-divides well in the base or rest
pose may not do so when animated. Try to bear this in mind as you
construct your geometry.
What
about modeling for games? The big challenge for game creators in
recent years has been to keep the polygon count low enough so that
the game play isn't adversely affected. One way that game programmers
have been able to get round this is to use maps that simulate high
detail on the surface of the low detail models. One very specialized
type of map is called a normal map.
These maps take information from high detail models that can then
be used on a low polygon version to simulate detail. The model is
no more complex but the visual experience is much improved.
|
| |
2.07
Which 3D program do I need?
|
| |
So
to the question that you will have already asked and maybe even
had answered. Which program are you going to use to sculpt these
polygons we keep talking about? There is no right answer here (unless
you work for one of the companies that sell software).
You will choose your software based on a number of questions and
choices:
How much can I afford? If the answer is nothing then look to the
free solutions listed below.
Do I want more than just modeling? If so you need to look into the
more comprehensive solutions that include texturing, bones, animation
and full rendering solutions.
What sort of tools will I get?
|
|
|
|