Accessibility
 
Home > Products > Director > Support > Basics of Director 3D
Macromedia Director Support Center - Basics of Director 3D
Modeling

You can create simple 3D objects in Director 8.5—text objects and primitives such as boxes, spheres, and torus—without an external 3D tool for the modeling, texturing, or animation. If your project requires more complex W3D models, you can obtain free or commercial models from various vendors, such as Turbo Squid. To customize models or build them from scratch, however, you need a separate 3D creation tool. Fortunately, Shockwave 3D supports a range of tools, from the high end to the low end, across platforms and operating systems. For a detailed list of 3D modeling applications that provide W3D export, see Macromedia's Director Support Center.

 
About polygonal meshes
Most 3D packages support at least three types of geometry: polygonal, spline (patch-based), and nonuniform rational B-splines (NURBS). Patches and NURBS geometries generate surfaces across or bordered by a system of curves.

However, Shockwave 3D supports only polygonal geometry. Polygons have been in use the longest, are an efficient way to represent 3D geometry, and are easier to texture-map than other geometric types. To position a point anywhere, you simply assign it an X, Y, and Z coordinate; to draw a line, you position two points and connect them; to draw a face, you position three points, connect them into a triangle, and "paint" one side. Polygons can have two types of faces: triangles and "quads" (two right triangles combined). Because of their CPU efficiency and the easy way they can accept texture mapping, polygons have been the favored geometry for real-time 3D graphics.

Because polygons have rigid edges, they pose problems in representing smooth surfaces. For details, see Using smoothing.

 
Using adaptive resolution technologies
Intel's multiresolution mesh (MRM) and subdivision surfaces (SDS) technologies are built into Shockwave 3D. Both technologies derive from the idea that 3D models far from the camera should be portrayed using the fewest possible polygons, and those closest to the camera should be portrayed with denser meshes.

The conventional technique has been to build models with different levels of detail (LOD) and swap them based on the model's distance from the camera: for example, a spaceship flying toward the user might be rendered with 50 polygons 5 miles away, swapped to 500 polygons at 1500 yards, and swapped again for 1200 polygons at 200 yards. The hard part, of course, is to make a swap the eye cannot discern.

In contrast, MRM reduces detail continuously, variably reducing the face count in a single model as a function of distance from the camera. In the previous example, MRM might yield the same face count at the same distances, but would use the same model with different face counts at intermediate distances. The result is a swap without a "popping" effect.

Depending on the 3D modeler, MRM may be controlled in the 3D creation tool or at the time of export. For example, the MRM modifier is available commercially for 3D Studio Max 3.1 and is built into Max 4.0. If you don't have this modifier in your 3D tool, you can protect an area from the effects of MRM by actively selecting that area prior to export: if you want the facial area of a character to be unaffected by MRM, select all polygons constituting that face, and export the character mesh with the selection active. MRM is further applied by the exporter's compression setting, and can also be added in Director through Lingo.

Whereas MRM is a reduction technology (that is, the model defines the upper limit of the face count), SDS is the opposite. It increases detail by selectively subdividing polygons when required to provide added detail or smoothness to a surface. Usually this is done to an area of a model that is currently in the camera's view.

Although some modelers have SDS capability, that's no guarantee of support in Shockwave 3D. For example, in 3D Studio Max 3.1, SDS is implemented through the displacement map channel in the Material Editor. Shockwave 3D doesn't support this type of map, so even though SDS is available in Max 3.1, it won't export to Shockwave 3D. In Max 4.0, SDS is a modifier and therefore exports properly in Shockwave 3D. Alternatively, you can turn off the SDS feature in the exporter, in which case the feature won't be available to Director.

Remember also that the MRM and SDS features can be further manipulated in Lingo. A single bird in flight can become an animated flock in Lingo with MRM: the distant clones can be at low resolution while one flies up to the camera at full resolution. Or a first-person shooter game can have a swarm of vermin attacking the hero. In either case, you would model, texture, and animate a single creature.

 
Budgeting polygons
The resolution of a polygonal mesh is measured by the number of polygons. The "lighter" mesh lacks detail but renders and downloads faster. If physics are applied (gravity, wind, collision detection) or multiple lights are placed in the scene, the lighter mesh will respond better. You must balance the detail of high resolutions with the speed of low resolutions when you create your models.

