TUTORIAL November 1998
Space Battle, Part Twoby Chris Tome
In Part One of this tutorial, which appeared in the November 1998 issue of 3D Design Magazine ("Build Your Own Space Battle," by Chris Tome, p. 34), we discussed ways to visualize and create a space battle story, as well as create ships, planets, and nebulas. For this project, LightWave and 3D Studio MAX (MAX) were used, with an emphasis on LightWave. Part Two continues online as we look at how to surface the models, create lasers and explosions, and much more.
Types of Maps and How To Use Them
There are many mapping types, and here are some suggestions as to how to best use them for designing your ships' maps. You will not necessarily use all of them for every type of ship, but in most cases, you should.
Color Map: This map defines the colors, stripes, logos, and any other graphics you would like to put on your ship. The map itself should be muted a bit by combining the diffuse map in Photoshop, as ships are generally a bit muted in color. If further "toning down" is required, you can set the color map to be a percentage of the original image, which will bring the values down. In MAX, the color map is referred to as the diffuse channel.
Diffuse Map: The diffuse map is designed to let you vary the colors of your object so that it looks more realistic; color is rarely even over a surface, especially one that has been exposed to the harshness of space. It diffuses the color map, toning it down and adding a little real-world variety.
Specular Map: Often overdone (for example, Babylon 5), the specular map lets you add highlights to your surface for a metallic look. A specular map should be a very dark version of the diffuse map, showing few light areas, which is where a highlight will appear. Use this sparingly and you can achieve very realistic looking ship textures, with well-placed glints and gleams. Use it too much and it will look like your model is made of plastic.
Reflection Map: Typically used for objects such as cockpits and windows, a reflection map can add realism to your scene. Say you have a ship that appears from behind a planet, then comes racing toward and past the camera. An image map of a rendering you made with the stars and planet in it and applied as a reflection map to the windows, cockpit, and any other highly reflective surface will make your scene that much more realistic. Chrome is a highly reflective surface, for example.
Transparency Map: On ships, transparency maps are most likely useable only on glass. They can, however, make the atmosphere of a planet much more realistic or give that nebula the perfect gaseous quality it needs. Transparency maps are generally useful for lasers, explosions, nebulas, etc.
Bump Map: You will not always want to use a bump map on your ships. A fighter, for example, is small enough that details such as panels and other miscellaneous parts can be modeled or texture mapped and will look realistic. In the case of the Battle Frigate created in Part One, I did not want to add tons of detail by hand, so I created a shortcut. Using Photoshop, I designed a bitmap made up of boxes with varying sizes in different shades of gray, all overlapping and connecting with each other, and mapped it to the different surfaces as a bump map. I also darkened the image quite a bit and used it as a specular map, which gave me very nice highlights on the surface. Remember that you can use negative values on a bump map to "indent" a surface with detail.
Tip: When using monochromatic images (usually grayscale) you can set the bit depth to eight bits or sometimes even less to conserve memory with no loss of quality. This memory can be used when rendering and helps speed up interactivity when textured, shaded OpenGL mode is used.
Mapping and Surfacing Techniques
There are many ways to map a spaceship model, and which one to use is best determined by how the ship is designed. Take, for example, the Battle Frigate modeled in Part One (a very large and semi-rectangular shaped destroyer), which we will map mostly with top down and side planar projection mapping, as it is the easiest method for geometry like this. To properly surface the model, follow these steps. (We'll use LightWave for our example.)
Step 1. Bring the model into LightWave Layout with its front facing the positive Z axis. (Note: In LightWave Modeler, you must put the object's center of gravity [where it will rotate from] at the 0,0,0 point to bring it into Layout with the proper pivot point set up.)
Maps for a smaller ship, which will be projected down on the Y axis and sized to fit the ship.
Step 2. In Layout, set Ambient light to 100% in the Lights panel, all other lights to 0.
Step 3. Using the Numeric requester, rotate the ship -90 degrees in Pitch. This will leave it standing straight up, with the top facing the camera. In the Camera panel, set the zoom factor to around 40. This will eliminate any parallax on the object.
Step 4. Render out a flat version of the image and save it to disk. Bring it into Adobe Photoshop, where we will paint the map.
Step 5. Select the black area with the magic wand and then perform a Select Inverse so that the light gray area of the ship is selected. Copy the selection, then close the window. Select File New, and a window will be created the exact size as your selection. Fill it with black, then paste the image. Use the eyedropper tool to select the gray color. Select Edit Stroke, and apply a one pixel stroke first to the outside of the selection, then to the center. Select none, then reselect the target area with the magic wand. Select Save Selection to save this shape to a channel. (There is an extensive video tutorial on this by Ron Thornton titled Spacecraft Surfacing Techniques, available from Desktop Images [www.desktopimages.com], which I recommend, even to non-LightWave artists.)
Step 6. Paint on half the model using selections, the line tool, etc. Dirty the map up a little so it doesn't look too computer generated. When done, copy the map and flip it horizontally. With it selected, hold down Shift and the arrow key to move it into place. This is your diffuse map.
A greyscale diffuse map for the cylindrical parts of one of the ships. Notice how simple the texture looks here, but when mapped, it will stretch and distort and look more realistic.
Step 7. Copy this selection to another channel (Using .psd for your original map files enables them to contain the color, diffuse, specular, and bump maps in one file) and select all in the RGB channel. Fill with the color of your choice, then paint on graphics such as stripes, logos, etc. Use the paint on half, then mirror to the other side as mentioned in Step 6. Once done, copy and paste the diffuse channel into a layer over the color channel. Using the Multiply option, set at about 50% will diffuse the color map to make it less garish. Experiment with different settings to achieve certain looks.
Step 8. For the specular map, copy the diffuse map to another channel and adjust the brightness and contrast so that the image is very dark, and only the very light areas are bright. If you need a bump map for your ship, repeat this process, adjusting brightness and contrast accordingly.
This is just one way of mapping. There are many others included in 3D paint programs such as MeshPaint 3D, 4D Paint, and Painter 3D. It takes time and practice to get good at painting texture maps, so try different things and don't get frustrated. Another thing to look out for is which axis your maps must be applied in. Many novices and even some experienced 3D designers have had to re-map a texture after rendering because it was mapped in the wrong axis.
In UV mapping, the maps are applied vertex by vertex around the model. If flattened, the map will look distorted, but those distortions will "stretch" properly when applied to the model. UV mapping tends to be better for organic models such as characters, but could be used for ships, especially ones that are alien and organic in nature. UV mapping is currently supported in MAX but not yet in LightWave.
If your color map seems a little too intense, you can easily tone down the percentages in the color and/or diffuse maps in MAX or LightWave. It's much easier to work with your colors, then adjust them in your application's surfacing properties.
Warning: If you are modeling and surfacing in LightWave, make sure you have all your surfaces properly named before you start surfacing in Layout, or you may have to go back into Modeler, redefine a surface, reload it into Layout, and start surfacing from scratch. This has happened to me more times than I care to admit, and it's simply due to laziness.
Testing Your Surfaces
As your project continues, you will want to do test renders to check your surfaces. Be sure to look at all of the surfaces; you might have gotten a mapping aspect wrong and it would show up in the final animation, which is not very professional. I like to do complete "fly over" test animations of my ships to make sure the textures are not only right but look good in motion. Another way to check your model is to do 360-degree rotation animations so you can get a good look at the ship in its entirety.
Another aspect of testing you should work with is how modeled details will interact with the texture maps you have designed.
Animating the Action--Motions of Cameras
Three frames from an animation where the ships are moved individually and as a group using a null. The camera is targeted to one of the ships and is "locked down" or doesn't move. This is a very simple yet effective type of animation and is easy to set up and keyframe.
Novice animators often fly a camera all over the place, simply because they can. This usually makes for poor animations. A good example of a camera move that works but could not happen in real life is the scene in Toy Story where the toy soldiers slide down a rope and the camera goes from a top-down view all the way down the rope to a bottom-up view. This would be an impossible move for a real camera to make. Sometimes, a basic pan or dolly may be all that's needed to achieve the desired motion. Try to keep the movement simple.
Continued On Page 2 >>
The ship in Modeler. Notice the placement--the back middle end of the ship is positioned at 0,0,0, which will make that the pivot point. Estimate where you think the center of mass would be greatest, and make that the place for the ship to pivot from.