Hands On With SurfaceSuite Pro
by Shawn Lewis

3D Texture Mapping Just Got A Whole Lot Better

History 101

Three of the most important aspects of any good 3D image are the modeling, the lighting and the texturing. Over the years, 3D packages have gotten progressively better at modeling and lighting while texturing has remained fairly primitive. 3D paint programs have helped some, but they have their own limitations. While they allow the user to paint directly on a 3D model, painting in 3D isn’t a very intuitive process. Because of this, painting in 2D (or even by hand and scanning in the texture) is usually much easier. But it is difficult, if not impossible, to accurately place the 2D texture on the model. That is until now.

Enter SurfaceSuite™ Pro.

What it is
SurfaceSuite™ Pro is a texture mapping application that allows the user to precisely place a map onto a 3D object. With SurfaceSuite™ Pro images are placed by choosing the projection type and moving the projection gizmo into the correct orientation. Sounds pretty straightforward, so far. Well, here’s were the revolution begins: SurfaceSuite™ Pro allows the user to stretch and warp the applied image to precisely control where on the model various aspects of the texture go.

This is accomplished through the use of Adaptive Image-based Surface Technology (AIST). With AIST, you can set a series of points on a texture map and then by assigning corresponding points to your model, control the exact placement and warping of the applied textures. (See Figure 1, the control points are the orange and yellow tick marks.)

Figure 1

With SurfaceSuite™ Pro, you can also composite multiple maps (called layers) onto a surface while giving each layer it’s own mapping gizmo. This capability is facilitated through the use of: 1) layer opacity; 2) layer affectation (selecting which faces a layer affects); and 3) layer specific alpha channels.

Figure 2, for example, shows an alpha channel layer applied to a model. By changing this layer’s opacity to 86%, and using it to overlay a layer of scales, the right-side of Figure 1 is created.

Figure 2

What it isn’t
It isn’t a 3D paint package. SurfaceSuite™ Pro doesn’t have any drawing tools (not even simple lines, boxes, gradients). As such, to use SurfaceSuite™ Pro you need to couple it with a good a paint program, scanning software, and/or stock images. If you’ve been doing any 3D work, you probably already have these items in your arsenal.

What do I need
SurfaceSuite™ Pro requires Windows 9X/NT, 32MB of RAM, and an SVGA Graphics card. It is also recommended that you have a video card with OpenGL acceleration.

What’s the use
As is evidenced by the tutorials that ship with SurfaceSuite™ Pro, the package is ideally suited for mapping real-world images (such as pictures of people’s faces) onto 3D objects. Among other things, this could be used to create realistic faces, to precisely place image maps over terrain, and to bring 3D objects to life with real-world textures.

In addition to the use of real-world images, you can also create a 2D image in your favorite paint program and then use SurfaceSuite™ Pro to place it on your 3D model. This would be especially valuable in the 3D gaming industry, for example, where custom textures need to be accurately placed on low-polygon count models. Since, creating a texture in 2D (or even by hand) is more natural then trying to create it on a 3D model, using SurfaceSuite™ Pro opens up a whole new level of sophistication and workflow.

Supports and will support
Supported image types are: BMP, TGA (with or without alpha channels), JPG, TIFF (with or without alpha channels), and SoftImage PIC.

Supported model types are: 3D Studio MAX (3DS), AutoCad (DXF), LightWave Object (LWO), and WaveFront (OBJ).

Supported image mapping projections are planar, flashlight (basically the same as planar, but only affects the front of an object), cylindrical, spherical, shrink wrap (a modified version of spherical which replaces bipolar pinching with monopolar pinching), and UV (which is used for NURBS!).

Support for other applications is (or soon will be) available through Sven Technologies’ LiveLinks. LiveLinks are extensions which enable SurfaceSuite™ Pro to easily (usually through a keyboard sequence) exchange data back and forth with other applications. They must (unfortunately) be purchased separately and range in price from $100 to $400, depending on the application being linked to SurfaceSuite™ Pro. LiveLinks are currently planned for Photoshop, SoftImage, 3D Studio MAX, Maya, and LightWave.

As another note, there is also a version of SurfaceSuite™ Pro which is a 3D Studio MAX (version 1.x or 2.x) plug-in. Actually, SurfaceSuite™ Pro started out as a MAX plug-in and has only recently been reworked to be a standalone application. So, if MAX is your package of choice, you might want to check out the plug-in version which would avoid the need for LiveLinks.

