Creating Props in Maya 4.5
Simple Prop Models
We'll begin by making a relatively simple prop model from the Parking Spot project. Going through this process a few times should make the process of prop modeling clear. We'll also cover a few modeling techniques.
BigBone
The simplest of the props is the big bone that Spot gets from the pet shop. It's a caricatured bone, meant as a tasty reward for a really good dog to eat, like an oversize Milk-Bone biscuit.
Artwork for such a model is probably unnecessary, so we'll wing it without any drawings.
-
First, create a Maya project called BigBone in which the model files will reside. Most of the standard subdirectories are unnecessary, so create only the Scenes, Shaders, Textures, and Images directories.
NOTE
Although you can select Use Defaults in the New Project dialog window, it can be clearer for simple props to just enter names in the few fields that will be needed. In this case, only the Scenes, Shaders, Textures, and Images directories likely will be needed.
Next, it's time to determine just how big that bone really is. After a few minutes of considering the dog's size, the size of the valve nuts on the nearby fire hydrant, and what the bone might look like in the nearby store window, a size of about 15 inches long by 3 inches wide by 1 inch thick seems about right.
-
Starting in the Front window (assuming that characters will reach out and grab a vertically oriented bone), create half of the bone profile as a uniform NURBS curve using the CV Curve tool (see Figure 1), and adjust its shape until satisfactory. My initial curve is found in the Maya scene BigBoneCurve.ma.
Figure 1 Initial BigBone curve.
Note that the beginning of the curve is on the YZ plane and that the beginning tangent is normal to this plane (that is, parallel to the X-axis). The curve will be revolved about the Z-axis, so we want to avoid a point at the ends of the surface.
The other end of the curve ends at the XY plane (that is, at Z = 0). To make both ends the same, mirror the curve by duplicating it and inverting the scale on the Z-axis (see Figure 2). Join the two ends using the Edit Curves, Attach Curves command with the Blend method selected. The result is a nicely symmetric curve with a classic "bone" shape.
Figure 2 BigBone curve halves joined by the Attach operation.
Revolve this curve to make the initial BigBone surface.
Using the Surface, Revolve tool to create a cubic surface about the Z-axis, you can see that the resulting surface (see Figure 3) looks more like a dumbbell than a bone, but we can fix that.
Figure 3 Initial revolved BigBone surface.
The plan here is to flatten the front and back of this surface to get a shape close to the desired one. So, scale the CVs at the "corners" of the bone (as seen from the Top view), as well as the matching CVs along the midline (see Figure 4). This quickly makes the BigBone into less of a dumbbell and more of a bone.
Figure 4 The first flattening pass in the Top view.
The resulting shape is still too thickat least, at the ends. Flatten the ends some more by selecting just the CVs that protrude too far in Y at the ends and scaling them down in Y until they lie about where those along the shaft do.
This produces a bone surface (see Figure 5) that doesn't bulge out in Y anymore.
Figure 5 Flattened ends on the BigBone surface.
The flattening operations have created some distinct ridges at the front and back of the BigBone surface ends. To remove these, simply select all four of these CVs (two at each end) and scale them down in Z until they are about the level of the next CV row on the bone. Then, because there's now a little hiccup in the mesh caused by bringing our ridge-making CVs close to the untouched CVs near the pole, select these too-near CVs and scale them down a bit, too.
The result (see Figure 6) is getting pretty close to the Milk-Bone shape we initially imagined.
Figure 6 Ridges removed from BigBone surface.
Our BigBone is still a little too oval on its edges, though, so the extreme X-axis CVs in the ends could be scaled in a bit. A little experimentation shows that this ruins the bone-shape profile we created in our initial curve.
A better approach is to take the CVs on either side of the extreme X-axis CVs and scale them out in X. Because this is a surface, this also affects the profile (moving the surface out beyond the curve profile). So, when the edge shape is better, scale in a bit all of the aforementioned CVs until the shape is back at the profile curve (see Figure 7).
Figure 7 Improved end profiles at BigBone ends.
We need to make a similar profile improvement at the top and bottom of the ends. The most extreme Z-axis CVs pull up the ends of the bone, but not enough to match the initial profile anymore. Again, the answer is not to pull up these extreme CVs, but to pull up their neighbors.
First, though, widen these CVs so that they line up in X with the extreme Z CVs. This needn't be exactmerely get reasonably close (see Figure 8).
Figure 8 Lining extreme Z tip CVs on BigBone.
Next, do the vertical adjustments (to better match the bone profile curve) by grabbing the extreme Z CVs and their profile-shaping neighbors and scaling them in Z. This should bring the bone surface shape back into agreement with the profile curve (see Figure 9).
Figure 9 BigBone ends fully improved.
The result is now pretty close to our intended shape, but the dimensions are just a bit off. The bone's a little too wide in the handle, mostly, and maybe a bit short. Fortunately, these are really easy problems to fix.
To slim down the handle, just go to the Front view and grab the CVs along the handle area (there are five rows of CVs there). Scale them down in X until it's more manageable for poor Spot (see Figure 10). Of course, Spot lacks opposable thumbs, so it's all a cheat anyway, but at least it will look more plausible with a slimmer handle.
Figure 10 The BigBone handle slimmed down.
Finally, to get the desired length, just select the CVs for each end and move them in Z. To make the bone the intended 16 inches long, move the end CVs about an inch farther out. Now the basic BigBone is complete (see Figure 11). Set this aside for use before Spot takes a bite out of it (or you can just load up my file, BigBoneMainSurface.ma).
Figure 11 The BigBone main surface completed.
To take the chomp out of it, we'll do a simple NURBS trimming operation.
First, create a curve that describes the shape of the bite mark required. Because this is supposed to somehow work on the valve nuts of the fire hydrant, it's a good idea for the curve to generally matches the shape of the nut itself. Because these nuts are five-sided, create a linear NURBS circle with five sections in the Front view as a template. Draw the curve (see Figure 12) to describe the shape of Spot's bite. Because the curve is intended to look somewhat irregular, yet fairly symmetrical, create it freehand and massage it a bit so that it has a credible dog-induced shape.
Figure 12 Spot's bite curve shape.
Duplicate the bite curve and move it to one side of the bone end, completely outside of the bone surface. Move the original to the other side, and then use Loft to construct a surface between them. In case the interior shape of the bite needs adjusting, create this lofted surface as a cubic surface with two spans (see Figure 13). It's unlikely that we'll fuss over this shape, but it's handy to already have the CVs in place if we do.
Figure 13 Lofted bite surface through the end of BigBone.
With the bone surface and bite surface now passing through one another, use the Intersect Surfaces tool to generate curve-on-surface entities for both surfaces. Then trim the surfaces using the Trim tool and examine the result (see Figure 14).
Figure 14 Result of trimming out the bite in BigBone.
The result looks awfully sharp (and the sharp edges can cause shading difficulties). Undo the intersection results and use the Circular Fillet tool instead. Use a radius of 0.05 inch and enable curve-on-surface creation to achieve a resulting fillet that looks promising. After trimming, it looks just about right (see Figure 15).
NOTE
Circular fillets are constructed by offsetting the two surfaces in their normal directions. If you don't get the fillet in the location you wanted (there are four possible locations), reverse the normal of one or both to produce a fillet in the required location.
Figure 15 Result of filleting the bite in BigBone.
Good enough! The bone won't be seen too closely or for too long, so that'll do. The geometry is ready.
Now group, name, and set the resulting surfaces to a consistent normal direction (in case the shading approach cares about such things). Grouping and naming are straightforward, but to set normal directions, just select the new object (named BigBone now) and open the Attribute spreadsheet. Click the Render tab and set the Double Sided attributes to Off (entering 0 is a handy shortcut). If any surfaces are inside-out (see Figure 16), use the Reverse Surface Direction tool to reverse either U or V (not both) for the offending surfaces. If you don't care to have single-sided surfaces, feel free to set Double Sided back to On (1).
Figure 16 Inconsistent surface normals need to be flipped.
Now it's time to assign a suitable surface shader. If you try to call the shader BigBone, you'll find that the name has already taken (by the object you just named). Shaders and objects share the same namespaces, so use a naming convention that easily distinguishes between them (such as adding a suffix or prefix to all shader names).
With the shader assignment in place (even if the shader details aren't ironed out yet), the model is ready to go (see Figure 17).
Figure 17 Ready-to-use BigBone model.
To ensure that the model used is only the object itself (and not the construction curves, et al., which are also in the file), pick just the BigBone object and export it to its own file with the File, Export Selection command. If you'd like to compare yours with mine, check out the scene file BigBoneReady.ma. Leave previously saved files in the BigBone project, in case you need them later. The exported file will be used to incorporate the BigBone into the Parking Spot project for the appropriate scenes.
Although the BigBone model isn't a difficult model, it has given us an opportunity to show some prop-modeling decisions in action.