FastCutter Documentation

updated 2017 11 21


FastCutter is an artistic mesh-cutting for 3ds Max, developed in 2006 and 2007 to help the hand-cutting of thousands of pieces of geometry in the road destruction sequence for "2012". Since that time it has been used in dozens of Hollywood films and other independent projects.

The beauty of FastCutter is its speed and artistic control - the cuts are applied exactly as you draw them and there is an "auto-cut" mode to quickly apply the cut after drawing.

It works by hand-drawing "cutting splines" that are extruded and applying noise modifiers, and includes various other options and an Undo function.

It can cut multiple objects at once and there is an option to update the noise parameter per cut-object for a nice staggered offset cut appearance.

FastCutter works especially well with Thinking Particles for destruction shots, and can also be used for creative mesh modeling.


1) The object being cut must not have any overlapping faces – this will create bad booleans.

2) You must NEVER draw a cutter that overlaps itself – this will create bad results.

3) Be sure to start cutting far outside the object, and extend far beyond.

4) Cutting in Perspective view causes extra distortion due to the view matrix.

5) We recommend cutting in orthographic views.


1) Start the script

2) Pick the object(s) you want to cut

3) Click "Start"

4) Double-click to begin drawing the cutting line.

5) Double-click when done drawing the cutting line.

6) Click "Cut It!"


1) Cutting geo in a fresh scene by itself seems to produce a more stable result if you are having crashes during the cutting process.

2) Cutting high-res meshes will be slow.

3) Using a high-res cutter will be slow.

4) High XY fractal noise values will increase the chance of bad results, due to overlapping cutter faces.


Start - begins the process of drawing the cutter. You must have one or more objects selected first.

Cut It! - will peform the cuts

source - select one or more objects and click source to define the source object(s)

cutter - select ONE object to define the cutter object

s - these 's' buttons will select either the source(s) or cutter


There are some small “Power Buttons” next to some of the spinners.

These buttons provide quick functions to set values to a specific value, e.g. 1, 10, 100

or to multiply or divide the current spinner value by another value.


1:1 - sets the Extrude value to match the Normalize value

N/E checkbox - forces Normalize and Extrude to maintain their current proportions

Normalize - controls the cutter spline resolution. Smaller = more

Extrude - controls the cutter extrusion subdivisions. Smaller = more

MatID - controls the MatID of the cutter, and the new “edge” faces of the results.

mMat - special function to automatically create a Multi-SubObject material in slot 1 with this count.


Noise1 & Noise2 Options

There are two noise values to allow adding layers of noise to the cutter. These are called Noise1 and Noise2.

Each noise has two checkboxes on the far left. The first checkbox enables the noise. The second checkbox makes the noise a fractal noise pattern.

Clicking the 1:1 forces the X and Y values of the noise to be the same (uses X as the main value).

XY binds the X and Y noise spinners together.

XY has two spinners and two Power Buttons. Use the spinners to set the AMOUNT of noise.

The Scale spinners control the world-scale of the noise pattern.

Seed controls the Noise modifier Seed value.

nUpdate controls whether the seed is updated when cutting multiple objects.

Using this creates a nice staggered effect when cutting multiple objects.

"Update" automatically re-calculates spline normalization and extrusion subdivisions based on the bounding box the selected source object(s).

TURN THIS ON the first time you want to cut an object (and turn autocut OFF)

TURN THIS OFF to keep consistent settings based on your object's size.

"autoCut" automatically cut the mesh after finishing drawing the spline.

Use this for fast cutting once your settings are dialed in (and turn update OFF).

"close" will prompt you to close the spline. Good for cutting out holes.

ProBool uses the ProBoolean method instead of ProCutter.

This is sometimes a good solution for objects who are difficult to cut (e.g. who have errors when cutting)

Imprint is a special function that adds edges to the sources, but does not cut through them.

Cap will apply a Cap Holes modifier to the source before cutting to ensure it is watertight.

Recommend using this, especially for difficult-to-cut objects.

Source is Shelled allows FastCutter to properly cut objects who are shelled and have inner space.

Only use this if the object is a closed volume AND has a shelled thickness.


Shell disp applies a Shell modifier to the cutter, adding thickness.

The spinner to the right controls the thickness.

dispMap is not currently used.

disp size controls the world-scale size of the displacement.

disp seed sets the random seed for the noise.

STL check checks if the object passes an STL check, adding a Cap Holes if needed.

lock transforms locks the transforms of the results.

collapse results controls whether the results are re-combined or left as separate objects.

parent wirecolor if checked will apply the Source object's wirecolor to all resulting pieces.

random wirecolor will randomize the wirecolors of the results.

XRay will set the results into “xray” display mode (see-through)

The XRay button will toggle the currently-selected objects between XRay or not.

shade obj switches Max's display mode into “Shaded Object Color”

shade mat switches Max's display mode into “Shaded Material Color”


The Layer Isolator dropdown is actually a quick-launch menu for various other tools, however, Layer Isolator is currently the only tool implemented.

Layer Isolator itself is a tool to quickly isolate objects onto their own layer for easy viewing, with the ability to Restore the objects back to their original layer.

Undo last set of cuts is a simple undo method for the last cuts ONLY.

If some results disappear after cutting then use this function.


flush removes all backup sources & cutters and removes the FastCutter layers.

Keeps only the current results and the original Source objects.

kill grid removes the FastCutter drawing grid used for creating splines.

If the grid is not automatically removed during cutting, then use this feature.

Presets opens the “Prefs” window where you can load or save FastCutter settings.

>> more expands the FastCutter UI to show additional options

ProOptimize Cutter applies a ProOptimizer modifier to the cutter before cutting.

This results in optimized “inner faces”.

Add Turn to Poly modifier adds a TurnToPoly modifier, but I forget why we want this. ;)

Keep Cutter will keep the cutter object present so you can use it again if desired.

Auto-Recover Attempts - not implemented yet

Delete Small Results deletes result objets whose bounding box is smaller than the spinner value.

Unlink from Parent - not implemented yet

Keep Parent Pivot - not implemented yet

Skip Undo warning - removes the confirmation when usings Undo Last Cuts

Skip history warnings - ignores << >> history warning messages

reset UI - turns on enabledSceneRedraw() and resumeEditing() (but no longer needed)

Restore Ori Xform - restores the cut result transform.

All cut results have their original transform stored when created. This way you can move or rotate the cut result in order to inspect the quality of the cut. Then press this button to restor the original position, rotation and scale.

Get Cutter(s) - not implemented yet

Get Source(s) - not implemented yet

<< less - hide the extended options

help - not implemented yet

feedback - launch email program to send feedback to developer

debug - prints debug info about the cutting process for debugging purposes

clearListener - clears the MaxScript Listener when cutting starts