Diamonds or Talc
So, how easy is the package to use? Very! Within the 15 minutes I had worked through the first tutorial (again see Figure 1) and felt very comfortable with the application. That is one of the beauties of SurfaceSuite™ Pro: the interface is simple and elegant and because of this, the package is very easy to learn. (Refer to Figure 3 for an example of the user interface).

Figure 3

The second tutorial (and there are only two) goes into a bit more depth and shows you how to texture with two or more alpha channeled layers. This tutorial took about 10 minutes and the results can be seen in Figure 4. Granted, creating it completely from scratch (including the alpha channels and original texture scans) would have taken a bit longer, but the ease of use is still pretty impressive.

(Author’s note: the seam along the top of the head in Figure 4 results from discontinuities in the model’s geometry not from texturing (whoever originally created the mesh didn’t weld the vertices in the model before saving it, so the scalp and the face are two separate meshes).)

Figure 4

What now
OK, so now you have your texture what do you do with it? You have several choices. If you have the appropriate LiveLink, you simply export the fully textured and still layered textures back to your 3D application. If you don’t have the appropriate LiveLink, you can collapse the maps down into a single map (through a process called Global Map Generation) and export the map. The Global Map generated for the project seen in Figure 4 is shown in Figure 5. This map was generated for use with cylindrical mapping gizmos (you can choose the mapping type for the generated Global Map).

Figure 5

Welcome to Missouri
Let’s walk through a quick tutorial of how to use SurfaceSuite™ Pro. (Author’s note: the model and textures for this tutorial are modified versions of content that shipped with the MAX version of SurfaceSuite™ Pro.)

Figure 6

In this tutorial, I’ll be texturing the banana seen in Figure 6. I’ll be applying the images seen in Figures 7, 8, 9, and 10. To Figures 7 and 8 the alpha channels seen in Figures 11 and 12, respectively, will be applied. These alpha channels are necessary because they help the sides blend in with the front and back of the banana. They were created by opening up Figures 7 and 8 in Photoshop, using the magic wand tool (with a tolerance value of 64) to select the white area surrounding the banana, creating a new layer, inverting the selection, contracting the selection 5 pixels, feathering the selection 4 pixels, filling the selection with white, selecting the original layer, and filling this entire layer with black.

Figures 7 & 8

Figures 9, 10, 11 & 12

Next, I created the appropriate layers within SurfaceSuite™ Pro (see Figure 13). Since the top and bottom layers (Figures 9 and 10) don’t have associated alpha channels, I placed them first in the layers list. I did this because layers are applied in the same order that they exist within the layer list; as such, Figures 7 and 8 which have alpha masks (so you can see through parts of them) should be applied AFTER Figures 9 and 10 which are completely opaque.

Figure 13

Once you’ve set everything up, select a layer, rotate the model until it is in the same position as the image in the layer you’re applying, create the appropriate gizmo type (I’m using the flashlight gizmo for each layer), press the view align button, press the fit to object button, then create control points until the map lines up in the desired manner (see Figures 14 and 15 for examples). I started with the alpha channel layers first, because I like to spin the model around and make sure that I’ve correctly applied the alpha channel (i.e., there are no hard edges in the textured areas) before applying the underlying areas.

Figure 14

Figure 15

Figure 16

Figure 17

Now, do the same thing to each layer. Once you have done all four layers (see Figure 16), you’re ready to collapse these four layers into one new layer and create a global map. To do this create a new layer (call it target), check Tiling U and Tiling V (otherwise the resulting global map will not be seamless), apply a cylindrical gizmo to the object, align the gizmo to the banana (see Figure 17), go to Action->Generate Global Map, select target as the mapping target, select the appropriate size and name for the output image, check collapse layers, click OK. The model is now textured using the cylindrical gizmo and the four layers have been saved as a single image map (see Figure 18). You can now export the model for use in the 3D package of your choice.

Figure 18

