Scripts |
| |
|
| Last updated: September 20, 2006 |
At Illusion Studio, we develop tools and utilities that will help us in the production pipeline. We are not responsible for any downloads that do not work for you or cause you damage. Please report any bugs in these scripts to us at Scripts@IllusionStudioInc.com. |
|
|
|
|
|
|
|
|
|
|
Illusiion Installer:
We have packed all the scripts together into an easy-to-install .exe file. Download the installer for the option to install any of the scripts to your max root folder. All scripts will be found under the Illusion Script categories.
|
Max 7 & 8
Max 9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
| Animation Range |
Provides the user with immediate access to the scene's animation start and end times, as well as toggling Real Time playback on and off -- useful for visualizing non-cached Particle Flows. This small tray will immediately dock itself under the trackbar for easy access.
|
|
|
|
| |
|
Auto Cache |
This script will automatically cache objects using the Cache Transforms method, or a Point Cache method, depending on the type of object. It can work on the entire scene or just your selection. Specify the output path for the cache files to be dumped to, press the button, and kick back.
|
|
|
|
| |
|
| Auto Reload |
This is like having a pop-up window showing a dropdownlist containing recently accessed files. Its basically an "Open Recent" menu that shows up right when you start max, saving you an extra step. If you want this feature, drag the "Startup_Auto_Reload.ms" file from your 3dsmax\Scripts\Illusion_Scripts\ directory and drop it in the Startup folder in 3dsmax\Scripts\. The next time you start up, you'll see it.
|
|
|
|
| |
|
| Batch Animation Preview |
This script will automatically perform animation previews on every file in the list. Simply Drag-and-Drop files into the list to populate it. Most of the settings in the Batch Settings rollout are direct copies of the options in the standard Make Preview dialog. However, there are some added options to deal with automatically detecting ranges in camera names, using all cameras, etc. If a file is included in the batch process and it doesn't have any cameras, nothing will happen and the next file will be loaded.
There are options to output .MOV files, .TGA sequences, and .JPG sequences. However, there are a few short-comings with a couple of these output methods. First, .MOV compression choices must be referenced by index. What this means is, when you get to the Compression Settings dialog while doing a manual preview creation, you usually choose a compression from the drop-down list. This script requires you to enter which compression to use by its order in the list, minus one. So if you want to use the 11th compression method in the list, you enter 10 in the Compression index spinner. On the computer the script was developed on, 10 is H.264 compression. However, this will change depending on the workstation and the number of compression algorithms known to QuickTime. The good news is that the script will remember the last compression index entered by the user. Also, the quality slider is inaccessible to MXS. The workaround to this is to first create a preview manually using the desired quality setting, so that when the Batch Preview executes the quality slider will default to whatever was last used.
.JPG sequences have a similar pitfall. For your desired .JPG settings, you will have to manually create a .JPG sequence to have the settings defaulted to those values during the Batch Preview. You should only have to do this once, since 3ds Max will remember the last settings. It may not be necessary at all, since I believe the default .JPG settings are full quality, and unless you change them, they should default to those values.
|
|
|
|
|
|
| Biped Help |
A small biped selection tool inspired by Jim Jagger's similar script. This extremely small floater allows you to navigate through the selected biped's parts. Simply select a component of the biped you wish to navigate through, and click the corresponding button to select that biped component. |
|
|
|
|
|
| Cache Loader |
This is the companion script to Auto Reload. Browse for a directory to load cache files from, and it will try to match the names of those files to either your entire scene or your selection. If a file matches successfully, it will load the cache file (either a .dat or a .pc2) in the appropriate manner on that object. If it fails to match a file to an object, you'll be notified in the status window at the bottom.
|
|
|
|
|
|
| Cache Transfroms |
When Point Cache just won't do. This script records the specified object's transform matrix for the specified frame range to an external file. This file can then be applied to the same object in another file, or something completely different through the "Assign Cache" feature in the script.
|
|
|
|
|
|
| Cleanse Objects |
This utility will scan through either the user's selection or all objects in the scene, and optionally delete empty objects, weld duplicate vertices, delete isolated vertices, all while respecting instanced objects in the scene. The X-Form of all scanned objects will be corrected as well, and the user has the option of showing statistics of everything the script rectified during the scan. This script is to scene files as defrag is to harddrives. We've experienced significant file size reductions after performing this script, and it will usually fix problems that cause files with the scanned scene X-Ref'd to crash on open.
|
|
|
|
|
|
| Clutterizer |
Designed for artists to quickly place props around scenes. Initially the scene objects that you wish to designate as props must be loaded into the drop-down list. The user has the options of adding his/her current selection, selecting objects from a scene object list, and removing existing props. At this point the artist can simply press Specify Locations and use their mouse to paint locater objects onto another scene object. The locater objects automatically use the normal of the face they are sitting on as their up direction, so all props are properly placed once Populate is pressed. Other options include random directional rotation variation, scale variation, spin variation, the ability to change which axis points "up" from the face normal, and saving the current settings as default settings.
|
|
|
|
|
|
| LightSheet |
Under the tabs in this script's UI you can find its three main groups of functionality: Exclude/Include, Subsets, and Miscellaneous. Exclude/Include is a feature set that easily manages adding and removing objects from a single or multiple light's exclude/include list. There is a toggle button at the bottom right hand corner that controls whether the scene and light list are synchronized, meaning selections in one will propagate to the other. This panel also houses some very handy visualization tools that will aid you in your lighting quest.
The Subsets tab controls all Subset functionality. Subsets are a novel grouping mechanism that lets you group lights together without having to actually group them, and doesn't even put them in the same layer. It allows the script to change properties en masse on a single or multiple subsets, such as color, multiplier, shadow map size, etc.
Misc. just holds some handy utilities. Most of them are self-explanatory, but Shadow Presets requires a short explanation. Essentially it lets you save all shadow properties from a selected light to a file on your hard drive. You can then apply just those shadow properties to future selections. Tired of setting shadow map size to 1024 with absolute map bias on and slightly blue shadows? Just make a preset for it.
|
|
|
|
|
|
| Mapocide |
This script will try to remove all the maps in the scene. Usually a restart of max is necessary afterwards since material libraries like to hang around until max closes.
|
|
|
|
|
|
| MonkeyBridge |
MonkeyBridge is based off of MonkeyShuffle, a script by Keith Lango. To use it, first you need to install MonkeyJam from this website. This is an animation workflow tool to easily time out your animations. In 3ds Max, make sure you have a selection set of all of the rig's control objects (or any other method that lets you select every control object) so that you can instantaneously set keys on them. Then go ahead and set your key poses for the animation, being careful to set keys for every control at these key pose times. After you have some key poses, go ahead and set the Image Export Path to some location, and press Export Images. The script will then capture images at every key pose it detects, and will export an exposure sheet (MonkeyJam file) along with them. From there you can launch MonkeyJam, and load the exported exposure sheet. The advantage to working out your timing in MonkeyJam is that it is extremely fast, whereas the max viewports are sometimes too slow to get a good feel for the time between key poses.
You can also make previews within MonkeyJam (much faster than waiting for 3ds Max previews). To extend the timing of a particular key pose, press the + key while the key pose is selected. When you're satisfied with your timing, go ahead and save the MonkeyJam file. Back in 3ds Max, you can use MonkeyBridge to apply the timing from the MonkeyJam file to your max file. Specify which exposure sheet to use by setting the "X-Sheet File In:" field, and click Apply Timing with the control objects selected. All the keys for the selected control objects will now match the timing from the MonkeyJam file.
|
|
|
|
|
|
| Morph Assistant |
Allows the artist to mirror the vertices of one side of a mesh to the other. This script is meant to be used when creating morph targets, as it does not change vertex numbers. Instead it relies on vertex positional computation to achieve its symmetry and mirroring abilities. It is important to note that the model being prepped for morph target creation must exist at the origin, with the center-line of vertices on the model lying as close as possible to the origin as well. The threshold value allows a little forgiveness but sacrifices accuracy.
The workflow is as follows: The base (unchanged, neutral mesh) is selected using the “Pick Base Mesh” pick-button, and the threshold value is calibrated accordingly using the “Test” button. The “Test” button will show the user which vertices the script is detecting as the center-line vertices. “Target Object: groups-buttons correspond to the user’s currently selected object. If the currently selected object is not a valid morph target for the Base Object, the script will notify the user. The script allows for a single undo operation, should things go unexpectedly. As always, save your work prior to execution. All meshes must be Edit Poly objects.
|
|
|
|
|
|
| Quick Align |
Align one object's position and rotation to another's with a single click -- more intuitive than the shipping Quick Align.
|
|
|
|
|
|
| Render PreComposer |
A small utility that lets lighting artists composite renders together. For example, you might want to see what your scene looks like with AO but don't want to open a compositing package. Either load an image from disk or render a new diffuse pass from within the script's UI. Then render the AO pass. Click on the AO pass and set the blending mode to Multiply.
|
|
|
|
|
|
| RenderTab |
This is our custom overhaul of the Batch Render utility included in 3ds Max. It works in essentially the same way, but better. An advantage to RenderTab is that it is capable of being controlled by other scripts. For detailed documentation on the inner workings of this script, please refer to the header inside the script itself.
|
|
|
|
|
|
| Selection Navigator |
A handy menu to navigate through objects. From the selected object, you can select the object's parent, hop back to that object's child, or even cycle between all of the siblings of an object. Allows hide/unhide and freeze/unfreeze options as well, to unhide/unfreeze children or parents you are navigating through. Also features a text box where you may enter any text, and the script will select all of the objects in the scene that contain that text in their names. This small tray will immediately dock itself under the trackbar for easy access.
|
|
|
|
|
|
| Shot Navigator |
In the studio we adhere to a camera naming convention that specifies the shot name, and the frame ranges the camera is used for. For example: "S13 (0-100), (130-320)". The Shot Navigator enables us to immediately switch the current active viewport to the selected camera in the list as well as setting the range selected in the dropdownlist. If you make an animation preview with the Shot Navigator open, you have the option to apply an information stamp to the header or footer of the image.
|
|
|
|
|
|
| SkyBox Renderer |
A network rendering-capable en masse renderer of SkyBoxes and Cubemaps for game developers. The workflow is as follows: The artist places dummy helpers in each area of the scene file where he/she wishes to generate a cubemap. From the script’s user interface, the user can generate the cameras for each dummy by clicking “Create SkyBoxes.” If “Use Dummy Name” is checked, the cameras will be named according to their parent dummy; otherwise they will be named according to the user’s input into the “Name Prefix” field. The list will fill with all of the generated skyboxes. From here the user can click on a list item, and the corresponding skybox dummy will be selected in the scene. If the user wishes to preview a certain angle from the selected item, he/she can click on one of the “R” (for render) buttons below the list that corresponds to the desired view. The output directory , preview size and output size, may be set in the “Rendering” group. When “Net Render” is checked, the script will send jobs to the backburner manager via the “Connection Settings” accessible through the “Utilities” menu. “Initially Suspended” AND “Include Maps” options are also available. It is important to note that when rendering over the network, the output path must be a shared location, just as with normal network rendering. When returning to a scene file which had cameras generated by this script, the old cameras should be deleted using the “Select Green Cameras” took under the “Utilities” menu. The skyboxes will then need to be regenerated using the Dummy Name to restore the skyboxes to the list. Should the user wish to delete one of the dummies from the scene, he/she will have to similarly re-generate the skyboxes in order to avoid errors in the “SkyBox Nodes” list. These minor inconveniences will be addressed sometime in the future with the next update.
|
|
|
|
|
|
| Smoothing Manager |
Allows user to easily manage instanced Turbosmooth and Meshsmooth modifiers. The origin of this script was the necessity of quickly toggling large groups of objects' smoothing iterations when managing files for render time. The script also allows the artist to remove smoothing modifiers en masse from selections, break them into unique groups, set default parameters of instanced and non-instanced smoothing modifiers when they are applied through the script, and selecting every object that has the instanced modifier in the scene, for easy iteration manipulation.
|
|
|
|
|
|
| Z-Depth Batch |
This script will perform a local batch rendering process where all of the files in the list will have their Z-Depths rendered for every camera and every range within those cameras' names (whew). If no range is detected in the camera name, a single image will be outputted to the specified directory, otherwise the sequences will automatically be placed in the specified directory in sub-folders named after the cameras they came from.
|
|
|
|
|