All of the 3ds Max object types (i.e. instances of classes derived from Object
) accessible in MAXScript are represented by instances of the MAXWrapper
and derived classes. These are declared in the header file maxscrpt
/maxobj.h. The wrapped reference is a reference created with ReferenceMaker::ReplaceReference()
. The MAXWrapper
class inherits from both Value
and ReferenceMaker
. This reference allows MAXScript to be notified of MAX-side changes to the object, particularly deletion.
The classes that derive from Value:
MAXNode
MAXModifier
MAXControl
MAXKey
MAXMaterial
MAXMultiMaterial
MAXTexture
MAXMaterialLibrary
MAXObject
MAXSubAnim
The class MAXBitMap
is used to wrap 3ds Max bitmaps, but it is not a ReferenceMaker
because bitmaps in MAX can not be a reference target.
The MAXSubAnim
which is used to wrap objects which derive from Animatable
and are accessible inside other Max objects via the Animatable::SubAnim()
function. This is used in MAXScript to wrap the modifier gizmo sub-objects, for example.