Time Range Manager

24 votes
Date Updated: 
Author Name: 
Lorne Brooks

Allows you to edit and save a collection of named time ranges and access them via a dropdown list to change the scene time range based on their time settings.

Ranges are stored as a collection called sets. Multiple sets are then stored as a collection called projects.

The data is stored in INI files and so makes it independent of any maxfile.

There's also a compact option by clicking the thin bar above the ranges list.


Additional features include:

Time Tags

Edit scene time tags using the ranges data and transfer this data between scene time tags, loaded ranges or a text file for easy name editing. Create time tags using the interface in the format name[space]startTime[dash]endTime by typing a sequence name, dragging the time slider then clicking Start, drag again and End.


FBX Export Animations

Export animations to FBX format using either the currently loaded Ranges or Time Tags as the source for the exported animation name and time range. Both options allow for exporting either the whole scene (if nothing is selected) or by selection. The output files will be saved to the current Max scene folder.

Optionally choose some exposed FBX settings via a separate dialog.

Note: FBX will always attempt use the keys set on the selection which will override any time range you've set or specified in the time tags - as keys may exist outside of the range. For this function to work correctly, you should animate your rig indirectly by constraining the export bones to other control objects that receive animation data. This way when you select the export bones (that your mesh may be skinned to), they won't have keys directly on them and FBX will use whatever time range is set instead.


Separate Maxfiles

Split a composite maxfile animation (many sequences one after another) into separate maxfiles based on stored ranges or time tags. The script will remove all keys on selected objects either side of a specific range then move the remaining keys within the range to start at frame 0. The time range will then be adjusted to fit and a new maxfile saved into the same scene folder as the original composite animation file.

Note: Only tested on regular controllers, CAT rigs and Biped. The use of expressions, constraints, or parameteric controllers may not work.


Camera Switching

Cameras in the scene will be recognized by the ranges dropdown list, based on a range name prefix matching the camera name.

The currently selected viewport will switch to the camera (if available) automatically.

For example:

Camera names - Cam1,  Cam 2 and Cam3


The initial script was inspired by another script called "Frame Range Manager" written by Borislav "Bobo" Petrov.





Version 2.5;
- Added a button which opens a new dialog that exposes some optional FBX export settings.
- Exporting FBX animation now exports either the whole scene (if nothing is selected) or only the selection for both Ranges and Time Tags options.

Version 2.4;
- When switching between ranges using the dropdown list, if the range name contains a prefix that matches an existing camera in the scene then the current viewport will switch to use that camera. The prefix is denoted by the substring up to the first underscore.

Version 2.3;
- Contact email changed.

Version 2.2;
- Project and Set dialogs now move with the floater and also affect the position of the floater if they are moved.

Version 2.1;
- Added a new rollout containing functions to split combined animations based on either ranges or time tags into separate maxfiles which are named according to the range name. Keys on the selected objects will be trimmed to the range limits and moved to start at frame 0 with the time range adjusted to fit. Output animation files are saved to the same folder as the original composite scene file.

Version 2.0;
- Changed the FBX file version array to use the correct 2006 string for the parameter setting.
- Added an ASCII output option for FBX exporting.

Version 1.9;
- Added a dropdown list to choose which FBX version to use when exporting range or time tag animations.

Version 1.8;
- Added a function to export separate FBX animations based on the loaded ranges.
- Added the ability to delete scene time tags.
- Added the ability to create a time tag using the interface that's compatible with the other script functions.

Version 1.7;
- Added an Export FBX Animations option for use with Time Tags.
- Converted code to use a struct to minimize global variables.
- Minor bug fixes.

 Version 1.6;
- Improved the UI a bit, see notes in script.

Version 1.5;
- UI adjustments including: widened ranges dropdownlist and allowed more items in the list, changed names for reload and delete ranges buttons, added style settings to compact version.

