Creating 3D models in computer graphics is an art form and a discipline unto itself. It takes years to master and requires an understanding of form, composition, anatomy, mechanics, gesture, and so on. It's an addictive art that never stops evolving. This chapter and Chapter 4 will introduce you to the different ways the tools in Maya can be applied to various modeling tasks. With a firm understanding of how the tools work, you can master the art of creating 3D models.
Together, Chapters 3 and 4 demonstrate various techniques for modeling with NURBS, polygons, and subdivision surfaces to create a single model of a woman in a space suit. Chapter 3 begins with using NURBS surfaces to create a detailed helmet for the space suit.
In this chapter you will learn to:
The example used in this chapter is based on a design created by Chris Sanchez. Chris is a professional concept artist and designer working in film production at Prologue Films in Venice, California. For this book I asked Chris to design a character in an environment suit that is heavily detailed and stylish in the hope that as many modeling techniques as possible could be demonstrated using a single project. Figure 3.1 shows Chris's drawing.
It's not unusual in the fast-paced world of production to be faced with building a model based on a single view of the subject. You're also just as likely to be instructed to blend together several different designs. You can safely assume that the concept drawing you are given has been approved by the director. It's your responsibility to follow the spirit of that design as closely as possible, with an understanding that, at the same time, the technical aspects of animating and rendering the model may force you to make some adjustments. Some design aspects that work well in a two-dimensional drawing don't always work as well when translated into a three-dimensional model.
The best way to start is to create some orthographic drawings based on the sketch. You can use these as a guide in Maya to ensure that the placement of the model's parts and the proportions are consistent. Sometimes the concept artist creates these drawings for you; sometimes you need to create them yourself (sometimes you may be both the modeler and the concept artist). When creating the drawings, it's usually a good idea to focus on the major forms, creating bold lines and leaving out most of the details. A heavily detailed drawing can get confusing when working in Maya. You can always refer to the original concept drawing as a guide for the details. Since there is only one view of the design, some parts of the model need to be invented for the three-dimensional model. The orthographic drawings for this project are shown in Figure 3.2.
After you create the orthographic drawings, your first task is to bring them into Maya and apply them to image planes.
Image planes are often used as a modeling guide. They are attached to the cameras in Maya and have a number of settings that you can adjust to fit your own preferred style.
Create a new scene in Maya.
Switch to the side view. From the View menu in the viewport panel, choose Image Plane
The side view opens and appears in the viewport. Select the side camera in the Outliner and open the Attribute Editor. Switch to the imagePlane1 tab (see Figure 3.4).
In the Image Plane Attributes section, you'll find controls that change the appearance of the plane in the camera view. Make sure the Display option is set to In All Views. This way, when you switch to the perspective view, the plane will still be visible.
You can set the Display mode to RGB if you want just color or to RGBA to see color and alpha. The RGBA option is more useful when the image plane has an alpha channel and is intended to be used as a backdrop in a rendered image as opposed to a modeling guide. There are other options such as Luminance, Outline, and None.
The Color Gain and Color Offset sliders can be used to change the brightness and contrast. By lowering the Color Gain and raising the Color Offset, you can get a dimmer image with less contrast.
The Alpha Gain slider adds some transparency to the image display. Lower this slider to reduce the opacity of the plane.
When modeling you'll want to set Image Plane to Fixed so the image plane does not move when you change the position of the camera. When using the image plane as a renderable backdrop, you may want to have the image attached to the camera.
Other options include using a texture or an image sequence. An image sequence may be useful when you are matching animated models to footage.
In the Placement Extras settings, you can use the Coverage sliders to stretch the image. The Center options allow you to offset the position of the plane in X, Y, and Z. The Height and Width fields allow you to resize the plane itself. In the Center options, set the Z file to −1.8 to slide the plane back a little.
Switch to the front camera, and use the View menu in the viewport to add another image plane. Import the spaceGirlFront.tif
image.
By default both image planes are placed at the center of the grid. To make modeling a little easier, move them away from the center. Set the Center X attribute of the side-view image (imagePlane1) to −15 and the Center Z attribute of the front-view image (imagePlane2) to −12. In the perspective view, you'll see that the image planes are no longer in the middle of the grid (see Figure 3.5).
During the course of a modeling session, you may want to turn the image planes on and off quickly without taking the time to open the Attribute Editor for each and change the settings. To make things more convenient, you can put each plane on its own display layer.
Create a display layer in the Display Layer Editor and name it frontView. Select the image plane for the front view in the perspective window (drag a selection across the edge of the plane in the perspective view).
In the Display Layer Editor, right-click on the front-view layer and choose Add Selected Object. You can now toggle the visibility of the front view by clicking the V button for the layer in the Display Layer Editor.
Repeat steps 1 and 2 for the side-view image plane, and then name the new layer sideView (see Figure 3.6).
Save the scene as spaceGirl_v01.ma
. To see a finished version of the scene, open spaceGirl_v01.ma
from the chapter3scenes
directory.
NURBS is an acronym that stands for Non-Uniform Rational B-Spline. A NURBS surface is created by spreading a three-dimensional surface across a network of NURBS curves. The curves themselves involve a complex mathematical computation that, for the most part, is hidden hidden from the user in the software. As a modeler you need to understand a few concepts when working with NURBS, but the software takes care of most of the advanced mathematics so that you can concentrate on the process of modeling.
Early in the history of 3D computer graphics, NURBS were used to create organic surfaces and even characters. However, as computers have become more powerful and the software has developed more advanced tools, most character modeling is accomplished using polygons and subdivision surfaces. NURBS are more ideally suited for hard-surface modeling; objects such as vehicles, equipment, and commercial product designs benefit from the types of smooth surfacing produced by NURBS models.
All NURBS objects are automatically converted to triangular polygons at render time by the software. You can determine how the surfaces will be tessellated (converted into polygons) before rendering and change these settings at any time to optimize rendering. This gives NURBS the advantage that their resolution can be changed when rendering. Models that appear close to the camera can have higher tessellation settings than those farther away from the camera.
One of the downsides of NURBS is that the surfaces themselves are made of four-sided patches. You cannot create a three- or five-sided NURBS patch, which can sometimes limit the kinds of shapes you can make with NURBS. If you create a NURBS sphere and use the Move tool to pull apart the control vertices at the top of the sphere, you'll see that even the patches of the sphere that appear as triangles are actually four-sided panels (see Figure 3.7).
To understand how NURBS works a little better, let's take a quick look at the basic building block of NURBS surfaces: the curve.
Figure 3.7. Pulling apart the control vertices at the top of a NURBS sphere reveals that all of the patches have four sides.
All NURBS surfaces are created based on a network of NURBS curves. Even the basic primitives, such as the sphere, are made up of circular curves with a surface stretched across them. The curves themselves can be created several ways. A curve is a line defined by points. The points along the curve are referred to as curve points. Movement along the curve in either direction is defined by its U coordinates. When you right-click on a curve, you can choose to select a curve point. The curve point can be moved along the U direction of the curve, and the position of the point is defined by its U parameter.
Curves also have edit points that define the number of spans along a curve. A span is the section of the curve between two edit points. Changing the position of the edit points changes the shape of the curve; however, this can lead to unpredictable results. It is a much better idea to use a curve's control vertices to edit the curve's shape.
Control vertices (CVs) are handles used to edit the curve's shapes. Most of the time you'll want to use the control vertices to manipulate the curve. When you create a curve and display its CVs, you'll see them represented as small dots. The first CV on a curve is indicated by a small box; the second is indicated by the letter U. The various components are displayed in Figure 3.8.
Figure 3.8. The top image shows a selected curve point on a curve, the middle image shows the curve with edit points displayed, and the bottom image shows the curve with control vertices (CVs) displayed.
The degree of a curve is determined by the number of CVs per span minus one. In other words, a 3-degree (or cubic) curve has four CVs per span. A 1-degree (or linear) curve has two CVs per span (Figure 3.9). Linear curves have sharp corners where the curve changes directions; curves with two or more degrees are smooth and rounded where the curve changes direction. Most of the time you'll use either linear (1-degree) or cubic (3-degree) curves.
You can add or remove a curve's CVs and edit points, and you can also use curve points to define a location where a curve is split into two curves or joined to another curve.
Parameterization of a curve refers to the way in which the points along the curve are numbered. There are two types of parameterization: uniform and chord length. A curve with uniform parameterization has its points evenly spaced along the curve. The parameter of the last edit point along the curve is equal to the number of spans in the curve. You also have the option of specifying the parameterization range between 0 and 1. This method is available to make Maya more compatible with other NURBS modeling programs.
Chord length parameterization is a proportional numbering system that causes the length between edit points to be irregular. The type of parameterization you use depends on what you are trying to model. Curves can be rebuilt at any time to change their parameterization; however, this will sometime change the shape of the curve.
You can rebuild a curve to change its parameterization (Edit Curves
NURBS surfaces follow many of the same rules as NURBS curves since they are defined by a network of curves. A primitive, such as a sphere or a cylinder, is simply a NURBS surface lofted across circular curves. You can edit a NURBS surface by moving the position of the surface's CVs (see Figure 3.10). You can also select the hulls of a surface, which are groups of CVs that follow one of the curves that define a surface (see Figure 3.11).
NURBS curves use the U coordinates to specify the location of a point along the length of the curve. NURBS surfaces add the V coordinate to specify the location of a point on the surface. So, a given point on a NURBS surface has a U coordinate and a V coordinate. The U coordinates of a surface are always perpendicular to the V coordinates of a surface. The UV coordinate grid on a NURBS surface is just like the lines of longitude and latitude drawn on a globe.
Figure 3.10. The shape of a NURBS surface can be changed by selecting its CVs and moving them with the Move tool.
Figure 3.11. A hull is a group of connected CVs. Hulls can be selected and repositioned using the Move tool.
Just like NURBS curves, surfaces have a degree setting. Linear surfaces have sharp corners, and cubic surfaces (or any surface with a degree higher than 1) are rounded and smooth (see Figure 3.12). Oftentimes a modeler will begin a model as a linear NURBS surface and then either rebuild it as a cubic surface later on (Edit NURBS
You can start a NURBS model using a primitive, such as a sphere, cone, torus, or cylinder, or you can build a network of curves and loft surfaces between the curves or any combination of the two. When you select a NURBS surface, the wireframe display shows the curves that define the surface. These curves are referred to as isoparms, which is short for isoparametric curve.
NURBS surfaces have implicit UV texture coordinates. This means that the UVs are not mapped as a separate process, as is the case with polygon models; rather the texture coordinates are defined by the parameterization of the surface itself. This offers less flexibility in the way textures are mapped on the surface, but at the same time you don't need to worry about creating a UV coordinate map once the model is complete.
A single NURBS model may be made up of numerous NURBS patches that have been stitched together. This technique was used for years to create CG characters. When you stitch two patches together, the tangency must be consistent between the two surfaces to avoid visible seams. It's a process that often takes some practice to master (see Figure 3.13).
Many NURBS primitives have a seam where the end of the surface meets the beginning. Imagine a piece of paper rolled into a cylinder. At the point where one end of the paper meets the other there is a seam. The same is true for many NURBS surfaces that define a shape. When you select a NURBS surface, the wireframe display on the surface shows the seam as a bold line. You can also find the seam by selecting the surface and choosing Display
Figure 3.14. The point on a NURBS surface where the seams meet is indicated by displaying the Surface Origins.
The seam can occasionally cause problems when you're working on a model. In many cases, you can change the position of the seam by selecting one of the isoparms on the surface (right-click on the surface and choose Isoparms) and selecting Edit NURBS
You can change the quality of the surface display in the viewport by selecting the surface and pressing 1, 2, or 3 on the keyboard. Pressing the 1 key displays the surface at the lowest quality, which makes the angles of the surface appear as corners. Pressing the 3 key displays the surface as smooth curves. The 2 key gives a medium-quality display. None of these display modes affect how the surface will look when rendered, but choosing a lower display quality can help improve Maya's performance in heavy scenes. The same display settings apply for NURBS curves as well. If you create a cubic curve that has sharp corners, remember to press the 3 key to make the curve appear smooth.
To start the model of the space girl, begin by creating the helmet from a simple NURBS sphere.
Continue with the scene from the previous section or open the spaceGirl_v01.ma
scene from the chapter 3scenes
folder on the DVD. Make sure the images are visible on the image planes. The source files for these images are found in the chapter3sourceimages
folder.
Choose Create
In the Channel Box for the sphere, click the makeNurbsSphere1 node. If this node is not visible in the Channel Box, you need to enable Construction History and remake the sphere. Construction History needs to be on for this lesson. Make sure Sections is set to 8 and Spans is set to 4.
Switch to the side view, select the sphere, and move it up along the Y axis so it roughly matches the shape of the helmet in the side view (see Figure 3.15). Enter the following settings in the Channel Box:
Translate X: 0
Translate Y: 9.76
Translate Z: 0.845
Rotate X: 102
Rotate Y: 0
Rotate Z: 0
Scale X: 2.547
Scale Y: 2.547
Scale Z: 2.547
To see the sphere and the reference, you can enable X-ray mode in the side view (Shading
Figure 3.15. A NURBS sphere is created and positioned in the side view to match the drawing of the helmet.
To create a separate surface for the glass shield at the front of the helmet, you can split the surface into two parts.
Right-click on the sphere and choose Isoparm. An isoparm is a row of vertices on the surface; sometimes it's also referred to as knots. Select the center line that runs vertically along the middle of the sphere.
Drag the isoparm forward on the surface of the sphere until it matches the dividing line between the shield and the helmet in the drawing (see Figure 3.16).
Choose Edit NURBS
Select the front surface, and scale down and reposition it so that it matches the drawing. Enter the following settings in the Channel Box:
Right-click on the rear part of the sphere and choose Control Vertex. You'll see the CVs of the helmet highlighted. Drag a selection marquee over the vertices on the back, and switch to the Move tool (hot key = w).
Use the Move tool to position these vertices so they match the contour of the back of the helmet. Select the Scale tool (hot key = r) and scale them down by dragging on the blue handle of the Scale tool. Adjust their position with the Move tool so the back of the helmet comes to a rounded point.
Select the group of vertices at the top of the helmet toward the back (third isoparm from the left), and use the Move tool to move them upward so that they match the contour of the helmet.
Select the group of vertices at the bottom of the helmet along the same isoparm. Move these upward to roughly match the drawing (see Figure 3.18).
Rename the back portion helmet.
Save the scene as helmet_v01.ma
. To see a version of the scene to this point, open the helmet_v01.ma
scene from the chapter 3scenes
directory on the DVD.
A loft creates a surface across two or more selected curves. It's a great tool for filling gaps between surfaces or developing a new surface from a series of curves. In this section, you'll bridge the gap between the helmet and shield by lofting a surface.
Continue with the scene from the previous section or open the helmet_v01.ma
scene from the chapter 3scenes
folder on the DVD.
Switch to the side view. Right-click on the helmet surface and choose Isoparm. Select the isoparm at the open edge of the surface.
Right-click on the helmet's shield and choose Isoparm. Hold down the Shift key and select the isoparm at the edge of the surface so you have a total of two isoparms selected: one at the open edge of the helmet and the other at the open edge of the shield (sometimes this takes a little practice).
Select Surfaces
Figure 3.19. The options for the loft surface. Once created, the loft bridges the gap between the helmet and the shield.
By setting Surface Degree to Linear, you can create the hard-edge ridge detail along the helmet's seal depicted in the original drawing.
In the side view, zoom in closely to the top half of the loft. Right-click on the Loft and choose Hull.
Select the second hull from the left and choose the Move tool (hot key = w). Open the options for the Move tool, and set the Move Axis to Normals Average so you can easily move the hull back and forth relative to the rotation of the helmet.
Move the hull forward until it meets the edge of the shield (see Figure 3.20).
Using the up-arrow key, select the next hull in from the left. Move this hull toward the back to form a groove in the loft.
Use the Scale and Move tools to reposition the hulls of the loft to imitate some of the detail in the drawing.
Turn off the visibility of the image planes layers and disable X-ray mode so you can see how the changes to the loft look. Switch to the perspective mode and examine the helmet (see Figure 3.21).
Figure 3.21. The ridges in the surface between the helmet shield and the helmet are created by moving and scaling the hulls of the lofted surface.
As long as the construction history is preserved on the loft, you can make changes to the helmet's shape, and the loft will automatically update. If you take a close look at the original concept sketch, it looks as though the front of the helmet may not be perfectly circular. By making a few small changes to the helmet's CVs, you can create a more stylish and interesting shape for the helmet's shield.
Select the helmet and the shield but not the loft. Switch to component mode. The CVs of both the helmet and the shield should be visible.
Select the four CVs at the bottom center of the shield and the four CVs at the bottom of the helmet. In the options for the Move tool, make sure the Move Axis is still set to Normals Average. Switch to the side view, and use the Move tool to pull these forward toward the front of the helmet.
Switch to the Rotate tool, and drag upward on the red circle to rotate the CVs on their local X axis. Switch back to the Move tool, and push along the red arrow to move them backward slightly.
These changes will cause some distortion in the shape of the shield and the loft. You can adjust the position of some of the CVs very slightly to return the shield to its rounded shape. Select the CVs from the side view by dragging a selection marquee around the CVs— so that the matching CVs on the opposite side of the X axis of the helmet are selected as well (as opposed to just clicking on the CVs). Use the move tool to adjust the position of the selected CVs.
Keep selecting CVs, and use the Move tool to reposition them until the distortions in the surface are minimized. Remember, you are only selecting the CVs of the helmet and shield, not the CVs of the lofted surface in between (remember to save often!).
This is the hardest part of NURBS modeling, and it does take practice, so be patient as you work. Figure 3.22 shows the process. Figure 3.23 shows the reshaped helmet and shield from the perspective view.
Save the scene as helmet_v02.ma
. To see a version of the scene to this point, open the helmet_v02.ma
scene from the chapter3scenes
directory.
You can use one NURBS object to model another. Using a bit of ingenuity, you can find ways to create interesting shapes by carving a NURBS surface with a second surface. In this section, you'll prepare the helmet in order to create an opening at its bottom so the space girl can fit the helmet around her head.
Continue with the scene from the previous section, or open the helmet_v02.ma
scene from the chapter3scenes
directory.
Create a new NURBS sphere. Position the sphere so it intersects the bottom of the helmet, and scale it in size so it covers most of the bottom of the helmet. Use the following settings in the Channel Box:
Translate X: 0
Translate Y: 8.491
Translate Z: −1.174
Scale X: 1.926
Scale Y: 2.671
Scale Z: 2.834
Select the helmet, and then Shift+click the sphere. Choose Edit NURBS
In the viewport you'll see a new curve created on the helmet. Select the sphere you created for the intersection and hide it (Ctrl+h). You can see the curve drawn on the bottom of the helmet (see Figure 3.25).
Because of the helmet's construction history, if you move either sphere of the helmet, the curve will change positions. The curve on the surface can be selected and moved as well using the Move tool. As you reposition the curve on the surface, it will remain attached to the surface.
When you trim a surface, you cut a hole in it. This does not actually delete parts of the surface; rather it makes the parts invisible as if they had been deleted. This is one way to get around the fact that NURBS surfaces must consist of only four cornered patches. To trim a surface, you must first create a curve on the surface, as demonstrated in the previous section.
Undo any changes made to the position of the two surfaces or the curve on the surface.
Select the helmet and choose Edit NURBS
The Trim tool indicates which parts of the surface you want to remain visible when the Trim operation is completed. Use the tool to click on several parts of the helmet, but not within the area defined by the curve on the surface.
Wherever you click, a marker indicates the parts of the surface that will remain visible. When you have created five or six markers, press the Enter key to trim the helmet. A hole will appear at the bottom of the helmet. If it does not work, click Undo and try again (see Figure 3.26).
Figure 3.26. The Trim tool allows you to indicate which parts of the surface will remain visible when you execute the Trim operation.
Just like with the curve on the surface, as long as the construction history is maintained for the surface, any changes you make to the intersecting spheres or the curve on the surface will change the position and shape of the hole in the helmet. You can animate the intersecting sphere to make the hole change size and shape over time; however, be aware that some changes may cause errors.
The edge of the trimmed surface can be used as a starting point for lofts or other NURBS surface types.
Right-click on the helmet and choose Trim Edge. This option appears only for trimmed surfaces (see Figure 3.27).
Select the trim edge (it should turn yellow when selected), and choose Edit Curves
Select the new curve and choose Modify
Use the Move tool to position duplicateCurve1 below the helmet. Scale it up in size a little as well. Use these settings:
Translate X: 0
Translate Y: −0.174
Translate Z: 0
Scale X: 1.275
Scale Y: 1.275
Scale Z: 1.275
With the curve selected, tumble the view so you can clearly see the bottom of the helmet. Right-click on the helmet and choose Trim Edge. Shift+click the trim edge at the bottom of the helmet so both the duplicate curve and the trim edge are selected.
Choose Surfaces
Right-click on the new lofted surface and choose Hull. Use the Move and Scale tools to change the position and size of the hulls to create a couple grooves in the loft. This technique is similar to the one used to add detail to the loft between the helmet and the shield (see Figure 3.29).
Save the scene as helmet_v03.ma
. To see a version of the scene to this point, open the helmet_v03.ma
scene from the chapter 3scenes
folder on the DVD.
There are several ways to create NURBS surfaces by extruding from a curve. In this section, you'll see how these methods can be applied to create the lamps on the helmet and some of the other details.
Continue with the scene from the previous section, or open the helmet_v03.ma
scene from the chapter3scenes
directory.
Create a NURBS sphere. Switch to the front view. Select the sphere, and use the Move and Scale tools to translate and scale the sphere so that it matches the lamp on the right side of the helmet. Use the following settings:
Translate X: 2.175
Translate Y: 11.785
Translate Z: 1.621
Rotate X: 90
Rotate Y: 0
Rotate Z: 0
Scale X: 0.518
Scale Y: 0.176
Scale Z: 0.518
From the side view, select the center isoparm, and choose Edit NURBS
Select the rear part of the sphere and name it reflector. Scale it up slightly and move it forward (see Figure 3.30.).
Select the front of the sphere and name it lamp. Create a loft to fill the gap between the lamp and the reflector. In the Loft Options, set Number Of Spans to 1.
Select the isoparm at the edge of the reflector, and choose Edit Curves
Move the curve back along the Z axis a little, and scale it up. Figure 3.31 shows the duplicated curve at its new position.
Select the curve and choose Surfaces
The distance extrude is the simplest type of extrusion you can create and requires only a single profile curve. To create the rounded surface between the helmet and the shield, you can use a profile curve extrusion. This requires two curves.
Right-click on the loft between the helmet and choose Isoparm. Select one of the isoparms that run around the loft at the edge, and drag it back toward the center of the loft.
Choose Edit Curves
With the curve selected, choose Modify
Switch to the top view and turn on Wireframe. To get a clear view of the grid, choose (from the viewport menu) Show
Turn on Grid Snapping and create a NURBS curve (Create
Click on the grid point one unit below the center; then click twice on the grid point one unit down and two units to the right of center. Finish the curve by clicking on the grid point two units to the right of center. Press the Enter key to complete the curve.
Scale the curve down to 0.12 units in X, Y, and Z.
Turn off Grid Snapping, and right-click on the curve. Select Control Vertex. Select the CV at the center of the line, and pull it down slightly to create a small arch in the curve (see Figure 3.34).
In the Outliner, select the newly created curve and Ctrl+click the curve created from the loft (make sure you Ctrl+click the second curve; Shift+click may produce different results). Choose Surfaces
Figure 3.34. A curve is drawn on the grid from the top view using Grid Snapping. It's then scaled down and shaped by pulling a CV.
Figure 3.35. A surface is created by extruding a profile curve along a path that surrounds the seal between the glass shield and the helmet.
At the front of the helmet, you'll see a rounded tube surrounding the border of the helmet's shield. You can adjust the position of the duplicate curve and the position and shape of the profile curve to refine the shape of the extrusion.
To refine the shape of the extruded surface you can scale and reposition duplicateCurve3 (the path curve) and also scale and rotate curve1 (the profile curve you drew on the grid) along its Y axis about 45 degrees. Name the new surface shieldSeal2.
Save the scene as helmet_v04.ma
. To see a version of the helmet to this point, open the helmet_v04.ma
scene from the chapter3scenes
directory on the DVD.
A fillet surface is another method for bridging gaps between surfaces. You can create one to bridge the gap between the lamp and its housing.
Continue with the scene from the previous section, or open the helmet_v04.ma
scene from the chapter3scenes
directory on the DVD.
Select the isoparms at the edge of the reflector and the lamp housing.
From the Surfaces menu, choose Edit NURBS
The freeform fillet creates a smooth, rounded surface between the two surfaces. Select the freeformFiletSurface1 node and open the Channel Box.
Set the Depth to 0.8 and the Bias to −0.8. The Depth adjusts the curvature of the surface and the Bias moves the influence of the curvature toward one end or the other of the fillet (see Figure 3.36).
Next you'll add some additional fillets to the lamp housing to create more detail.
Select the isoparms at both ends of the lamp housing. Choose Edit NURBS
Select the four newly created isoparms, and choose Edit Curves
Select the four curves and center their pivots (Modify
Create two lofts between the two pairs of curves. Make sure the lofts are cubic, and give them both two section spans.
Create a freeform fillet by choosing an isoparm at the front edge of the front loft and an isoparm on the lamp housing just ahead of the loft. Choose Edit NURBS
Repeat step 9 three more times to create fillets between the other edges of the two lofts and the lamp housing (see Figure 3.38).
Right-click on each loft and choose Hulls. Shift+click the outside hulls on the top of both lofts, and use the Move tool to pull them upward.
Switch to the Scale tool, and scale them along the X axis to flatten the tops of the lofts.
Shift+click the top-center hull on both lofts, and use the Move tool to pull them all down, closer to the housing.
Switch to the Rotate tool. Rotate the hulls along the X axis to give them a slight angle. Experiment with the shape of these surfaces by continuing to translate, rotate, and scale the hulls of the lofted surfaces. Because of construction history, the freeform fillet surfaces will update. You can also make changes by editing the curves duplicated from the lamp housing isoparms in step 5.
Select all the surfaces that make up the lamp and housing, the lofts, and the fillets. Delete history on these surfaces, and group them. Name the group leftLamp (it's on the character's left). Delete all the associated curves (see Figure 3.39).
Select the leftLamp group and choose Edit
Save the scene as helmet_v05.ma
. To see the scene up to this point, open the helmet_v05.ma
scene from the chapter3scenes
directory on the DVD.
A rail surface uses at least one profile curve and two rail curves to create a surface.
Continue with the scene from the previous section or open the helmet_v05.ma
scene from the chapter3scenes
directory on the DVD.
Select the leftLamp and rightLamp groups and hide them (hot key = Ctrl+h). Switch to the side-view camera. Switch to wireframe mode (hot key = 4).
Choose Create
Switch to the front view. Select the curve and choose Modify
Press the d key on the keyboard to switch to pivot mode. Pull down on the Y axis of the Move tool. Reposition the pivot so that, from the front view, it is aligned with the center of the helmet's shield (see Figure 3.42).
Switch to the Rotate tool (hot key = e). Rotate the curve −14 degrees on the Z axis.
Duplicate the curve (hot key = Ctrl+d) and rotate the duplicate −29 degrees on the Z axis.
Scale the duplicate curve to 0.95 on the Y axis. These two curves will become the rails for the birail surface.
Switch to the perspective view and turn shading mode back on.
Turn on Curve Snapping and select the EP Curve tool (Create EP Curve Tool). This will allow you to create a curve by clicking just twice.
Click on the first rail curve, and drag toward the end to make the first point of the curve.
Click on the second rail curve and drag toward its end (toward the back of the helmet) to make the second point of the curve. This might be easier to do if you rotate the view so the curves are not overlapping the surfaces. This helps avoid a situation in which Curve Snapping places one of the points of the EP curve on one of the isoparms of a visible surface (see Figure 3.43).
Select the curve between the two rails, choose Edit Curves
Select the new curve and switch to component mode. Turn Curve Snapping off. Use the Move tool to drag some of the CVs to shape the profile. The profile will be swept along the curves to create grooves, similar to the detail on the top of the helmet in the drawing. You can keep it simple for now and add additional detail later.
To create the birail, choose Surfaces
You can change the shape of the surface by editing the position of the CVs on the profile curve. Be careful not to change the position of the rail curves. If the three curves no longer touch, the surface will disappear.
To make changes to the surface, select it, delete history, and then edit the surface by selecting the hulls and moving them with the Move tool.
When you're happy with the basic shape of the birail, select it and choose Duplicate Special
Create a loft between the two inside edges of the birail surface. The loft should have nine divisions.
Use the Move tool to position the hulls of the loft to create the three curving bumps as shown in the concept sketch (see Figure 3.47). Select the surface and choose Edit
Save the scene as helmet_v06.ma
.
To create the back of the helmet, you can loft a surface across multiple profile curves.
Continue with the scene from the previous section or open the helmet_v06.ma
scene from the chapter3scenes
directory on the DVD.
Right-click on the rear of the housing for the leftLamp; select Isoparms. Select the isoparm at the very back end of the housing.
Choose Edit Curves
Choose Edit
Select the first duplicate curve and chose Edit
Starting from the helmet's left side, Shift+click each of the duplicate curves (this may be easier to do if you hide the NURBS surfaces using the Show menu in the panel menu bar). Choose Surfaces
When the loft is created (turn the visibility of NURBS surfaces back on to see the loft), right-click on the new surface and choose Control Vertex to switch to component mode. Select pairs of CVSs at the back of the surface, and use the Move tool to reposition them to create a more interesting shape to the surface (Figure 3.48).
Name the new surface helmetRear. When you're happy with the result, save the model as helmet_v07.ma
. To see a version of the scene to this point, open the helmet_v07.ma
scene from the chapter3scenes
directory on the DVD.
When you make a NURBS surface "live," you put it into a temporary state that allows you to draw curves directly on it. This is a great way to add detail that conforms to the shape of the object.
Continue with the scene from the previous section or open the helmet_v07.ma
scene from the chapter3scenes
directory on the DVD.
Make sure that Wireframe On Shaded is enabled, and zoom into the model so you can see the birail surface you created in the previous section.
You're going to add some isoparms to the surface so that drawing clean curves on the surface will be a little easier. The isoparms will act as a guide for the curves that you draw.
Right-click on the birail surface and choose Isoparms. Add two isoparms that run along the length of the birail surface (in the options for Insert Isoparm, make sure Location is set to At Selection).
Add two additional isoparms just outside the isoparms created in step 3.
Add two additional isoparms that run across the surface as shown in the second image in Figure 3.49.
With the birail surface selected, choose Modify
Enable Grid Snapping and choose Create
With Grid Snapping enabled, the points of the curve will be snapped to the isoparms on the surface. Follow the guide in Figure 3.50 to add points to the curve.
Finish the curve by clicking one more time at the point where you started the curve. When you are finished, press the Enter key.
Repeat steps 8 and 9 to add another curve that surrounds the first. Make sure you add the same number of points in the same order and that you close the curve when finished.
To select curves on a surface, turn off Surface Selection in the Selection Mask Options, and select the curves drawn on the surface. Select the outside curve and then Shift+click the inside curve.
Choose Surface
When the loft is created, right-click on it and choose Hulls. Select the three central hulls of the loft. Switch to the Move tool. In the options, set the Axis to Normals Average and pull the hull up to create a raised surface (see Figure 3.51).
To make the birail surface "unlive," you can select it in the Outliner and choose Modify
You can project a curve onto the surface as a way of devising interesting shapes. These shapes can be used for creating details, such as parting lines and seams on the surface.
Switch to the side view and turn on Grid Snapping.
Choose Create
Draw a simple square off to the side of the helmet using the grid as a guide. Use five points to make a complete square.
With the square curve selected, choose Edit Curves
Choose Modify
Turn off Grid Snapping, and switch to the perspective view. Use the Move tool to position the square on the helmet's left, as shown in Figure 3.52
Switch back to the side view. Make sure the square curve is overlapping the helmetRear surface. Select the curve and the helmetRear surface. Choose Edit NURBS
Switch to the perspective view again. You'll see the curve projected onto the back part of the helmet; it wraps around the surface. Any change you make to the square curve will change the shape of the curve on the surface.
Select the square projection curve and use the Move, Rotate, and Scale tools to reposition the curve until the projection resembles something like the projection shown in Figure 3.53.
Figure 3.53. The projected square curve is moved, scaled, and rotated. This changes the shape of the projected curve on the surface.
To create a raised panel from the curve on the surface, you'll trim the surface. You'll need two copies of the surface: one that has the hole and the other that has the raised portion of the surface.
Select the helmetRear surface, and choose Edit
In the perspective view, move the duplicate surface in X about −5 units. There is still a history connection between the curve and the curve on the surface for both copies of the surface, so try not to move the duplicate along any axis but X.
Select the original surface and choose Edit NURBS
Repeat step 12 for the duplicate surface; however, place the trim markers only in the area defined by the projected curve. You should be left with just the piece defined by the projected curve (Figure 3.54).
Select both copies of the helmetRear surfaces, and choose Edit
Center the pivot of panelTop. Set its Translate X back to 0, and position it just above the opening in the helmetRear surface. Scale it down just slightly (see Figure 3.55).
To fill the gaps between the opening and the top of the panel, right-click on the original surface and choose Trim Edge. Select the edge, right-click over the panel top, and choose Trim Edge, and then Shift+click the second trim edge. You can then use a freeform fillet to close the gap (Edit NURBS
Take few minutes to rename the surfaces in the Outliner with descriptive names. Group the surfaces accordingly and delete history. Delete all of the curves created while modeling. Figure 3.57 shows how I have organized the surfaces in my version of the scene.
Save the scene as helmet_v08.ma
. To see a version of the helmet to this point, open the helmet_v08.ma
scene from the chapter3scenes
directory on the DVD.
A revolve sweeps a surface generated by a curve around an axis. It's a very versatile modeling technique. In this section, you'll add a sensor to the lamp housing using a revolve operation.
Continue with the scene from the previous section or open the helmet_v08.ma
scene from the chapter3scenes
directory on the DVD.
Switch to a front view and turn on Grid Snapping. Choose Create
You'll start by roughing out the curve on the grid. Using Grid Snapping is a good way to ensure that lines are straight. After the points of the curve are laid out on the grid, you'll turn Grid Snapping off and change their positions to refine the shape of the curve.
Starting from the center line, create a curve that looks like a blocky Y shape. Use Figure 3.58 as a reference. In total, click 14 times to create a 14-point curve. Press the Enter key when you have finished adding points to the curve.
Select the curve and choose Modify
Turn off Grid Snapping and use the Scale tool to scale the curve down to 0.15 in X, Y, and Z.
With the curve selected, choose Surfaces
Zoom in on the surface. Turn off Surface Selection in the Selection Mask Options on the status line. Select the curve and switch to component mode.
Use the Move tool to reposition the CVs of the Curve tool. You want to create a long, thin, mechanical-looking scope.
When you have a basic shape that you like, rename the surface Sensor. Select the revolved surface, center its pivot, and use the Move, Scale, and Rotate tools to position it next to the lamp on the spacesuit's left side; use Figure 3.59 as a guide.
Once you have it roughly in position, you can continue to edit the position of points on the original curve to change its shape. It may be easier to split the Maya interface into two windows. Use a front-view camera to make changes in the curve, and use the perspective camera to see the results of the changes.
Make the sensor extend a fair way toward the back of the helmet, as shown in Figure 3.60.
Deformers are found under the Animation menu set, but they can be very useful as modeling tools. In this section, you'll add a slight bend to the end of the sensor created in the previous section. Small bends and curves created in mechanical parts can add a lot of style and realism to your model.
Select the sensor created in the previous section. Select an isoparm near the end of the tube, and Shift+click an isoparm about halfway down the back of the sensor.
To create a smooth bend at the end of the sensor, add additional isoparms to the surface. Choose Edit NURBS
Switch to the Animation menu set. Select the sensor and choose Create Deformers
To restrict the bend to the back portion of the sensor, set High Bound to 0. The Bounds determine the length of the bend deform.
In the Channel Box, set Rotate Z to −90 so the sensor bends downward. Use the Move tool to move the Bend tool back along its Y axis (see Figure 3.63).
Select the sensor and choose Edit
Group all of the objects in the scene, and name the group Helmet. Delete history and any unused curves and surfaces.
Save the scene as helmet_v09.ma
. To see a version of the scene up to this point, open the helmet_v09.ma scene
from the chapter3scenes
directory on the DVD.
The key to realistic modeling is in the details. Real, manufactured objects have seams, bolts, screws, weather stripping, and rubber gaskets. In any place two surfaces meet, try to create a believable transition using a surface fillet or a loft. By building from curves created on the surface, you can quickly add believable detail. In production, sometimes these details are modeled as part of the surface; sometimes they are created as part of the texture. In this example the details are modeled for the purpose of instruction.
Think about the possible use of the objects you model. In the case of the helmet, think about what parts of the object need to form a tight seal to protect the wearer from the harsh environment of space. Also think about which parts of the helmet may need to be manipulated by a person wearing heavy gloves. Think about things like servos and handles for the mechanical parts on the helmet.
Figures 3.64, 3.65, and 3.66 show the completed NURBS helmet from different views. Open the NURBShelmet.ma
scene from the chapter3scene
directory on the DVD, and examine the model to see if you can figure out the techniques that were used to make it. All of the techniques used are just variations of the ones described in this section.
While working with NURBS surfaces, you may see small gaps or areas around the trim edge that do not precisely follow the curve. This is due to the settings found in the NURBS Display section of the surface's Attribute Editor. These settings adjust how the NURBS surfaces appear while working in Maya. They do not necessarily represent how the object will look when rendered. By increasing the precision of the NURBS surface display, you may find that the performance of Maya on your machine suffers. It depends on the amount of RAM and your machine's processor speed. The main thing to keep in mind is that changing these settings will not affect how the surface looks when rendered.
To preview how the surface will look in the render, you can enable Display Render Tessellation in the Tessellation rollout of the surface's Attribute Editor. A wireframe will appear on the surface, which represents the arrangement of triangles that will be used when the surface is converted to polygons by the renderer (note that the surface will remain as NURBS in the scene when you render).
Using the Tessellation settings found in the Simple or Advanced Tessellation Options, you can determine how the surface will look when rendered (see Figure 3.67). Keep in mind that increasing the precision of the tessellation will increase your render time. You can adjust the settings based on how close an object is to the rendering camera. The triangle count gives you precise numeric feedback on how many triangles a surface will contain based on its tessellation settings. Take a look at the NURBSdisplay.ma
scene in the chapter3scenes
directory on the DVD.
The Advanced Tessellation settings give you even more control over how the object will be tessellated. Keep in mind that Advanced is not always better or appropriate. In some circumstances you may get better results using Simple Tessellation rather than Advanced. It depends on the model and the scene. If you're having problems with the scene, you can experiment using the two methods.
Image planes can be used to position images for use as a modeling guide.
Create image planes for side, front, and top views for use as a model guide.
NURBS surfaces are created by lofting a surface across a series of curves. The curve and surface degree and parameterization affect the shape of the resulting surface.
What is the difference between a 1-degree (linear) surface, a 3-degree (cubic) surface, and a 5-degree surface?
A variety of tools and techniques can be used to model surfaces with NURBS. Hard-surface/mechanical objects are well-suited subjects for NURBS surfaces.
Create a NURBS model of a common object you own such as a cell phone, a computer monitor, or a particle accelerator.
Manufactured objects usually have visible seams and parting lines that reveal how they are put together. Adding these details to your surfaces greatly increases the realism of your objects.
Examine a manufactured object closely, and pay attention to the seams and parting lines. Look at weather stripping on the windows of vehicles; look at the trim around tail lights and openings in the surface. Look at the panels on the underside of electronic products such as a cell phone. Try to imitate these in your models even if the object does not exist in the real world.
You can change how the rendering engine converts a NURBS surface into triangles at render time by adjusting the tessellation of the objects. This can impact render times and increase efficiency in heavy scenes.
Test the tessellation settings on a row of NURBS columns. Compare render times and image quality using different tessellation settings.