Creating a Polygon Skin

The next stage in the modeling process is to take your multipatch character skin and convert it to a polygon skin with very few seams. If you carefully lined up your NURBS patches so that they are all tangent, this should be a relatively easy process to complete. The advantage of converting to a polygon model is that you are able to merge many of the patches to a single polygon object that has the same basic structure as your NURBS character. You can then use polygon-modeling techniques to refine and add details to your character's skin that would be problematic to add on a NURBS skin.

Converting NURBS Patches to a Polygon Skin

Before converting the NURBS patches to polygons, make sure the normals on all the patches are facing outward. Normals facing in opposite directions cause problems with merging the polygons. Do this by selecting all your surfaces and set them to low display resolution by pressing 1, and then display the normals under Display, NURBS Components. Although you can change the size of the normals on a NURBS surface in the Attribute Editor under NURBS Surface Display, this is a bit tedious on a multipatch character. If the normals are too large to see clearly, turn them off and display the Surface Origins instead. The normals direction is displayed by the surface origins as a single blue line that is perpendicular to the NURBS surface. If any patches show the normals as facing inward, choose Edit NURBS, Reverse Surface Direction graphics/shadebox1.gif, and use the appropriate option to reverse the surface. Continue doing this until all the head patches have their blue normal lines facing outward.

2.58. Display the Surface Origins to check the normals on all your NURBS patches to make sure they are all facing outward.

graphics/02fig58.gif

With all the NURBS surfaces still in low display resolution and selected, choose Modify, Convert, NURBS to Polygons graphics/shadebox1.gif. You want to set the options to create polygon objects that have the same subdivisions as the NURBS. Do this by setting the convert options to Quads Type, General Tessellation Method, and set the Initial Tessellation Controls to Per Span # of Iso Params with a value of 1 for both the U and V directions. Click the Tessellate button to convert your multipatch NURBS head to a multiple polygon head. Select the NURBS multipatch head by turning off Polygons in the Show menu of your perspective view, hide it, and then show the polygons again. Notice that the polygon multipatch head has the same number of edges as your NURBS multipatch head had isoparms (see Figure 2.59).

2.59. Using the correct settings in the NURBS to Polygons options should create a multiple polygon head with the exact same structure as the NURBS multipatch head.

graphics/02fig59.jpg

Double-check the normals on your converted head polygons by choosing Display, Polygon Components, Short Normals. Make sure all the normals still appear to be pointing outward on all the polygon patches, and reverse any that are pointing inward by choosing Edit Polygons, Normals, Reverse graphics/shadebox1.gif, setting the Mode option to Reverse as well (see Figure 2.60). Then combine and merge the separate polygon objects into single polygon body parts. Keep in mind that it is not necessary to merge all the polygon patches into one single polygon skin. It is usually best to keep some of the parts of your character separate. If parts of your character are meant to have completely different shaders, such as different clothing items, for instance, it often makes sense to make them separate objects. It is also sometimes necessary to separate body parts that will be animated differently. The head, for instance, is often animated with blend shapes. It makes sense, therefore, to separate the head from the body at the bottom or top of the neck, so that you can create blend shape target out of only the head and not the whole body. In addition, the hands may be bound with a different method than the rest of the torso, so it makes sense to separate the hand skin from the arm skin at the forearm. As mentioned previously, place the seams between skins carefully, so they don't sit directly on main joints. Then select all the polygons on your multipatch polygon head that you want to make into a single body part. This should include at least all the face patches, and combine them by choosing Polygons, Combine. Finally, delete history on the combined polygon head to remove the individual polygon objects.

2.60. After converting your NURBS head patches to polygons, double-check the normals and reverse any that are not pointing outward.

graphics/02fig60.jpg

Combining the polygons will not completely merge them into a seamless polygon body part. Overlapping vertices and border edges will still exist within the polygon mesh. You can see these by turning on Border Edges in the Display, Polygon Components menu. The unmerged borders show up as thick green lines on the wireframe mesh. To fuse the overlapping borders together, with the polygon still selected choose Edit Polygons, Merge Vertices graphics/shadebox1.gif. Set the Distance option to .01 to only merge the overlapping vertices. The thick green lines representing the overlapping border edges should become thin green lines that represent single polygon edges. If some of the edges didn't merge, check your normals again to make sure some of the faces are not reversed. You cannot merge vertices of polygons that have the normals facing in opposite directions. If any of the normals are facing inward, select them in component mode and reverse them. Then try merging the vertices again. If you still can't merge the vertices, try using the Merge Edge tool. Just activate the tool by choosing Edit Polygons, Merge Edge Tool, and click the two edges you want to merge. When both edges are highlighted in orange, press the Enter key to merge them.

Splitting, Extruding, and Creating Polygons

Unlike a curve-based interpolated NURBS surface, polygon objects are composed of a mesh of individual polygonal faces. This enables you to split, extrude, and append polygon faces to refine your character's skin in ways you couldn't do using NURBS surfaces alone. Keep in mind, however, that adding details to your polygon skin should still be done carefully and gradually. When you converted your NURBS skin to polygons, you chose quads as your conversion type because it is the most efficient type for smoothing and texturing polygon objects. In the next section, you learn how to use one of the main polygon smoothing methods in Maya, which is to convert your polygon skin to a subdivision surface skin. A polygon object that is all quads converts cleanly to a subdivision surface, whereas a polygon object that has triangles produces a lot of extra geometry when converted to a subdivision surface (see Figure 2.61). This can dramatically increase your file size and slow down your system. Starting your skin as a NURBS surface established it as all quads, because NURBS patches are quads by nature. As you refine your polygon skin, you want to use techniques that keep this basic structure, by avoiding creating three- or five-sided polygons on your skin.

2.61. It is best to keep your polygon composed of all quad faces, which convert cleanly to a subdivision surface (left), as apposed to triangles, which generate extra geometry when converted (right).

graphics/02fig61.gif

The most important tool for refining your polygon skin is the Split Polygon tool. Activate this tool by choosing Edit Polygons, Split Polygon Tool graphics/shadebox1.gif. In the resulting options box, make sure you set the Geometry Subdivisions option to 1, and turn on the Edge Snapping option with Snapping Magnets set to 1, and a tolerance above 1. This makes it easier for you to click directly the edges of the polygons you want to split. To split a polygon, just click an edge or point, click another edge or point on the opposite side of the polygon, and then click the Enter key. This operation splits the polygon into two polygons. You can use the same procedure to split a series of polygons by just continuing to click edges. Use the middle mouse button or the Insert key to adjust point placement, and press the Enter key to split all the edges.

To keep your character's skin composed of all quad polygons as you refine your skin, you can use a technique called creating edge loops. This technique has been promoted for some time by the modeler Bay Raitt, who recently worked on the Lord of the Rings characters at Weta. The technique involves splitting polygons in specific ways to create a loop on the surface that contours the topology of the skin, while not creating any triangles. The basic technique is to split a series of polygons in half as you keep changing directions until you eventually connect to the start point again. The loop can go anywhere on the surface, but usually contours and defines specific features, such as wrinkles or muscles. When the loop changes directions, it creates a five-sided polygon. To fix this problem, just split it from the center of the loop edge to the opposite fifth corner to create two quads instead (see Figure 2.62). Do this at every place the loop changes directions. This enables you to build up surface details while keeping the entire skin composed of quad polygons.

2.62. When you add details to your polygon skin, create edge loops with the Split Polygon tool to keep the geometry all quads. Whenever the loop changes direction (left), remove the five-sided polygon by splitting it to the far edge (right).

graphics/02fig62.gif

As you refine your model, you may find areas on the polygon skin that converted from the NURBS skin as triangles. This would occur in any area that had a NURBS pole. NURBS poles are open edges that were pinched together, rather than lined up with another open edge. Such an area will not convert well to a subdivision surface. If the pole is inside an eye or mouth cavity, you could disregard fixing it, but it would be best to select and delete the triangulated faces directly around the pole. In an area on the skin that is noticeable, you should fix the problem. Do this by first deleting the triangulated faces around the pole, which will create a hole. Then select all the edges around the hole, and choose Edit Polygons, Fill Hole. This creates a many-sided polygon that you can split to remove all triangles (see Figure 2.63). Usually you can bisect the polygon in at least one direction by splitting from a point on one side to one on the opposite side. Then try to connect all the end points on each side of the bisected to other end points, so none remain. If the pole has 10 edges, for example, you should be able to split it to connect 2 opposing points. Then split each half in the same direction to connect 2 points on each of the sides. Sometimes it can be quite challenging to keep your skin quads in areas where several muscle structures come together, such as on an elbow. Using these techniques, however, you should be able to remove all the triangles, which will make the skin convert more efficiently to a smooth subdivision surface.

2.63. Remove poles on your skin (left) by deleting the faces at the edge of the pole, and create a new polygon face that is split to connect and loop edges (right).

graphics/02fig63.jpg

Keep in mind that it is a good practice to keep your polygon skin as light as possible by adding only details that will be deformed during animation. If you want to animate muscle flexing, for instance, you must add enough polygon edges to create all the muscle shapes that will be created on the skin when the character moves. However, it is not necessary to create details that do not deform, such as a belly button, nipples, or scars. These other surface details can be created in the next stage of the process on the subdivision surface level. For now, concentrate on defining and contouring the deformable muscles and joints in as efficient manner as possible. Also, keep in mind that creating a skin structure that contours the deforming muscle structure produces better results when animated (see Figure 2.64). You can do this by modeling the individual muscle shapes as NURBS patches, and then connect them as a polygon skin. Because polygons do not have the same limitations as NURBS surfaces, you can shape your skins to be more dynamic for animation.

2.64. When refining your polygon skin, try to create the skin edge structure so that it contours the muscle structure as much as possible.

graphics/02fig64.jpg

Because most of your skin was previously created as NURBS patches, you will mostly only need to use the Split Polygon tool to refine it. Sometimes, however, you may need to add completely new polygon structures to your developing character model. For doing this, you should know how to extrude, create, and append polygons. Extruding a polygon face can facilitate creating new appendages that extend out from part of your character's skin, or it can enable you to create a cavity such as nostrils. Just select a face and choose Edit Polygons, Extrude Face. Then use the manipulator to scale and translate the face as desired. To create a cavity with an edge that has thickness, scale the extruded face so that it is sitting flat within the boundaries of the original face. Then extrude again and translate the new extruded face back into the surface. If you need to extrude multiple faces together, make sure you turn on the Keep Faces Together option under the Polygons, Tool Options menu. Keep in mind that although it is easy to create details through extruding faces, be wary of creating poles, which should be fixed in the manner described previously. Finally, you also can select and extrude a series of edges to extend a polygon branch off the character, such as for creating a limb. To attach the extruded polygons to another series of edges, make sure the two pieces are combined, and then use the Merge Edge tool. In the Merge Edge tool options, you can set whether the merge should occur at the first edge picked, second edge picked, or move both edges to merge in the middle.

Another polygon modeling tool that is useful for creating new polygon body parts is the Create and Append Polygon tool. Both of these tools are very similar, and you can actually switch from one to the other by changing the Operation setting inside the tool. Activate the tool by choosing Polygons, Create Polygon Tool graphics/shadebox1.gif. In most cases, for creating quad polygons, you should leave the tool settings at their defaults of 1 subdivision and normalized textures. Turn on Ensure Planarity to keep from creating a nonplanar or bent polygon. An individual polygonal face should be planer or flat. Use the Create tool to draw the four corner points for a new polygon, and click the Enter key to create it. Switch to the Append tool to add a polygon face to an existing polygon. Just click the edge that you want to add to, click two more times to create the other corners, and click the Enter key to create the appended polygon face. Notice that the corner points for the new polygon must be drawn in a particular order to end up with a rectangle. You also can use the Append tool to add a polygon between two un connected polygon edges. The two pieces must be part of the same polygon node, so combine them first if they are not. Then activate the Append tool and click the first edge, click the second edge you want to connect to, and then press the Enter key.

Smoothing Your Skin with Subdivision Surfaces

In the past, the biggest problem with using a polygon skin was that it had to be excessively subdivided during the modeling process to look smooth for high-resolution rendering. This created many faces and points that were difficult to texture and deform with skeletons. Sub division surfaces fix some of these problems by enabling you to create your texturing and deformations on a low-resolution polygon proxy skin that is connected to a high-resolution subdivision surface skin. The subdivision surface skin is not just a smoothed version of the polygon skin, but a completely different surface type that has properties that can be added to the basic polygon skin properties.

Converting your polygon head to a subdivision head is a relatively simple task. First, duplicate your polygon character and hide the original skin. Then, select all the polygons in the duplicated skin and choose Modify, Convert, Polygons to Subdiv graphics/shadebox1.gif. Check the number of polygon faces in your head by turning on the Poly Count in the Display, Heads Up Display menu. This gives you an idea of how high you should set the conversion values. You can set the Maximum Edges Per Vertex to around 10 to start. If any of the settings are set too low, the conversion will fail and you will get an error message. Also, if you have problems on the skin, such as nonmerged vertices or edges resulting in nonmanifold geometry, you will get an error message. If you do, open the Script Editor and read the message. Maya usually tells you in the gray History field what you need to do to make the conversion work properly. Sometimes this involves doing a cleanup operation on the surface, with the Fix Non-Manifold option turned on. Click the Apply button to convert the surface. If you created your skin carefully, with all quad polygons, the subdivision surface skin should look exactly the same as the polygon skin, only smoother (see Figure 2.65). If any triangles or poles still exist on the polygon skin, however, these areas will become subdivided on the subdivision surface skin. At this point, you can delete the subdivision surface skin, unhide the original polygon skin, and fix the problem areas. Then go through the conversion process again to check the result.

2.65. If your skin is composed of all quad polygons, you should see no new geometry added when you convert to a subdivision surface.

graphics/02fig65.jpg

Subdivision surfaces have two basic modeling modes, called standard and polygon proxy. When you first convert to a subdivision surface, you are in standard mode, which displays only the subdivision surface. You can switch to polygon proxy mode by choosing it under the Subdiv Surfaces menu, or by right-clicking over your skin and choosing Polygon. You will see a wireframe polygon proxy that looks identical to your original polygon skin. When in polygon proxy mode, you can use any of the tools and commands that you use when modeling regular polygons to modify the proxy. All edits to the polygon proxy affect the subdivision surface through a history connection. You can switch back to standard mode by choosing it in the Subdiv Surfaces menu or by right-clicking the skin. Going from polygon proxy to standard mode deletes the history connection and displays the subdivision surface again. In standard mode, you can select edges, points, and faces to modify the subdivision surface with the commands in the Subdiv Surfaces menu.

Like NURBS surfaces, subdivision surfaces have several display resolutions that you can turn on by clicking the 1, 2, and 3 keys.

The lowest resolution should have the same structure as your original polygon object, with no new subdivisions occurring. The highest resolution may subdivide the surface to some degree, even if you were successful in creating all quads on your original polygon skin. If you look at your subdivision surface head in shaded view, it should look even smoother than the NURBS version, with complete tangency between all parts. In fact, it may look too smooth in some areas, such as around the nose or lips. Adding edge loops on your original polygon head before converting is one way to make these areas stand out more. In addition, some of the original placement of points on your head may need to be moved to create more extreme features to counteract the smoothing that occurs when converting to a subdivision surface skin. You can make these adjustments on the subdivision surface directly, but it is always better to start with the best possible polygon model. Also, animation techniques discussed later require your basic polygon skin to have the exact same structure as your polygon proxy skin. Therefore, try to make most of your revisions on the original polygon skin, and then convert it again when finished.

There is one way you can make revisions to your original polygon object and have it update on your subdivision surface. This technique involves connecting the original polygon skin to the polygon proxy node of the subdivision surface skin, so that any modeling revisions you do on one will also be done on the other. You should use this technique only before doing work on the subdivision surface levels; otherwise, it may have unpredictable results. First, make sure your subdivision surface skin is in polygon proxy mode. Then select both head skins, open a hypergraph view, and turn on Options, Display, Shape Nodes in the hypergraph view menu bar. You should see a shape node for both skins, plus an extra HistPoly shape node for the subdivision surface skin. A subdivision surface has separate shape nodes for the standard and polygon proxy modes. The HistPoly node is the polygon proxy shape node. Choose Window, General Editors, Connection Editor to connect the shape node of the original polygon skin to the polygon proxy shape node of the subdivision surface skin. Select the polygon skin's shape node and click the Reload Left button in the Connection Editor. Scroll down toward the bottom and click the Out Mesh attribute. Then select the HistPoly node for the subdivision surface skin and click the Reload Right button in the Connection Editor. Scroll down toward the bottom and click the In Mesh attribute. The two attributes become italicized as they are connected (see Figure 2.66). Close the Connection Editor, and then try to modify some of the components on the polygon skin. You should see the same modifications occur on the subdivision surface skin. You can even split or extrude polygons, and the changes will be updated accordingly on the polygon proxy.

2.66. Using the Connection Editor to connect the shape node of your polygon skin to the polygon proxy node of a subdivision surface skin enables you to modify both together.

graphics/02fig66.jpg

Whether you are modifying a connected polygon skin or modifying your polygon proxy skin directly, history is built up when your skin is in polygon proxy mode. Switching to standard mode deletes the history by deleting the HistPoly node. If you have connected your subdivision surface skin to your original polygon skin for the purposes of making modifications, complete your modifications before switching back to standard mode, because this switch removes the connection. Even if you are working directly on the polygon proxy skin, it is recommended to switch to standard mode periodically to clear out the history that builds up. In addition to modifying your polygon proxy to make features stand out, you can modify the subdivision surface in standard mode to better define surface features. To define the edge of a nostril, for example, right-click the skin in standard mode to select the edges that contour the side of the nose. Then choose Subdiv Surfaces, Partial Crease Edge/Vertex. You should see the surface become subdivided around the selected area as it hardens the edge slightly. For organic characters, a full crease hardens the edge too much; so in most cases, creating a partial crease is preferable. Reserve a full crease for hard-edged clothing items and armor.

Notice that creating a partial crease subdivides the selected area of the subdivision surface. Another way to add details to a specific area of the surface is by refining the selected components manually. To do this, right-click the surface again and choose Edge, Vertex, or Face to select components in the area you want to further define. To carve out a better nostril, for example, select faces under the nose, and choose Subdiv Surfaces, Refine Selected Components. Then select the points or faces in the refined area to translate them upward to carve out a better nostril.

Subdivisions on the skin are stored in levels of detail when working in standard mode. After refining the nose area, right-click the skin and choose Edge to see the subdivided edges available on the current level. Then right-click again and choose Display Level, 0. This shows you the components available at the lowest level, which should look very similar to your polygon proxy. Then change the display level to 1 to see the components associated with next level of detail on the subdivision surface skin (see Figure 2.67). You also can right-click and choose Coarser or Finer to move through the levels as needed. Continue to view any more levels that were automatically created as you refined your skin. The maximum number of levels you can have is 13, but you should be careful not to refine the surface so much that you have more than about 5 levels. The more details you have, the larger your file size (which is not efficient). If it seems like you are getting too many levels, you can collapse them down by choosing Subdiv Surfaces, Collapse Hierarchy graphics/shadebox1.gif. Use a value of 1 in the Number of Levels option to collapse one level at a time.

2.67. Adding details on your subdivision surface skin in standard mode creates new levels of complex geometry.

graphics/02fig67.gif

Keep in mind that it is best to add only the details that will not be animated to the subdivision surface skin levels. These include details such as a belly button, nostrils, and skin irregularities, such as small wrinkles and bumps. The reason for this is that it is more efficient to deform and animate your original polygon skin. Later you are shown how to connect the polygon proxy node of your subdivision surface skin to the original polygon skin with a wrap deform or a blend shape. This enables you to animate the lower-resolution polygon skin and use it to deform and render the smooth subdivision surface skin for the final output. Doing this requires you to separate the essential details that will deform, such as muscles, from the incidental surface details that will not need to deform.

As you are refining your subdivision surface skin, you may notice that you cannot undo after subdividing an area. If you crease the surface, for instance, you can undo the crease; however, the subdivisions that were created by the crease remain on the surface. To remove extra subdivisions that are not being used to add details to the skin, choose Subdiv Surfaces, Clean Topology. Although you can work on half of a character when modeling with subdivision surface, do not duplicate and scale 1 in X to mirror the result as you did with NURBS surfaces. Instead, use the Mirror option in the Subdivision Surface menu, and then merge the result with the Attach option in the same menu.

