Thursday, June 9, 2011

The Base Mesh, Part 1

Poly modeling has changed a lot in recent years. Once was, there were "hi-poly" modelers, employing NURBs and Beziers, moving around very dense meshes with brush-like tools, and "lo-poly" modelers, specializing in meticulously placing points to create sparse meshes that were abstract suggestions of form.
In a manner of speaking, the lo-poly method won out, in part because of Mr. Catmull and Mr. Clark. But in another manner of speaking, the new workflow is a hybrid of the two. Today, no matter the output medium, you will almost always create both a hi-poly and a lo-poly version of the mesh. For high-def media like film, the high-res mesh is the star, and for interactive/realtime, the lo-res mesh is the hero; but in both cases, both meshes are employed. For film, a high-resolution mesh is tessellated or substituted at render time from a low-resolution proxy mesh. For games, a low-resolution mesh is dressed with a normal map extracted from its high-resolution counterpart.
The result of all this has been the coalescence of 3d modeling as an art form. Today, want ads no longer ask specifically for a "hi-poly" modeler or a "lo-poly" modeler; but simply, a modeler. This does not simplify things for the average modeler, however. Now it isn't enough to master either the Haiku of lo-poly or the Rococo of hi-poly - you must do both.
Theoretically, either model can come first in the process. Half the professional modelers out there start with a hi-res mesh, sculpted with the more immediate, intuitive toolset of digital sculpting packages like ZBrush or 3d-Coat, with lo-poly meshes later derived through the process of retopology (basically, drawing the lo-poly mesh onto the surface of the hi-poly). They prefer to start with "ZSpheres" or simply a sphere – a lump of virtual clay sufficiently generic enough to be the starting point for anything. Others create the base mesh first, and through subsequent subdivision and sculpting on layers derive the higher-level LODs. Both workflows are appropriate depending on the job. A third approach is to start with a very generic base mesh (the "block mesh"), then the sculpt, then retopology for good edgeflow.

My main approach is to start with a topologically organized base mesh, which belies my origins in the dark ages of console games. Back then, every polygon was counted, and oftentimes 200 triangles were too many for a character. So I'm comfortable with the approach of laying down meshes poly-by-poly. I also feel that this approach affords certain advantages. No retopology phase, for one; which bypasses a process as mindless and tedious as UV layout. Also, by starting with a carefully thought-out base mesh, you can sculpt a hi-res mesh with great ease, since all the basic forms are already blocked out, so no unsightly stretching has to occur.

The other reason it pays to start out with a good lo-poly base mesh: you can reuse them. Yes, digital sculpting is fast; ZBrush can allow you to crank out multiple variations on a design concept in a single day. Topology, on the other hand, is tedious: figuring out when to use a quad, when to use a triangle, when to flip an edge, when to add an edge loop. Watching poly counts and studying anatomical references for correct edge flow. Tedious. The good news: a good base mesh can be reused for multiple characters. In fact, you put in the time up front to create a set of base meshes, and most of your future contract jobs are already done. You will need a realistically proportioned adult male, adult female, and child. You also need several archetypes of "toon" characters. With a small collection of solid base meshes, you can start cranking out digital characters like there's no tomorrow. The next couple blog posts will be about the sometimes tedious process of creating that base mesh library.

No comments: