The MAXScript engine represents values using the class Value
or a derived class. The Value
class is defined in the file maxscrpt
\value.h. The MAXScript engine also uses wrapper classes to act as proxies for objects in the 3ds Max SDK. These wrapper classes derive from the MAXWrapper
class which is defined in the file maxscrpt
\maxobj.h. The MAXWrapper
class derives from both Value
and ReferenceTarget
. Some examples of proxy classes include MAXObject
, MAXNode
, MAXModifier
, and MAXControl
.
Virtually all MAXScript API functions and macros pass Value
(or derived class) instances by pointer.
All non-static instances of the Value
class family should be heap-allocated with operator
new() or one of the following helper functions so that garbage collection will work:
Float::intern()
Integer::intern()
Name::intern()
Name::find_intern()
MSTime::intern()