Exercise 2.4
Convert Your NURBS Skin to a Polygon Skin

This exercise takes you through converting your NURBS skin to a merged polygon skin. You can then use edge loops to add surface details to your character. Finally, you duplicate the polygon skin to create a smooth subdivision surface skin that has the same basic structure.

  1. Before converting, make sure the normals are going in the right direction on all the NURBS patches. Drag a selection box around all the patches and choose Display, NURBS Components, Surface Origins. Make sure all the blue lines are pointing outward on the surfaces. If a blue line is pointing inward, select the surface and choose Edit NURBS, Reverse Surface Direction graphics/shadebox1.gif. Choose the option that will make the patch have the same orientation and normals direction as the patches surrounding it. You can do this by just applying Swap, but it may require several combinations. When the normals are correct, select all the patches again and choose Modify, Convert, NURBS to Polygons graphics/shadebox1.gif. Set the options to Quads type, General Tessellation method with Per Span # of Iso Params set to a value of 1 for both the U and V. Leave all the other options turned off, and click the Tessellate button. In the perspective view's menu bar, turn off NURBS Surfaces under the Show menu. You should then be able to see the new polygon patches that have the same number of edges as the NURBS patches have isoparms. Recheck the normals on the new polygons objects before combining them. Do this by choosing Display, Polygon Components, Short Normals. If the normals are still pointing in the wrong direction on any of the polygon objects, select the object(s) and choose Edit Polygons, Normals, Reverse graphics/shadebox1.gif. In the options box, make sure you are only reversing, and not extracting, and click the Reverse Normals button. If you are getting any shading anomalies on the polygons, you can fix this by choosing Edit Polygons, Normals, Set to Face.

  2. Then combine the polygon objects that should be one continuous body part, such as all the pieces of your character's head. Remember that it is not usually desirable to merge all the parts of the character into one large skin. You should instead create separate skins for the head, torso, hands, and legs (see Figure 2.68). To do this with your converted head polygons, for example, select them and choose Polygons, Combine. Then choose Display, Polygon Components, Border Edges to display the edges that are not merged. Merge the edges by choosing Edit Polygons, Merge Vertices graphics/shadebox1.gif, setting the Distance value to .01, and then click the Merge Vertex button. If any internal border edges remain, choose Edit Polygons, Merge Edge Tool to fix them. Click the overlapping border edges twice so that they turn orange, and press the Enter key to merge. If there are any edges that still won't merge, check the normals again, and reverse on a per-face basis if necessary.

    2.68. Combine your polygon skin into several body parts, but don't merge them all into one single skin.

    graphics/02fig68.gif

  3. Add details to your skins by using the Split Poly tool to create wrinkles, muscles, and surface irregularities. Keep your polygon skins all quads by using edge-looping techniques as described earlier in this section. Create only as much detail as you need for animation on your polygon skins. Leave extraneous surface details for doing on the subdivision surface skin, where you can create it on nondeforming levels. When finished, duplicate your polygon skins and convert the duplicates to subdivision surfaces. If you get a conversion error, check the Script Editor to find out how to fix it. Usually it is just a matter of increasing your conversion option values, or doing a Polygon, Cleanup to fix nonmanifold geometry problems. As detailed previously, you can connect the original polygon skins to the polygon proxy node of the subdivision surface skins to make final adjustments to your polygon models. This will enable you to counteract any loss of detail on the subdivision surface skin due to the smoothing operation. After making adjustments on the polygon proxy node, remove the connection by switching to standard mode, and continue to refine surface details on the levels of the subdivision surface node. Make sure that you keep the polygon proxy the same as the original polygon model, so that they can easily be connected with a wrap deform when you get to the animation stage.



Maya Character Creation. Modeling and Animation Controls
Maya Character Creation: Modeling and Animation Controls
ISBN: 0735713448
EAN: 2147483647
Year: 2003
Pages: 75
Authors: Chris Maraffi

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net