One of the most difficult body parts to create with NURBS surfaces is a character's head. Among other reasons for this difficulty, the head usually has the most recognizable features and requires that multiple openings be created for the mouth, nose, ears, and eyes. Beginning the modeling process by modeling your character's head with NURBS surfaces will be challenging and will give you a good idea of the strengths and limitations of this surface type. This section introduces you to using NURBS surfaces and shows you how to rough out a specific type of NURBS head from a simple primitive sphere (see Figure 2.2). You are then shown how to manipulate the surface in a variety of ways to create the details of your character's face, with a special focus on understanding edge placement and surface direction. When you understand how to model the NURBS head successfully, you will be able to apply the same modeling principles to the rest of your character's body. 2.2. In this section, you learn how to create a NURBS head from a simple sphere (character model by Shawn Rinehart).Approaches to Modeling a NURBS HeadThe two main surface types in Maya are NURBS and polygons. For the purposes of the modeling process described in this chapter, the subdivision surface type is considered an extension of polygons and is mainly used as a way to smooth polygons. A NURBS surface is composed of intersecting curves, whereas a polygon object is composed of a mesh of polygon faces. The difference between NURBS surfaces and polygon objects is similar to the difference between vector images and pixel-based images in 2D drawing programs. NURBS surfaces are like vector images in that they are surfaces interpolated from resolution-independent curves. Polygon objects are similar to pixel-based images in that they are dependent on the number of polygon faces for their resolution. A higher-resolution image requires more pixels, and a higher-resolution polygon object requires more polygons. In a practical sense, this means a NURBS surface can look smoother than a polygon object with the same number of points. You can easily see this by creating a NURBS and polygon sphere with 8-by-8 subdivisions. The polygon sphere has noticeably hard edges, whereas the NURBS sphere appears completely smooth (see Figure 2.3). Increasing the resolution of polygon objects inevitably increases your file size and can make it difficult to adjust anything related to the components, such as deformations when the skin is bound by skeletons. Traditionally, this caused artists to favor NURBS surfaces for characters used in high-resolution mediums, such as films, television, and game cinematics. Although this has changed recently with the advent of subdivision surfaces, which enable you to work with a low-resolution polygon that is automatically smoothed for rendering. 2.3. A NURBS surface (left) is always smoother than a polygon object (right) with the same number of points and subdivisions.Many film companies, however, still use NURBS surfaces for creating high-resolution characters, and it behooves any modeler to fully understand how to create a NURBS skin. The first thing to understand about NURBS surfaces is that they are two-dimensional rectangular surfaces created from intersecting curves. In other words, no matter how complex a NURBS surface appears to be, it can always be unwrapped to create nothing more than a rectangle, called a NURBS patch. The two directions of the curves on each NURBS patch are the U and V directions. To see a visual representation of the U and V directions, select any NURBS surface and choose Display, NURBS Components, Surface Origins. This displays the edge curve where the V direction begins as a green line and displays the edge curve where the U direction begins as a red line. Each curve that defines a NURBS surface, called an isoparm, must extend completely across one of these directions. Keep in mind that all NURBS surfaces are continuous, with all isoparms in a particular direction being the same length. You cannot cut a real hole in the middle of a NURBS surface like you can on a polygon object by deleting polygon faces. Using the Trim tool to cut a hole in a NURBS surface, for instance, only creates an optical effect where part of the surface is hidden. For this reason, trims will not be used for openings on a surface that require deformation, such as mouth and eye openings on a head. The isoparms on a NURBS surface allow it to be deformed into a variety of simple shapes. For instance, you can bend a rectangular NURBS patch in the U or V direction until it meets itself. The bent edge can then be closed to create a cylinder (see Figure 2.4). If you bring the other two open ends of the cylinder around to close the other direction on the surface, you get a torus. A NURBS sphere is actually a cylinder whose open poles are pinched together only to appear closed, but are really open. Keep in mind when you are modeling your character that any single NURBS surface can only be deformed into variations of one of these four main shapes: a rectangle, cylinder, sphere, or torus. 2.4. You can deform NURBS surfaces into any shape that can be formed from a rectangle, which includes a cylinder, sphere, and torus.Because of the inherent limitations in deforming a rectangle, a single-surface NURBS head is difficult to create. The most basic type of single-surface NURBS head is often called a vertical head, because the basic shape for the head is a vertical cylinder with open poles at the top and bottom (see Figure 2.5). The top pole is pinched to create the top of the head, and the bottom pole is opened to create the neck. Although this type of head is relatively easy to create because the isoparms contour the entire profile of the face, it has some inherent problems when deformed in an animation. The mouth opening is particularly difficult to animate because of the placement of isoparms. To define the sides of the mouth, you must add many horizontal isoparms, which then causes the isoparms to bunch together on the cheeks. This can have an adverse effect when deforming the mouth into a smile, for instance, because the isoparms can start crossing over each other, causing unnatural creasing on the cheeks. 2.5. A vertical NURBS head has the poles at the top of the head and the bottom of the neck. This type of head does not produce good animation results in the mouth area.The best type of NURBS surface orientation for creating a deforming mouth is when the open pole of a NURBS cylinder is facing forward. This places one open pole within the mouth, and the other open pole is either on the back of the head or pulled down to create the neck opening. This head type is often called a radial head because the isoparms radiate out from the open mouth across the rest of the face. This orientation enables you to define each part of the mouth opening in the same way, making it easy and predictable to deform. You can run into the same problem as on a vertical head with the eyes, however, by trying to create eye openings from the vertical isoparms on the radial head. If you add isoparms to define the eye sockets, your head will have too many isoparms on the upper lip. To avoid this, you can add the eye openings on the radial head as two separate radial NURBS patches (see Figure 2.6). The edges of each patch must be lined up with the underlying head surface to achieve tangency so that the seam between the surfaces is not very noticeable. You also can place the edge of each eye patch so that it lines up with the socket of the eye to further hide the seam. 2.6. The radial head produces a better mouth structure, but it requires that you create the eye sockets from separate radial patches to avoid adding too many isoparms on the upper lip (character model by Maegan Walling).The last type of NURBS head is one created from multiple rectangular patches. This type of head often resembles a patch quilt, in that all the rectangular NURBS patches are lined up to achieve a continuous-looking surface. There are three advantages to creating such a multipatch head. First, you can separate edges if necessary to create openings (see Figure 2.7). Second, you can re-orient isoparms on individual patches in ways that would be impossible on a single NURBS surface. Third, you can often achieve greater surface continuity during animation, because all the edges of the patches line up with each other. Keep in mind that each patch must have the exact same number of isoparms as its neighboring patch to line up perfectly and to create tangency between the patches. 2.7. A multipatch head is like a patch quilt, and has the advantage that seams can be opened (left), or individual patches can be re-oriented while still having the edges line up (right).Other methods, such as a radial head with separate radial eye patches, can never achieve perfect surface tangency because the eye patches line up with the middle of the head patch, and the isoparms on the separate surfaces will never line up. This can show up as surface problems when deforming the patches with skeletons. Even though you can create a multipatch head from scratch, it is much easier to first create a radial head with eye patches, and then chop the surfaces into many pieces to line up the edges. In the next section, you begin creating your character's skin by modeling a radial head, which will be converted to a NURBS multipatch head later in this chapter. In the early stages of modeling your character's head, you will import some of your character designs into Maya to use as guides during the modeling process. Roughing Out a Radial NURBS HeadOne way of beginning a radial head is to create a NURBS sphere so that its poles are pointing forward and backward in the Z-axis. The sphere should be scaled in X and Y to have the basic oval shape of a head. Then in the side view, the first few rows around the front pole of the sphere can be pulled back in Z to form a mouth cavity. To rough out the basic shape of the mouth, it is easiest to use the right mouse button to select and transform hulls rather than individual points. The hulls around the mouth cavity should be scaled and translated downward. You can add isoparms around the mouth to define the shape of the lips, being careful not to add too many at this early stage. Rotate the rows of points around the back pole of the sphere gradually downward until they are horizontal. Then detach the surface around the pole to create an open edge for the base of the neck (see Figure 2.8). 2.8. Begin a radial head by pulling the points around the front pole to create a simple mouth opening (left), and then detach and transform the back pole down to create the neck opening (right).At this early stage of modeling your character's head, you want to build the overall shape gradually. Avoid adding too many isoparms in any one area, and try to achieve an even spacing of isoparms on all areas of the surface. Working in the side and front orthographic views, while using clipping planes, manipulate the components of the sphere to shape a basic nose, chin, forehead, and cheekbone. As you continue to shape the head in component mode, notice the points are on the hulls, not on the surface of the NURBS sphere. This can cause the points, otherwise known as control vertices (CVs), to be difficult to manipulate. This can be especially true around areas where the surface is heavily folded, such as on the lips. To more easily move across the component structure of the surface, use the arrow keys. The arrow keys enable you to select the next CV in the U or V direction of the surface, called pickwalking, while manipulating CVs. As you refine the head, keep in mind the eyelids will be added later as separate radial eye patches. To prepare for this, pull the points in the eye area below the brow back to create a slight indention. This gives you a space to place eyeballs and keeps the main head surface from having intersection problems with the overlying eye patches. When roughing your character's basic head shape, it is a common technique to cut it in half to work on only one side of the model. Because the basic structure of a head is symmetrical, detaching and discarding one side of the head along the isoparms that run vertically down the center of the face will simplify the modeling process (see Figure 2.9). Then you can focus on manipulating points on the remaining half. To see how your developing face looks on both sides while you are modeling, just duplicate the half-head as an instance, and scale it 1 in X to mirror it to the other side. The instanced side of the head updates as you manipulate the components on the original source head. This technique works well for developing a basic symmetrical head for your character. Later, you will want to use your character reference to create variations on each side of your final head to make it more natural by adding some asymmetrical variations on each side. 2.9. Cut your head in half to make it easier to work on only one side of a basic symmetrical face.When moving many CVs simultaneously, you may want to use the Proportional Modification tool. This can enable you to shape your head more naturally, by moving the CVs with a gradual falloff, instead of moving the entire group of CVs a constant amount. Do this by choosing Modify, Transformation Tools, Proportional Modification Tool . Be aware that there are some new options for this tool in Maya 5. The World Modification Type is the traditional way of using the tool, which is based on moving only the group of CVs that you have selected. You will usually want to use either the Linear or Power options. The Linear option creates a falloff based only on the Distance value. Increase the value to move more CVs, which changes the shape of the falloff angle. Power has an additional Degree option that you can set with positive or negative values. Adjusting both the Distance Cutoff and Degree values changes the shape of the falloff angle. Setting negative values for the Degree option reverses the effect, making the CVs that are farther away from the tool move more than the center ones. With the tool activated, drag a selection box around some CVs on your model and translate the manipulator to see the propmod effect. In addition to using the World option, there is a new Parametric Modification Type that can be used with NURBS surfaces. In this case, only select a single CV to move. Other CVs on the NURBS patch around this CV will move based on their distance from the selected CV. All other options can be set in the usual manner. You can use this tool across seams to modify multiple NURBS patches. You also can create a similar effect by assigning deformers in the Animation module, such as a lattice, to your surfaces. Lattices can be assigned to objects or components and produce a similar falloff effect when the points of the lattice are manipulated. Refining the Radial Head Without Manipulating CVsOne limitation of NURBS surfaces is that the control vertices or CVs do not sit directly on the surface curves, but instead sit on the hulls. This can make it difficult to tell which CV controls a particular part of the surface. In complex areas of the face, such as in the nose and mouth areas, CVs sitting on hulls can overlap each other. On a closed mouth, for instance, the CVs for your character's bottom lip will often be higher than the CVs for your character's top lip. This can be confusing, making it difficult to select the right CV for editing. You can use the arrow keys to pickwalk over the surface and eliminate some of this confusion, but you should also be aware of some modeling techniques and tools that enable you to manipulate NURBS surfaces without directly manipulating CVs on the hulls. Although the CVs do not sit directly on the NURBS surface, there are points that do sit on the surface, called edit points (EPs). Unfortunately, the EPs on a NURBS surface cannot be manipulated. However, you can manipulate EPs on a NURBS curve. Therefore, you manipulate points on the surface by using a history connection to creation curves for the NURBS surface. Do this on your half-head by copying out the surface curves that radiate around the mouth, usually the V direction, and then loft the curves to re-create the surface with a history connection. Delete or hide the original half-head, and group all the NURBS curves under one node so that you can select them all simultaneously. With the curve group selected, in component mode you can then turn on EPs and turn off CVs in the component selection filter bar. This enables you to select and manipulate the EPs on the curves, which will deform the surface of your half-head through the history connection (see Figure 2.10). When you have finished manipulating the EPs, just delete history on the surface to remove the connection and delete the creation curves. 2.10. By using the history connection between curves and a lofted surface, you can manipulate EPs to refine your model.You can use a couple of valuable modeling tools to manipulate a NURBS surface without having to manipulate CVs directly. The first is the Sculpt Surfaces tool, which is activated by selecting your half-head, and choosing Edit NURBS, Sculpt Surfaces Tool . In the resulting Artisan Tool options box, adjust the settings for manipulating the surface (see Figure 2.11). For modeling an organic character, you should in most cases choose the first or second round brushes that have a smooth falloff. In the perspective view, painting with the Sculpt Surfaces tool gives you a very intuitive way of pushing and pulling points to refine the shape of your character's head after you have finished creating the main isoparm structure. Set the brush upper radius or hold down the B key to size your brush interactively. You should only set the lower radius if you are using a pressure-sensitive stylus. Adjust the Opacity and Max Displacement sliders to set how many points on the surface will move when you paint a stroke. In addition, set the Operation option to move points in the direction you want. In most cases, you will want to use the Normal option to push and pull points on your model perpendicular to the surface, just like you would if you were shaping a piece of clay. However, there will be times when you should use the other options for moving points according to the first normal direction of a stroke, or according to the global axis, or according to the U and V directions on the surface. Experiment with these different settings to see how they deform the surface. Use the Smooth and Erase operations to soften or reduce the effects of pushing and pulling points on the surface. Finally, if you need to move all the points on a surface in particular directions, set all your options as needed and click the Flood button. 2.11. The Sculpt Surfaces tool enables you to push and pull the surface using artisan brushes.The other tool that you can use to manipulate a NURBS surface without directly selecting CVs is the Surface Editing tool. This is one of the most useful modeling tools in Maya, and every modeler should be thoroughly familiar with how to use it. With your half-head selected, activate this tool by choosing Edit NURBS, Surface Editing, Surface Editing Tool. The tool itself is an icon that sits directly on your NURBS surface with several handles sticking out of it (see Figure 2.12). The only option for this tool is the size, which you can adjust by double-clicking the Surface Editing tool's icon on the toolbar. When using this tool, it is best to enlarge the perspective view to full screen and make sure you have Shading, Shade Options, Wireframe on Shaded turned on. This enables you to see the structure of your surface in shaded view as you manipulate the tool handles. The main center icon is a large square sitting directly on the surface that can be translated to move that part of the surface. Click and drag the small blue cube next to this square to slide the tool across the surface to another position on the surface. There is also a long handle coming out from the center square icon that has a blue sphere, a second blue square, and another small blue cube icon sitting on it. This handle is oriented along one of the three main directions of the NURBS surface. Clicking the blue sphere changes the orientation of the handle to face along the U, V, or normal direction on the surface. (The normal direction is perpendicular to the surface and is sometimes referred to as the W direction.) Moving the square icon on the handle rotates points on the surface, whereas moving the small blue cube enables you to scale points on the surface. Manipulating these handles can give you a high degree of control over refining your NURBS character's skin to exactly the way you want it, without ever having to directly manipulate CVs. 2.12. Manipulate handles on the Surface Editing tool to manipulate the surface directly in a variety of ways.Completing Your Character's HeadAfter refining your half-head so that it is close to finished, make it into a whole head to complete the details and add asymmetrical variations. Because an instance cannot be made into a normal surface, select and delete the instanced side of the head. Then duplicate the remaining half of your head, being sure to set the duplicate options to Copy rather than Instance and scale it 1 in X to mirror it to the other side. However, make sure the points running vertically down the open edges of each head are straight before duplicating. If they are not, select the hulls on the top and bottom edges and scale them in X until they are in a vertical line. Also, to ensure that the new half ends up in the right place in X, make sure you line the center of your half-head up with the open edge. To connect the two halves together, you just have to Shift-select both surfaces and attach them using Edit NURBS, Attach Surfaces. To attach both sides without adding any extra isoparms, set Blend as the Attach Method, with a .5 in the Blend Bias value. If you have any problems attaching, such as the top edge of one half-head attaching to the bottom edge of the other, you will need to specify the edges to attach by selecting the two top-edge isoparms in component mode before attaching. Keep in mind that attaching the two halves of the head does not make it into a closed surface. The top edges on the forehead are attached, but the bottom edges on the chin remain open. It is important to close the head surface at the chin so that it doesn't split apart when the surface is deformed during animation (see Figure 2.13). Do this by selecting your character's head and choosing Edit NURBS, Open Close Surfaces . It is often best to use the Blend option here also. Be aware that you only want to close the direction on the surface that will make the head a continuous surface at the chin, and not close the direction that creates the open mouth and neck. In most cases, this will be the V direction, but this really depends on your individual model. Notice that closing the head surface at the chin moves the seam to the side of the face. It is best to move it back to the center by selecting the isoparm on the middle of the chin and choosing Edit NURBS, Move Seam. Having the seam directly in the middle of the chin keeps both sides of the head symmetrical in structure, which makes it easier to continue modeling and for texturing. For instance, a symmetrical surface is required to use the Sculpt Surfaces tool's Mirror option, which creates two brushes on each side of the face while you sculpt in order to make symmetrical adjustments. 2.13. Even after attaching the two halves of the head, the seam at the chin is still open. It should be closed so that it doesn't show up when the face is animated.It is best to create the eyeballs of your character before creating the eyelids, because you can then use the eyeballs as guides for shaping the eyelid sockets. Begin the eyeballs by creating a primitive sphere with the axis facing in Z. Create a second sphere that is offset to intersect the front of the first sphere and perform a subtract Boolean operation to carve out the colored part of the eye. This creates a separate indented surface that you can texture easily, and the surface will catch light on its edge. Finally, make the black iris of the eye as a small squashed sphere that fits in front of the indented colored section. The advantage of making the iris as a separate piece of geometry is that it can be scaled easily to make it larger and smaller, just like a real iris. If you really want to make the eye realistic, make one last sphere that encloses all the other parts of the eye. This sphere should be made completely transparent, but with a high specularity so that it reflects light, especially on the curved area that encompasses the iris. To finish your eye, make the transparent sphere the parent of all the other eye parts so that they can all be animated together easily. The two main styles of eyelids you see on 3D characters are cartoon, which are noticeably separate surfaces from the main head, and realistic, which appear to have seamless continuity with the main head. To create a cartoon eyelid, in the side view you draw a curve around your eyeball in a 90-degree arc with a small hook at the end, and then revolve the curve 360 degrees in Y (see Figure 2.14). This creates the top lid, which you can then duplicate to create the bottom lid. Scale the bottom lid slightly smaller than the top lid and rotate it in X to place it over the lower part of the eye. Animating the cartoon eyelids is done by just setting keyframes on their X rotations. 2.14. Create a cartoon eyelid by revolving a hooked curve in Y. The cartoon eyelid will be rotated to open and close.To fit the cartoon eyes onto your character's face, you can create a lattice around each eye. For instance, create a single group node parent named LtEyeGroup over the left eyeball group, and the two left eyelids. Then select the LtEyeGroup node and create a lattice by choosing Deform, Create Lattice in the Animation module. Set the lattice Division options to 2 for simple squashing and stretching, or to higher numbers for more extreme deformations. It is not necessary to turn on local mode, but group the base and lattice together so that you can make them child to your head skeleton when you create your animation rig. Leave all the other options turned off. Finish your cartoon eyeball by selecting the lattice group in the hypergraph view, and then in the perspective view translate the lattice group to the eye area of your main head. Once positioned, select and translate lattice points to fit the left eyeball and eyelids into the face as needed (see Figure 2.15). Be aware that the lattice deformation occurs on top of the transforms, so you should still be able to rotate your eyeball and eyelids in the deformed state, without any intersection problems. For this reason, you should not delete the lattice after deforming the eyeballs into place, because then they won't close correctly. 2.15. Using a lattice to fit the cartoon eyeball into the eye socket enables you to still rotate the eyelids without intersection problems.To create more realistic eyelids, you need to create a radial eye patch over each eyeball. You can do this in a variety of ways, including modeling it from a primitive sphere in a similar manner to the way you modeled the mouth on the main head surface. However, another technique is to make the head a live surface and draw a curve on it around the eye socket area. Use a cubic EP curve that you start and end at the same point under the brow. After creating, close the curve with a Blend set to a .5 Blend Bias. Then with the surface curve selected, choose Edit Curve, Duplicate Surface Curves to separate it from the main head. Make sure your eyeballs are placed as close as possible to their final position in relation to the face, and then use them as a guide for placing additional eyelid curves. Turn off the live surface head and duplicate the surface curve several times, moving and scaling each duplicate to contour the surface of your eyeball (see Figure 2.16). Pull the last few curves back to create the edge of the eye opening. After placing all your curves correctly, Shift-select all the curves in order from the surface curve to the last one on the edge of the eye and loft the curves to create the eyelid patch. 2.16. Create a realistic eyelid by drawing a curve on your head surface, and duplicate it several times to contour the eyeball. Then loft the curves to create the eyelid patch.Be careful not to let the isoparms on your eyelid twist too much as they go from the head surface to the eye socket. You can group the creation curves to continue refining the patch by moving points on the curve using the history connection. At some point, you want to delete history on the eyelid surface, and add or delete isoparms as necessary to clean up the surface. It is important when you are building NURBS surfaces to space the isoparms as evenly as possible across the surface. Additional isoparms should only be added to create changes in direction on the surface, to harden an edge, or to create a wrinkle. On your eye patch, for instance, the isoparms that radiate out from the eye socket should be evenly spaced, but you may add some extra isoparms in the other direction to create the eye fold. You can create a more regular surface by rebuilding the surface as Uniform parameterization, but that can sometimes adversely remove important details. It is sometimes better to just select the isoparms you want to remove and delete them. You also can create a NURBS ear as a separate radial patch that sits on top of the main head surface. Another way to create radial surfaces is to revolve an EP curve a full 360 degrees, and then modify the surface into the shape you want. Draw a curve that creates the basic shape of the cavity and outer edge of the ear, revolve it, and then modify the resulting surface to have more of an irregular ear shape (see Figure 2.17). Proportional modeling or a lattice makes it easier to form the ear. Like the eye patch, you need to create tangency between the outer edge of the ear patch and the main head surface. Be aware that using the V key to snap CVs to other CVs on the middle of a NURBS surface will not create tangency between the surfaces. The reason for this is that the two surfaces have very different isoparm structures, and because the CVs you are snapping together are not sitting directly on the surface. Snapping CVs only works well on the edges of two NURBS surfaces that have the same UV structure, such as in a multipatch model as described later in this chapter. Lofting from an EP curve that was drawn on a live surface,to however, produces better tangency because the EPs can be drawn directly on the surface. Keep in mind that even though you may have created the body parts separately, at any time you can copy out the isoparms to reloft with a curve drawn on the main surface. This enables you to make a good connection between the surfaces that will appear continuous. Due to the differences in the drawn and copied curves, however, the resulting NURBS patch will have extra isoparms that should be cleaned up. Do this by rebuilding the surface, or by manually deleting isoparms after deleting history on the surface. 2.17. Revolve a curve to create a basic ear shape, and then modify it to form a basic ear for your character.
|