home about gallery publications education links contact


..::50 ways to work faster in 3ds max::..

Note from the author: This article was written with 3ds max 3.x in mind. Due to software improvements, bug fixes, user interface amendments and added features, some items listed below may not apply to 3ds max after version 3.x...

..::Introduction::..

As a rule, you generally get out what you put in. But what if you've been putting too much in when you didn't need to? By learning even a few tricks to lighten the overall task, you will discover your productivity will increase and that stack of 'to do' graphic requests won't seem as daunting after all...

..::Interface & Viewports::..

Customising The Interface

Amend to one with which you feel most comfortable, with the most frequently accessed tools, modifiers, spacewarps etc at your fingertips so you don't have to go searching for them in the future. Creating interfaces or panels designed for specific tasks, such as box or NURBS modelling, effects etc.

Keyboard Configuration

Life seems easier when being able to use keyboard shortcuts; it's quicker to execute, quicker for the computer to work out (less items to 'draw out' such as menus) and gives your other hand a bit of exercise! With Max 3, additional shortcuts have been assigned for the most commonly used features, and these can be customised to your own requirements.

Expert View

To bring up any of the toolbars, simply press 2 (show / hide toolbars) or 3 (show / hide command panel). The menu bar, status line, prompt line and viewport navigation buttons are hidden, but most of the features can be relocated on floater panels, docked in the toolbar or assigned to a keyboard key configuration.

Viewport

By toggling features, Viewport redraw speeds can be improved. Shade Selected in the Views menu views the currently selected object shaded no matter what Viewport type is selected, Viewport Clipping allows the current Viewport to be interactively clipped using a slider to remove unwanted objects in the background or foreground, and hide / unhide objects that aren't currently required to be viewed (or use a low poly stand-in object).

Schematic View

This nifty little tool enables you quickly create hierarchies, modify an object's properties, navigate to objects and their stack all in one window, without having to manually select objects to do so (by double-clicking on the objects' modifer stack node to navigate directly to it).

Interactive Pan

One extremely quick way of centering a selected or unselected object in the active viewport is to use the Interactive Pan keyboard shortcut. Simply place the pointer over an item or area in the active viewport and press the I key and the viewport will redraw, focusing on the area around the cursor and repositioning it at the center of the viewport.

Region Zoom in Perspecitive View

This feature doesn't exist in Perspective view (it is replaced by Field-of-Vision), so you have to manually zoom into an area by selecting the zoom tool and panning to the required location. Instead, change the viewport to a User view, Region Zoom to the area that is required, then change the viewport type back to Perspective.

Middle Mouse Button

It is very useful to have a mouse that features a wheel as the middle button. Simply use the wheel for interactive zoom (or press CTRL, ALT & middle mouse button), depress the wheel to pan (or Shift & middle mouse button) and hold CTRL also to pan faster. Alt and middle mouse button gives interactive rotation.

Special Menus

By holding down CTRL, Alt or Shift and right clicking in a Viewport, you can quickly select a menu that is specialized to the area the pointer is over, or for the selected item, such as Select Mode, Quick Render etc. Hold down CTRL, right-click in the active viewport and selecting Customise Menu to insert additional options using Maxscript.

..::Filing::..

Loading Plugins

Plugins eat up Max's memory, even when not being used. To avoid this, a bit of foresight is required as they can't be loaded in once Max has loaded. Plugins can be placed in categorised folders and loaded in specifically when starting Max, by entering 3dsmax -p <copy of plugin ini filename>. Therefore, numerous plugin combinations can be created and loaded, with the command line arguments set up in shortcuts in your Windows Start Menu.

Opening Problem Files

If a scene won't open, chances are it's due to a plugin not being loaded, an object has become corrupted, or Max can't open the scene fast enough (ie off a slow network; copy it to a local drive to open). Merge the scene an object at a time until the corrupted object has been discovered, or x-ref in the objects / scene and then merge from within the x-ref dialogue box. Merge environment settings if also required.

Viewport Thumbnails

Handy to have switched on as it makes life easier searching for that required scene in Windows Explorer (Windows 2000 and Windows 98 suports file thumbnails) or any other program which has the ability to view them regardless of filetype (such as Max's Asset Manager). They are more effective if you save while in the viewport that displays the most detail.

Asset Manager

An extremely useful utility, enabling you to drag and drop scenes, objects into the current viewport, assign images straight to objects or materials, view scene and image thumbnails, and perform filing operations such as moving (shift-drag file) and copying (ctrl-drag file) files elsewhere on the computer. It can also be displayed in a Viewport by right-clicking the Viewport name, selecting Views, Extended, Asset Manager.

X-Ref Objects & Duplicate Object Names

Max alerts you when an X-Ref'd object that is being loaded in has the same name as an object that already exists in the scene. This alert prompts you to either merge, skip, delete old or cancel the loading. However, choosing skip will most likely crash Max. The main workaround is to either merge and delete the offending object, or to cancel.

X-Ref File Location

Due to the lack of space in the x-ref dialogue box, and the inability to scroll horizontally to view the full path and filename, all files X-Ref'd in should have a very short filename and path location to be able to view which files are X-Ref'd in later on. Therefore, if at all possible, keep the directory structure short and load in from mapped network drives.

Speeding up X-Ref's

To speed up handling of X-Ref objects and scenes in the composite scene, turn off Auto Update, otherwise Max constantly monitors the X-Ref'd file for changes, and, across a network especially, this can dramatically slow down even the simplest operations like transformation. This option should also be turned off in the X-Ref'd files if additional objects and scenes are X-Ref'd into those scenes.

X-Ref Objects & Internal References

Internal references such as Particle Emitters, Path Deform, Physiqued objects, Skin and instanced geometry particles won't work correctly if X-Ref'd into another scene, due to the relationships set up in the source file not being passed to the composite scene. The only way around this is to use X-Ref scenes as opposed to objects.

File Properties

This feature is ideal if a team of modellers and animators are working on a scene. Each can individualy set up catagories, comments, keywords etc that can then be searched for using the Max File Finder Utility, or by viewing an objects properties in Windows Explorer. OLE support enables the Max filetype to be included in database applications.

Summary Information

Handy to determine what plugins (or wayward plugins) have been used directly or indirectly in the current scene. This also allows you to enter summary information (which is the same as comments in the File Properties dialogue) for the scene and to view the current scene information, such as face count, material assigned etc. This information can also be saved out as a text file for filing.

Saving

If have a tendancy to forget to save, turn the Autosave feature on, especially if you are going to be doing a lot of test rendering as this is the time that Max is more prone to crash. Get used to regular saving even if Autosave if on, as you will undoutedly turn it off at some point when working on a large file as it will interrupt you and break your concentration too often!

..::Modelling::..

Selecting Sub-Objects

In a dense mesh, selecting specific faces, edges and vertices can be difficult. Work within User or Perspective view to navigate your way around the object, and when selecting, ensure that Ignore Backfacing is checked on to prevent sub-object faces, vertices etc at the other side of the object being selected by accident.

Snap Sub-Menu

While, say in the middle of a transform, you want to change snap settings, hold down shift while holding the primary mouse button in the middle of the transform, and click the secondary mouse button. The snap sub-menu will appear allowing you to change snap settings on the fly (even if snap isn't enabled). Choose a setting, and while still holding shift and the primary button, select the desired snap setting with the secondary button.

Zero-ing Out a Spinner

One quick and easy way to enter a zero value in any spinner is to right click it. This is especially useful if Max is busy calculating the value that you have just entered, or another spinner, and you want to convert it to zero. This will upate immediately once Max has finished it's calculation for the current process.

Increasing Spinner Values

To save working out the sum of a spinner value and the amount you want to increase it by, either in your head or by using a calculator, enter 'r' and the amount to increase by (eg r50), completely replacing the text in the spinner, and the spinner value will automatically update on pressing Enter.

Reference Cloning

This allows you to modify the mesh without affecting the original, but also allows you to amend the original (and therefore the cloned mesh) if something was omitted from both. Handy when you want to see both end results if a major amendment was performed to the cloned, but don't want to keep acivating / de-activating Show End Result for each modifier when working with only the original if you have to amend something further down the stack.

..::Animation::..

Quick Path Animation

Using the Trajectories rollout in the Motion tab, you can quickly assign a path to the selected object by clicking on the Convert From button. The keys are displayed at intervals defined in the sample range. The trajectory of an object can also be converted to a spline by clicking on the 'Convert To' button.

Generate Keyframes

Convert keys based on the transformation of any object that had been generated from parametric controllers (such as path or noise controller) to editable transform keys by clicking on the Collapse button in the Trajectories rollout. The motion may amend slightly from the original, but increasing the number of Samples will result in a more accurate conversion.

Ghosting

Found in the view pulldown menu, ghosting displays wireframe copies of an animated object for a specified number of frames before or after (or both) the current frame. This is used to analyse the objects motion (etc), with tighter ghosting indicating slower motion and wider spaced ghosting indicating faster motion. Ghosting parameters can be amended in the Viewport tab in the Preferences dialogue box.

Smoothing out motion

Under the Key Info (Advanced) rollout in the Motion tab, you can quickly amend your keyframes for the selected object if you want to even out the motion by clicking on Normalize Time. For example, if you have an object that speeds up and slows down too much.

Key Mode

Turn this on for a quick way to jump to a frame with a key assigned. This enables the time slider to jump to the next or previous keyframe (for any keyframed parameter) for the current item by simply clicking on one of the Increment Arrows on the time slider, or by clicking on Next Key in the Time Control Buttons panel.

Time Tags

To keep track of key events in your animations, insert Time Tags at relevant keys or at specific instances along the timeline when an important event occurs. These act like those little yellow sticky pieces of paper that adorn your monitor, and pop-up when the frame it's been assigned to is the current one. These also act as markers giving you the ability to jump to a specific frame where a keyframe may not necessarily exist.

Motion Capture Controller & Utility

Ideal for including a more natural feel to an animation as you record the motion of an object or turn objects on or off etc on the fly. Easy to set up, supports virtually any input device and it's controller can be assigned to almost any element within an object, it is possible to hand-animate objects thoughout the entire animation, from limb motion to blinking eyelids.

Link Inheritance

Instead of modifying the Link Inheritance information for each individual item in the Link Info rollout in the Heirarchy tab, select a number of objects and use the Link Inheritance (Selected) Utility to perform the operation on all items at once.

Align Tool

This can be used on sub-object selections and pivot points aswell as on the full object. You can also animate with the Align tool to create keyframes by selecting another frame, turning Animate on and aligning using a different setup or to another object in the scene.

..::Materials::..

Rendering With Original Colours

If, for some reason, you want to revert your object's material settings to it's original (or assigned) material colour setting, either use the UVW Remove utility on the selected object, or drag a None material from the Get Material dialogue box in the Materials Editor to the required object. This method also works with other material types to quickly assign different materials (in their default states) to items in the scene.

Receiving Shadows on 100% Self Illuminated Materials

Shadows can not normally be received by 100% self illumated materials. A (partial) way round this is to create a Blend material with the 100% self illuminated material in one slot and a less-illuminated copy in the second, and use a falloff material with shadow/light as the falloff type as the mask. To darken the shadow, decrease the illumination value of the 'darker' material.

Materials V Meshes

If possible, use materials over meshes. If your scene is highly complex, rendering times will be noticably reduced by replacing meshes with mapped low poly objects. It is worthwhile rendering off your high poly scene as an RLA file, extracting the z-buffer image and using it as a bump map / material displacement for the texture applied to the low poly object.

..::Lights & Cameras::..

Positioning Lights

Position lights quickly by using the Place Highlight tool on a sphere in a shaded view, that has a wire material assigned and covers the area to be lit in the scene. This enables you to exactly position the lighting by viewing the effects on other scene items. The lighting positions can then be manually tweaked for optimum results.

Shadow Map Quality

To improve the quality of a Shadow Map, simply increase the Shadow Map Size parameter. However, this will sharpen the edges of the shadow too much to your liking, so to rectify this, increase the Sample Range spinner also. Generally, the same operation should be performed on both spinners, eg by doubling the map size from 512 to 1024, the Sample Range should be doubled also, from 4 to 8.

Creating Soft Raytraced Shadows

There are several ways to produce this, but the most effective result is to link the light to a dummy following a path of a flat helix with large beginning and small ending radius that completes the motion in 1 frame. Unfortunately, render times will be high as the feather effect is generated by scene motion blur, and this needs to be as high as required to generate a nice feathering effect.

Irregular Lighting

If you've finally got everything looking right, but there's that one wayward element that just doesn't seem to look quite right with the current lighting setup, create a light that excludes everything apart from the one that is out of place and adjust it's positioning / lighting / shadows etc to get it just right.

Subtracting Light from a Scene

If you ever need to remove lighting from one part of the scene, such as at corners of a room or behind objects that aren't casting shadows properly, create a light with a negative multiplier (but still using a high RGB or HSV value, such as white) to remove the offending light (Spot or Directional lights are ideal for targeting offending areas). To subtly remove lighting, use Omni lights with attenuation.

Bad Lighting Using Sunlight

This normally occurs if the Direct Light in the Sunlight system is too close to the objects in the scene. Select the Direct Light and amend it's orbital scale in the Motion tab so that it is at a greater distance (roughly about 3x the height of the tallest object) from the scene's objects.

Positioning Cameras

It is much easier to set up and position a perspective viewport than a camera, but when a scene requires a camera viewport, set up the view in perspective, select the camera to be matched and select Match Camera to View in the Views pulldown menu. This feature can also be animated; check on Animate, pan to a different frame, reposition the perspective viewport and redo Match Camera to View.

Depth of Field

The principle behind this is identical to generating soft shadows mentioned previously. The camera's target is the focal point (and is not linked to the dummy), and the path's outer radius can be increased or reduced to vary the amount of blurring outside the focal point. Different spline shapes could be used, such as a circle, helix or star, depending on preference. Again, rendering times will be greatly increased.

..::Rendering::..

Rendering Images For Print

Currently, Max cannot directly print a rendered image, but has the ability to output images that most programs that support printing can read. However, out of the many filetypes that Max can render to, the only image type that supports DPI amendments is the EPS format (defaults to 72dpi).

Image Motion Blur

This can fail when rendering at high resolutions due to memory (not swap file space) limitations. The main reason for failing is due to the swap file becoming fragmented, and Image Motion Blur requiring a solid block of memory to work. Chances are it will work on one frame but not the next, and the only way around this is to add more memory or to render the scene in batches, restarting Max each time.

Compositing

If you find that rendering times for your total scene are astronomical, try breaking it up into layers and compositing later on. In general, even the time taken to perform such a task would be considerably lower than the time it would take to render the entire scene in one pass with everything included.

Quick Video Post Effects Amendments

Instead of re-rendering a scene each time you amend the value of a filter in Video Post, render out the scene with no filters or effects to an RLA file, with all channels included. Reset Video Post, add an Add Image Input Event and apply the filters to the image as per normal. Re-rendering will be faster, and you can perform the operation to an animation by creating an IFL file of RLA's and loading that in instead.

Rendering & Memory

If you cancel a render, Max may report that it cannot begin another render due to lack of memory. This is because Max will not free the memory allocated to the cancelled render until it is either restarted or another frame has completed rendering. The only way around this without restarting Max is to render a small frame with very low detail, allowing Max to complete the frame and therefore freeing up the memory.

..::Additional::..

LOD Utility

The Level Of Detail Utility allows you to automatically replace hi-poly objects with low-poly objects depending on their size in the rendered image. At least two copies of the same object is required to switch to; one method is using the low-poly object created by box-modelling before applying Meshsmooth. Move and align the objects to the same co-ordinates and group them. Select the LOD Utility, Create New Set and select the grouped objects. The Utility will analyse the group and list the objects in order of the amount of faces in each object, setting near and far limits for each one. These settings should be okay as they stand, but you may want to manually tweak the limits (either in number of pixels of percentage of screen - taken across the diagonal) if the resulting render displays a low poly object instead of a high one. By default, the object with the lowest poly count will only be displayed in the scene (this can be amended for any object to be displayed) which makes viewports redraw faster. However, if you decide to clone the LOD'd group, you will need to set up LOD again for the new group. Additionally, when the output render size is amended from, say 640x480 to 320x240, LOD will update and more than likely use a lower poly object due to the image size. This Utility is ideal for the arbituary space battle scene with hundreds of ships flying around in the distance. They can all be clones of one group, all with LOD to keep poly counts down, and should a few ships fly from the distance to the foreground, Max will update the displayed meshes accordingly.

Speeding Up Rendering Times

If your scene is highly complexed with several objects in the background (that can't be switched to low poly versions), you can speed up rendering times by tweaking the elements that make up your scene for optimal results, but without sacrificing any quality in the final render. Overall, shadow mapped shadows render much faster than raytraced ones, but fail on transparent objects (with the resulting shadow appearing as if the object was opaque), so amend the shadow type and/or decrease the shadow map size when the object is not in the foreground. Use small texture maps and also try to avoid procudural textures wherever possible as they are slower to generate than bitmaps. Camera clipping can help reduce rendering times by ignoring geometry further away in the background, and is relatively straightforward to set up. If, later on, you realise that in certain instances important distance geometry has been occluded, the clipping values can be animated so in that instance the far clipping plane is further back than before, and can then be animated back to occlude geometry as before. Additionally, if at all possible, replace geometry such as foliage, with planar mapped bitmaps.

Max File Finder

Can't remember which of the scenes you've created has that excellent material setting / bone structure / particle system setup? Well no more. This handy little utility will enable you to stop searching though you hard drive(s) for that elusive element that you've been after for God-knows-how-long. A bit like Windows' file finder program, this utility will browse though all folders (if desired) and Max files for files with the extension you enter. You enter any keyword search and select the correct property for which the keyword is associated with, be it a material, object name, author, plugin loaded, summary information and so on. The resulting search will list the file(s) that can then be double clicked to get the summary information about the file. This utility also works as a standalone program (maxfind.exe in Max's root folder). This information can also be displayed by viewing a Max file's properties in Windows Explorer.

Strokes

Similar to keyboard shortcuts, Strokes are generally designed to be used by users of Max with graphic tablets or pens. Like keyboard shortcuts, virtually any operation that Max performs, be it applying a modifier, restricting to a specific direction, or opening up a dialogue box, can be performed without even clicking on a button. Strokes are a feature that allows you to draw on the screen while pressing the third button on your pointing device to perform an operation. For example, you may have set up a Stroke to limit a transformation to the Y axis. By holding down the third button on your mouse / pen and drawing the shape required to perform this operation (something relating to the operation in question - a 'Y' for example in this case), the specific tool or operation will be selected; even selecting an object and performing the operation if the stoke drawn encircles the object. Strokes can enabled in Customize, Preferences, Preferences dialog, Viewport, Mouse Control group, Stroke, and can be defined by holding CTRL and drawing the stroke using the third button. If you don't have a three-button mouse, you can still access some strokes by using the Strokes utility.

Enlarge ScreenshotSchematic View can also display an object's material properties aswell as it's modifier stack and linking
Enlarge ScreenshotThe additional CTRL right-click menu has the feature of being able to be customised using Maxscript
Enlarge Screenshot
Don't use paths or filenames that are too long to view in the X-Ref dialogue box
Enlarge ScreenshotEnter information about the scene to be stored in the Max file, which can be read by OLE applications
Enlarge ScreenshotSummary Info displays everything that is used to create the scene, including any third party plugin support
Enlarge ScreenshotGhosting is a quick way to view the selected object's motion speed using wireframe copies
Enlarge ScreenshotReal-time motion capture creates more realistic transformations, and can also be used within virtually any animatable property
Enlarge ScreenshotExtracting the rendered z-buffer image from an RLA file makes an excellent bump map for low poly versions of the same mesh
Enlarge ScreenshotPosition any type of light using hilights to illuminate the desired area quickly and accurately
Enlarge ScreenshotUse Match Camera to View for quick camera placement and to reposition over time by repeating the process
Enlarge ScreenshotSet up Level of Detail by setting percentage or pixels viewed limits on the objects within the group
Enlarge Screenshot ...and the final render. The three background ships are low-poly whereas the foreground one is hi-poly
Enlarge ScreenshotCamera clipping can help reduce rendering times, but be careful not to to go overboard!
Enlarge ScreenshotLocate items within files and view their properties easily by using the Maxfinder Utility
Enlarge ScreenshotStrokes - you may never touch the keyboard or click on a button again (apart from creating them...)!

Initially published: 3D World magazine, Issue 1, July 2000.

Copyright Pete Draper, July 2000. Reproduction without permission prohibited.

www.xenomorphic.co.uk