Preset_Maker : modifier {d4e56ab,0}
This modifier is applied by the Animation Presets / Offset Controller system originally introduced with 3ds Max 2016 Extension 1. Available in 3ds Max 2017 and higher.
Constructor:
Class instances not directly creatable by MAXScript
See Interface:OffsetManager for indirect creation methods.
Aliases:
Preset_Maker
Publish
Properties:
<Preset_Maker>.showPublishUI : Boolean
Ges/sets the visibility of the "Preset Maker" rollout.
The default is False for modifiers created from a template, and True for template modifiers.
When set to True, an additional "Preset Maker" rollout will be displayed.
When set to False, the additional rollout will be hidden.
This rollout is only displayed when the .showPublishUI property is set to True.
<Preset_Maker>.publishFile : string
Gets/sets the name of the Preset.
The default name of newly created presets is "effect".
This property must be set to a unique name string before saving the Preset to disk – see Interface:OffsetManager for details.
<Preset_Maker>.publishFileOriginal : string
Gets the original Preset name used to create the modifier instance.
Editing the "Name Your Preset" text field will only modify the .publishFile property, while the .publishFileOriginal will retain the original creation-time name.
<Preset_Maker>.InstanceModifierControls : Boolean
Gets/sets the state of the "Instance Modifier Controls" checkbox.
When set to True (default), the modifier controls will be instanced across the objects the Preset is applied to.
<Preset_Maker>.modifierIDList : int array
Gets the Preset_Maker Modifier’s ID list, which is a unique identifier assigned to the Preset at creation time.
All modifier instances created from the same Preset will contain the same ID values.
<Preset_Maker>.transform : Boolean
Gets whether the Preset Modifier will apply transform animations.
<Preset_Maker>.modifier : Boolean
Gets whether the Preset Modifier will apply modifier animations.
<Preset_Maker>.material : Boolean
For future use.
<Preset_Maker>.InstanceTMControls : Boolean
For future use.
<Preset_Maker>.InstanceMaterialControls : Boolean
For future use.
<Preset_Maker>.originalTM : maxObject
Gets the original Transform controller of the object.
<Preset_Maker>.originalVis : maxObject
For future use.
<Preset_Maker>.originalMat : material
For future use.
<Preset_Maker>.timingUI : maxObject
Gets the instance of the offset : floatController which is exposes the Timing User Interface – see below for its properties.
The offset floatController is the control object which implements the offsetting of animation timing across multiple objects.
Its properties are exposed as UI controls in the Preset_Maker Modifier.
Class instances of this controller cannot be created by MAXScript, but existing instances referenced by the Preset_Maker modifier can be accessed via the modifier’s .timingUI property (see above).
Aliases:
offset
offsetTimer
<offset>.X : Boolean
Gets/sets the state of the "Use Axis" > "X" checkbox.
When set to True (default), the X local axis of the picked center object will be used to measure the distance to the other objects with the same Preset_Maker modifier.
<offset>.Y : Boolean
Gets/sets the state of the "Use Axis" > "Y" checkbox.
When set to True (default), the X local axis of the picked center object will be used to measure the distance to the other objects with the same Preset_Maker modifier.
<offset>.Z : Boolean
Gets/sets the state of the "Use Axis" > "Z" checkbox.
When set to True (default), the X local axis of the picked center object will be used to measure the distance to the other objects with the same Preset_Maker modifier.
<offset>.ID : float
Gets/sets the Order ID value.
The ID is used to sort the objects with the same preset in order to offset them differently - objects with the same ID will have the same offset, and lower IDs are offset less than higher IDs.
"Animation Settings" group of controls
<offset>.animcationLength : time
Gets/sets the value shown by the "Original Animation Length" label.
This value is normally initialized to the Preset animation’s length, but it can be modified via MAXScript.
Since the "Original Animation Length" is used to determine the animation speed by dividing it by the .lengthOffset value, changing either of them will affect the playback speed of the offset animation.
However, it is recommended to always modify the .lengthOffset value which is exposed as a value spinner in the UI for that purpose.
<offset>.startOffset : time
Gets/sets the value of the "Start Offset" value spinner.
<offset>.lengthOffset : time
Gets/sets the value of the "Set Length" value spinner.
<offset>.useGraph : Boolean
Gets/sets the state of the "Animation Ease Graph" checkbox.
<offset>.graph : maxObject
Gets the object containing the Ease Graph CurveControl object.
To get and set these values, use the functions described in the topic "Controller Out-Of-Range Functions"
"Offset Settings" group of controls
<offset>.Direction : integer
Gets/sets the selection of the "Playback Type" drop-down list.
Possible values are:
<offset>.perNodeOffset : time
Gets/sets the value of the "Per Node Delay" value spinner.
This value controls the actual time offset between the animations of two objects with the same Preset which are sorted one after the other based on their IDs.
<offset>.useRandomPerNode : boolean
Gets/sets the state of the "Random Delay" checkbox.
Default is False.
When set to True, the .randomPerNodeOffset property will be used to vary the .perNodeOffset value between objects for a more natural look.
<offset>.randomPerNodeOffset : time
Get/set the value of the "Random Delay" value spinner.
It is used only when the .useRandomPerNode property is set to True.
<offset>.usePerNodeGraph : Boolean
Get/set the state of the "Per Node Ease Graph" checkbox.
Default is False.
<offset>.perNodeGraph : maxObject
Get the "Per Node Ease Graph" CurveControl object.
<offset>.numNodes : integer
Gets the number of objects the Preset_Maker modifier is applied to.
While setting the value is possible, it serves no practical purpose as the value is for reference purposes only and modifying it does not affect the actual offset animation.
<offset>.randomList : int array
Gets the random order to use when .Direction is set to 4 – Random.
The array will contain the same amount of integers as the number of objects with the Preset applied.
The list items from 1 to N represent the sorted list of objects.
The values of the items represent the order from 0 to N-1 in which the animation offset will be applied.
For example, #(2, 19, 5, 17, 7, 0, 12, 11, 15, 4, 3, 13, 1, 6, 10, 9, 14, 20, 8, 16, 18) means that the 6th object will play back first (value of 0), then the 13th object will play second (value of 1), then the first (value of 2), and so on.
<offset>.startTime : time
Not exposed in the UI.
<offset>.random : float
Not exposed in the UI.
<offset>.Control : float
Not exposed in the UI.