by David Duberman
Things have changed since the '90s. In those days, it seemed as though a new 3D graphics program came out every other week or so. But lately, innovation in 3D software has slowed not so much to a crawl as to a virtual state of suspended animation. Certainly, the few publishers that survive continually churn out new versions of their existing programs, but they're based on fairly old and creaky foundations. Thus it comes as a breath of fresh air that Luxology, a company founded recently by former Lightwave 3D stalwarts Allen Hastings, Stuart Ferguson, and Brad Peebler, has embarked on a course of world domination, or at least domination of the 3D market, with a bold new line of 3D software. The first program in Luxology's campaign is modo, which, as its name suggests, is a modeling program with chutzpah out the wazoo.
Whenever you see a modo demo, the first thing the demonstrator does is start dragging around UI elements. Ferguson's previous 3D modeling program, the Modeler module of Lightwave 3D, was hardly customizable at all. In modo, however, he's gone to the opposite extreme. Not that the program isn't very usable out of the box, mind you, but once you start using it intensively, you might want to rearrange things to suit your working style.
modo's interface takes advantage of the malleability inherent in the medium of software more than most. You can instantly change any window/panel into any other, move things around within the interface or create new overlaying windows, create new rows and columns for panels and windows, drag borders to resize UI elements, etc., etc. And you can save, load, and delete custom UI layouts. You can't delete the three default layouts provided with modo, which is a good thing, because it's easy to completely screw up the UI with just a bit of messing around. But power often comes at a price: I managed to crash modo several times while rearranging the UI. Also, the layout-recall feature is a bit quirky: After playing with the program for a while, now whenever I load the permanent "modo Default" layout, the view comes in sideways; I have to load it a second time to get it to look right.
Customization goes even further: You can open a Command History list and use it to apply a keyboard shortcut to any action, such as a specific transform. There's also an interesting Tool Pipe feature that I didn't quite get a firm grasp on, but at least I learned that it's how you create a primitive and then change its creation parameters. Speaking of which, as far as I can tell, modo has no such thing as a modifier stack (as in 3ds max), which seems a serious deficiency. This doesn't let you go back and change modification parameters (such as a bend operation) after the fact. modo is highly scriptable, but I didn't have time to investigate that aspect of it.
Viewport navigation is not too intuitive: Alt+drag to rotate, Ctrl+Alt+drag to zoom, and Shift+Alt+drag to pan. It's much easier for me to remember how to do these operations with 3ds max using the different mouse buttons and wheel, but that could be because I'm more used to the latter program. On the other hand, the fact that modo is also available for the Mac, which is still hobbled by its one-button mouse, could be at least partly to blame for some of these arcane key combinations. And let's face it: No matter how easy it is to customize a program (and in modo, it could be easier), most users are going to use it as is.
Selection in modo
modo's selection tools are quite powerful. By default, selection works uses a "paint" mode, where you LMB-drag over entities to select, or RMB/MMB drag to select a region (lasso/rectangle/circle/ellipse). You can click buttons or use the spacebar to change selection modes, but the easiest way to set a mode is simply to right-click an element in the model. The program remembers different selection sets of vertices, edges, and polys, but by holding down a qualifier key when you change modes, you can convert a selection to a different type. Even better, there's an option to let you convert a contiguous poly selection to an outline of edges.
Double-clicking has a special selection function in modo; for example, double-click an edge to select the loop to which it belongs, or double-click a poly to select all contiguous polys. You can use the arrow keys to increase and decrease selection areas, and even move selections over the surface of a mesh object. For example, say you want to select an edge loop, but it's not readily accessible. Just double-click a nearby edge to select its loop, and then press the arrow keys until the loop you want is selected. Even better, say you want to select every other poly around an object's circumference. Just select two alternating polys, and the use the More selection command (up arrow key) repeatedly until you get ever other one. More recognizes the nature and order of the current selection and increases it accordingly; pretty clever! All selection commands are available from what modo calls a "popover" menu, essentially a contextual menu bar that appears at the mouse cursor when you press Alt+spacebar.
Selection can be a bit unorthodox. For instance, in wireframe view, dragging a region with the middle mouse button selects only front-facing polys, while using the right mouse button selects front- and back-facing polys. But in shaded view, it's the opposite.
modo's modeling functionality comprises an embarrassment of riches, of which I'll barely be able to scratch the surface here. To start with, it offers the standard set of primitives: box, sphere, cone, torus, etc. You create these in the workspace by various combinations of clicks and drags, or you can instantly create a basic example of the current primitive by Ctrl-clicking the tool button. Once you've added one, you can distribute identical copies by MMB-clicking anywhere in the viewport. A nonstandard primitive is the Tube, which lets you create a snake-like shape with multiple clicks. Essentially, you're extruding a circle along a spline that you define on the fly.
Another way to create geometry is by starting with an outline (i.e., a spline) and then extruding or lathing it. You can create standard Bezier splines or simpler curves vertex by vertex, or the latter simply by sketching. You can then use Duplicate commands such as Lathe, and Curve Extrude/Clone, which use a background curve to extrude or clone polygons or another curve. This, incidentally, is one of those commands that I just couldn't figure out; the results didn't even come close to my expectations. I had better luck with other Duplicate commands, such as interactive Array and Radial Array tools. There's also a Bridge tool that works almost exactly like the one in 3ds max.
Once you have your basic form, modo gives you a multitude of editing tools, starting with the standard move, rotate, and scale for objects, vertices, edges, and polygons, plus a specialized squash-and-stretch function. And the powerful Falloff feature lets you apply transforms and other operations with widely varying results over the geometry surface depending on the position and shape of the falloff envelope, which can be linear, cylindrical, or any of several other shapes. Incidentally, with no sub-objects selected, modo considers all geometry on active layers to be a single object.
The ability to perform transforms around different types of centers is important, and modo offers a wealth of choices in this regard. You can set as a transform center the origin, and arbitrary point or element (such as a particular polygon, or even a point in space), the local coordinates of each selected element, and several others.
Other modeling operations include bevel, subdivision surface (SDS) features, and a host of deformation tools such as twist and bend. There's also Push, which moves elements in or out along their normals; Sculpt, which lets you work the geometry like clay, and taper and shear tools. A couple of particularly nice and intuitive tools are Soft Move and Soft Drag, which let you set a radial falloff and then move parts of objects while affecting their neighbors to a lesser degree.
One of my favorite modo features is the implementation of layers. You can create a new layer with a single click in the Mesh List panel, and then cut/copy/paste geometry between layers. You can activate any combination of layers by highlighting them in the mesh list, and then perform any operations on them as if they were all in the same layer. You can also set a layer to Background status, so that it's visible but can't be acted upon. This is very intuitive and easy to use.
An important aspect of modeling entails using background images in the viewport to serve as templates. modo supports a wealth of options for this purpose. You can load different images into memory and then switch among them easily in the different viewports. You can adjust size and position for background images interactively in each viewport, and rotate the image using a spinner. You can also set contrast, brightness, and resolution values separately in each viewport. For black-and-white images, the Invert function can be useful, and you can even set the image to be an overlay, seeing through to geometry behind it thanks to a Transparency setting.
modo's contextual help is a no-brainer: Press F1, and the mouse cursor turns into a question mark. Then, when you click any GUI element, a relevant HTML reference page opens in your Web browser, which then comes to the front. Likewise, pressing F1 causes a question mark to precede every menu entry, and then clicking the entry usually, but not always, opens an appropriate help page. This works on a one-time basis; if you want to know about several items, you need to press F1 several times.
The help page accessed via F1 is usually specific to the item you clicked, but in some cases, such as a form (equivalent to a rollout in 3ds max), instead of a description of the parameter you clicked, you just get a less-helpful generic help page that just tells you what a form is. Often this page has a link to a helpful QuickTime movie about the feature, but in most cases when I clicked the link the movie opened twice--once on the page and again in a new window--forcing me to stop one instance in order to be able to understand the narration. What's more, if I closed the new window--the intuitive thing to do--the other movie kept playing, but without sound. Kind of frustrating.
The HTML reference isn't the most helpful; despite its online nature, surprisingly there's no search capability. If you go to the home page, which you can do only from the Help menu (there are no cross-reference links on the reference pages), all you get is an incomplete, poorly organized index-cum-table-of-contents. You can try to find items in the index pane with the standard Web browser search, but when I searched for "pipe" (as in "tool pipe"), an important concept in modo, it came up empty. The documentation writing takes a mostly professional tone, but is occasionally a bit too self-congratulatory with language like, "That is sweet," or, even more embarrassingly, "Super bon bon!" (in tutorials).
modo is very sexy: It's a shiny, new, next-generation 3D modeling program. The designers (mainly Stuart Ferguson) have learned from all the modeling applications that have come before, and created a piece of software that both old hands and novices can benefit from using. At the same time, the program design seems to revel in its eccentricity. Getting used to modo's idiosyncratic working methods takes a fair amount of concentration and practice, and if you stop using it for a while, you're likely to face a steep learning curve again, despite your prior experience.
Frankly, I find the program to be relatively unintuitive; in fact, working through the user guide, which combines overview material, tutorials, and procedures (focused mini-tutorials), typically as soon as I tried something different I started getting error messages, no response, or wildly unexpected results (including regular crashes). Often, while using modo, I feel truly at sea, and I've been using 3D software for well over a decade. For example, while following a tutorial on lathing a wine bottle shape from a Bezier curve, I wanted to adjust the number of sides (i.e., lathe steps), but was unable to figure out how. The parameter still appeared in the UI, but adjusting it no longer affected the bottle.
The bottom line is that modo needs to come with lots more tutorials, and they need to go into much more detail than do the current ones. That said, I know it's a very capable program; I've seen Luxology employees do amazing things with it; it's just that I can't figure out how they do it.
I really am impressed with modo, or at least I will be once they improve the documentation and nuke some of the nastier bugs, but it's still only a modeling program. Of course, it's just the first blow in Luxology's campaign to conquer the world of 3D content creation. Once Allen Hastings throws his animation software (demonstrated briefly but memorably at the 2004 Siggraph) into the mix, the company will truly be a contender; I'm watching with bated breath.