For example, if you're creating a shooter game, you might budget minor characters at under 1000 polygons and main characters between 1300 and 1500, with an onscreen budget of 3000. Because this budget has been popular for PC and console games over the last few years, you might get a warning from the exporter if your budget exceeds 10,000 polygons. This is just a warning; if you're collaborating on an architectural model or other project where detail and accuracy take precedence over speed and download time, Shockwave 3D can handle high-resolution models of hundreds of thousands of polygons per scene. Even when your model is dense, Shockwave 3D rewards modeling that uses efficient manipulation, interaction, and physics (for example, gravity, collision detection).

Polygon budgets dictate not merely mesh density, but also selective detailing of parts of the mesh according to purpose. For example, if a character's face is going to be available for close-ups, you might detail the eyes and mouth with extra geometry. Because the Shockwave 3D renderer supports neither bump maps nor shadows, facial qualities rely more on modeling than on texturing. Likewise, if a character must flex knees and elbows, more geometry is needed in these areas to avoid mesh tearing or popping as the character moves. Conversely, the torso, thighs, calves, and so on can remain at comparatively low resolution.

 
Using smoothing
Smoothing is a rendering feature that allows a series of adjacent faces (not in the same plane) to appear as a single smooth curved surface. "Smoothing groups" allow an artist to apply smoothing to a series of face selections, thereby smoothing parts of the model (for example, the forearm and upper arm), while maintaining creases at other parts (for example, the elbow). Often, smoothing groups can provide an acceptable alternative to using subdivision surfaces (SDS) or otherwise increasing the face count to approximate a curved surface, keeping the model light and maintaining the budget.

You can smooth the edges of polygons by using the 3D renderer or polygon decimation/tessellation tools.

When you use the 3D renderer, you take a selection of contiguous polygons (or "faces") and tell the renderer to show the edges as smooth. So, to model an arm, you might select all upper-arm faces as one smoothing group and lower-arm faces as another, thereby smoothing the surfaces within each group, while preserving the crease where they meet.
Polygon decimation/tessellation tools are special technologies for varying the smoothness or detail of the mesh.

 
Using deformation
Several 3D packages have tools for deforming meshes, allowing you to create effects ranging from simple bends or twists to flexing (used for secondary animation) and morphing (used in facial animation). These tools move vertices around without using bones or biped skeletons. You can use these tools in Shockwave 3D for deforming or sculpting a model. You cannot use them to animate the deformation; for that you need either biped or bones animation. (See Animation and model setup.) Even if you use biped or bones animation, you can't use a 3D tool that animates a change in the number or ordering of faces or vertices.

Blending or morphing deformations are used in 3D packages to animate changes in the look and shape of a mesh, keeping the face and vertex count the same. These kinds of deformations are useful for recycling the same pose several times, and for delivering a particular look at a particular frame. The technique involves creating a control mesh—for example, a head—and cloning several copies of it. Each clone is deformed into a different expression (to represent phonemes). The animator loads a pose (or blend of poses) at designated frames—for example, to correspond to a soundtrack. The 3D package animates between poses.

Although you can't export a morphing animation, you can export the predefined morph target frames, load them into Director, and swap them to achieve an animated result. In the right visual context with the right artistry, this can become an effective technique. Alternatively, you can achieve a smoother animation using the technique described in Using Lingo bones.

 
Generating models with Lingo
Some 3D objects, primitives, and 3D text objects can be generated through Lingo in Director. Advantages of these 3D elements are that they are algorithmic and code-based, and so are very lightweight in a scene. They can be used to add objects to a scene without reducing performance. Animatable mesh deformations that aren't bone-based can also be applied in Director through Lingo.

Pay attention to the coordinate system used by your 3D package. In Shockwave 3D, the Y axis is vertical, and the Z axis represents depth. In 3D Studio Max, these axes are reversed and cannot be changed; in Maya, you can change Y to vertical and Z to depth in the preferences. If there's a disparity between the two environments, W3D models will import looking "turned around." At the project's outset, consult the programmer to determine how to handle this—that is, whether to reorient before exporting or make the adjustments in Director.

The key to modeling for Shockwave 3D is to recognize which features of your 3D package will not export to the W3D file, decide on whether there is a workaround, and then compare this with the project's needs and what can be achieved through Lingo. For example, if you can satisfactorily animate the surface of a lake in Lingo with the Director mesh deform modifier, your modeling concern is to make sure the lake mesh has a high enough face count to deform smoothly.

To Table of Contents Back to Previous document Forward to next document