Hits and misses

  • Hit: it works and it is very easy to learn!
  • Hit: The manual is well laid out and easy to read.
  • Miss: The manual is in black and white and is NOT spiral bound. Color plates would help to show off differences in the pre- and post-textured models; spiral binding would allow the manual to lie flat on the desk and make it easier to work through the tutorials and to leave it open while working.
  • Miss: There are too few keyboard shortcuts so you are forced to use the mouse for almost everything. While the use of keyboard shortcuts tends to be a matter of personal taste, for those people who do use them (like me :>), they are a real time saver. Ideally, the shortcuts would also be customizable.
  • Hit/Miss: There are tooltips for the main tool bar, but none of the buttons on any of the other windows seem to have any. Tooltips are valuable when you’re first learning to use an application because they help to reduce the learning curve by reinforcing the button shapes/colors with their names/actions. While SurfaceSuite™ Pro doesn’t have that large a learning curve to begin with, it would be smaller still with more Tooltips.
  • Miss: While the toolbar is moveable, successive runs of SurfaceSuite™ Pro don’t remember where the toolbar was last placed. Instead, each time you launch SurfaceSuite™ Pro the toolbar starts in the default position. Furthermore, the toolbar position isn’t saved with the project files either; however, the positions of the various windows are saved with the project files. Along the same lines, when launched, SurfaceSuite™ Pro always comes up in the same sized window. Granted, neither of these is crucial, but they are nice-to-haves that I have grown accustomed to with other packages.
  • Hit: Right click cancels an action. Since I routinely use 3D Studio MAX, I have gotten used to right-click cancels. It was nice to see it included.
  • Hit: Flashlight projection. Flashlight projection works the same way that planar projection works, BUT it only maps one side of the object.
  • Miss: You can not repeatedly tile a texture over an object.
  • Hit: Can use the alpha channel stored within an TGA or TIFF image to control the region of the model affected by the texture.
  • Hit: Updates occur quickly and in general, the program seems very responsive (I’m running NT 4.0 on a dual P-Pro 200 with 160MB).
  • Miss: As may be expected in version 1.0 of any new software, SurfaceSuite™ Pro has some bugs and quirks. The quirkiest feature is Dual Create Control Points, which seldom worked past the placement of the first point. There were other times when I couldn’t get the mesh to show up in the image window (although when I exited and started the program again, it worked just fine). I’ve also experienced intermittent bugs with zooming in the model window.
  • Hit: You can view your model in wireframe, shaded, or a combination called shaded+wireframe which shows the texture with the wireframe overlayed. Shaded+wireframe is extremely helpful when trying to align image control points. An example of shaded+wireframe (using orthographic projection instead of perspective) can be seen in Figure 19.
  • Hit: Both orthographic and perspective viewports are supported. You can also truck and zoom the camera to change the amount of perspective.
  • Hit: Multiple undos and redos.
  • Miss: Currently, SurfaceSuite™ Pro doesn’t support any type of surface texturing other than diffuse mapping. So you can’t use it to interactively apply bump maps, specularity maps, or the like. Instead, you must create the diffuse texture and then use your primary 3D package to create the necessary bump, specularity, etc. Since bump-maps and specularity are often tied to the diffuse channel, this isn’t overly evil, but it would be nicer to be able to use SurfaceSuite™ Pro to completely texture my object.
  • Miss: There are no controls for the lights used in the model window.
  • Miss: Imported models don’t seem to maintain the same concept of Front/Left/etc. that they had when they were exported from 3D Studio MAX (I haven’t tested any other 3D package).
  • Miss: There is no way to align the camera to a gizmo. You can align the gizmo to the camera (which aids in gizmo creation); however, if your model imports and doesn’t align with any of the viewports, you’ll find yourself constantly adjusting the camera. It would also be nice to be able to save specific "user" view settings to come back to them later.

Figure 19

Worthy of fame or worthy of flame?
So, this is what it comes down to: does SurfaceSuite™ Pro do all that it claims? Yes.

Is it the end all be all package? Probably not; but if some of the misses listed above are addressed, it will get much closer.

Do you need it? That depends, do you plan on doing any 3D images/animation? If so, I would say, Yes! you most definitely need it. With it’s ability to combine multiple maps while allowing for exact placement of each map, SurfaceSuite™ Pro brings texturing 3D objects into a whole new era.

By the numbers
On a scale from 1 (the CD will make a wonderful coaster) to 10 (using this product is a life altering experience), I give SurfaceSuite™ Pro:

Features: 8
Ease of Use: 9
Performance: 9
Documentation: 7
Overall rating:

Shawn Lewis
Visual Scream Gallery

For other examples of the work of Shawn Lewis, see DPM's Gallery page here

For other books on 3D Studio Max, click here.