Version 1.4;
- Added button F which allows you to add a new range called (FULL_RANGE) with the lowest start time and highest end time calculated from the loaded ranges.

Version 1.3;
- Added a thin button above the ranges dropdown list which loads a compact dialog showing only the loaded ranges and reload button. The dialog has the same thin button which reloads the TRM floater.

Version 1.2;
- When loading ranges from scene time tags or a text file, script now handles invalid formats.
- Help button ? added to Time Tags rollout to show correct formatting.

Version 1.1;
- Fixed bug with sorting sets when scene time tags copied to ranges.

Version 1.0;
- First release



Additional Info: 

The script can be found in category “LB Tools”.


Drag the MZP file into your Max viewport.

Files will be copied to...


Version Requirement: 
3dsmax 2008-2016
lbtools_time_range_manager.mzp15.54 KB


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
lbrooks's picture

Re: FBX 2016??

I've added support for version 2016 and I exposed some more FBX settings to a separate dialog. The FBX animation settings for the name and range are controlled by the manager, as they are based off the loaded ranges or time tags.

Lorne Brooks

dukewewe's picture

FBX 2016??

no FBX 2016 ?
and more setting FBX export


freemanpro's picture

Alternative Run

hi.. thx for best script.. How i get .mcr file to load this script without post it in startup . thx

ok i done it..

I added a little under the exporter to discharge under the engine. in this script it was not difficult to do . thank you very much for the script.

example :


atanguay's picture

Super Handy! Thanks!

What an incredibly handy script...thank you!

I have 32 cameras in a scene and need to bop between them while setting up renders. This makes setting their proper ranges a breeze.

If I had one suggestion, it would be the ability to tie a camera to a range so that the range would set as well as the appropriate camera. Just an idea really...it's still an indispensable script.

lbrooks's picture

Re: The script is really cool


I've added the ability to split up sequences into new maxfiles using tags or store ranges. It will remove the keys either side of the range and move the remaining keys to start at 0.

I've only tested this on simple cases like, regular animated objects (directly keyed), human CAT rigs and standard Biped. If you're using more complex rig setups including constraints, expressions, parametric controllers (like noise), etc - then the script may not work for those cases, as it requires "normal" controller keys to move.

Let me know if this suits your needs.

Lorne Brooks

lbrooks's picture

Re: Hello... I jumped the gun too

I found the issue was with the 2006 string for setting the parameter. Should be fixed now. I also added an ASCII output option so you can check the version within the FBX in notepad.

Lorne Brooks

mickepe's picture

Hello... I jumped the gun too

Hello... I jumped the gun too quickly. The engine is still throwing a fit due to the fbx file version. Did you upload the latest version of your script?

embonchen's picture

The script is really cool,

The script is really cool, and it's a closest thing to the script I've been looking for: a script that split animations in one 3dsmax file to multiple fbx or max files, cos deleting-moving frames to get the animation separated is bored like hell.

But exported fbx files contain out of range frames (like you said above)

Please make a button to save the ranges to separated .max files (each file has one single trimmed animation range and start at 0) that would be awesome.

Thank you for making this script dude, you're the man.

mickepe's picture

Your support is brilliant

Your support is brilliant Lorne! Thanks again.
(The version number in the scripts about box is still set to 1.8)

lbrooks's picture

Re: FBX version

The export settings are being set internally in the script, though previously only for animation related parameters. I've added a dropdown list now to enable setting of the FBX version prior to export - down to version 2006. I was unable to test this, but it should work fine.

As I understand it through my own experiments, the maxscript settings will override any manual settings from your last manual export. It seems the two are kept separate internally. For a scripted export tool, this means you can set whatever you need at any time without concern for manual settings entered by the user.

We tend to handle most export settings internally (via script) at work, as most artists just want to export quickly without dealing with many complex settings each time. Certain settings may be exposed in a separate dialog (like geometry smoothing or triangulation), but most are controlled internally and execute via a limited export tool interface.

Lorne Brooks

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.