3ds Max C++ API Reference
Loading...
Searching...
No Matches
AnimatableFlags.h File Reference

Macros

#define ANIMTYPE_NODE   1
 
#define ANIMTYPE_ROOTNODE   3
 
#define ANIMTYPE_CONTROL   2
 
#define MAX_TRACK_VIEWS   16
 
#define ALL_TRACK_VIEWS   0xffff
 
#define MAX_TRACKVIEW_SELSETS   16
 
#define TRACKVIEW_NODE   0
 'type' argument to the OpenTreeEntry, CloseTreeEntry, IsTreeEntryOpen methods
 
#define TRACKVIEW_ANIM   1
 operate on the tree based on the animatable/subanim relationship
 
#define A_DERIVEDOBJ_DONTDELETE   (1<<9)
 When the last modifier is deleted form this derived object, don't delete the derived object.
 
#define A_COMPONENT_LOCKED   (1<<19)
 Needed for CompositeBase and its children.
 
#define A_TVNODE_DONTRESACLECONTROLLERS   (1 << 5)
 Don't call RescaleWorldUnits on sub-controllers.
 
#define A_CHANGE_PARENTS_DONE   (1<<17)
 Used internally.
 
#define A_REFMAKER_REFS_CHECKED   (1<<18)
 Used internally.
 
#define A_DEPENDENCY_TEST   (1<<26)
 Used to test for a dependency.
 
#define A_LOCK_TARGET   (1<<27)
 Ref target isn't deleted when dependents goes to 0 if this flag is set.
 
Atmospheric flags
#define A_ATMOS_DISABLED   (1<<5)
 The atmosphere effect is disabled.
 
#define A_ATMOS_OBJECTXREF   (1<<6)
 Not used anywhere.
 
#define A_ATMOS_SCENEXREF   (1<<7)
 An atmospheric scene xref.
 
Tone Operator flags
#define A_TONEOP_DISABLED   (1<<5)
 The exposure control is disabled.
 
#define A_TONEOP_PROCESS_BG   (1<<6)
 The exposure control proceses the background.
 
#define A_TONEOP_INDIRECT_ONLY   (1<<7)
 Only processes indirect lights only.
 
Object flags
#define A_OBJ_CREATING   (1<<5)
 The object is being created. It doesn't want to snap to itself.
 
#define A_OBJ_LONG_CREATE   (1<<6)
 Persists throughout the whole creation process as opposed to A_OBJ_CREATING which gets cleared as as the object is added to the scene.
 
#define A_OBJ_BEING_EDITED   (1<<7)
 The object is being created. It doesn't want to snap to itself.
 
Modifier flags
#define A_MOD_DISABLED   (1<<5)
 The modifier is disabled.
 
#define A_MOD_BEING_EDITED   (1<<6)
 The modifer is deleted.
 
#define A_MOD_USE_SEL   (1<<7)
 No longer used - use sub-ob selection.
 
#define A_MOD_DISABLED_INVIEWS   (1<<8)
 Modifier is disabled in viewports only.
 
#define A_MOD_DISABLED_INRENDER   (1<<9)
 Modifier is disabled in renderer only.
 
Modapp flags
#define A_MODAPP_DISABLED   (1<<5)
 Used internally.
 
#define A_MODAPP_SELECTED   (1<<6)
 parent node is selected
 
#define A_MODAPP_DISPLAY_ACTIVE   (1<<7)
 Used internally.
 
#define A_MODAPP_DYNAMIC_BOX   (1<<8)
 Used internally.
 
#define A_MODAPP_RENDERING   (1<<9)
 Render begin turns this on and render end turns it off.
 
Control flags
#define A_ORT_MASK   7
 Used internally.
 
#define A_ORT_BEFORESHIFT   5
 Uses bits 5,6 and 7 to store ORT.
 
#define A_ORT_AFTERSHIFT   8
 Uses bits 8,9 and 10 to store ORT.
 
#define A_CTRL_DISABLED   (1<<11)
 Used internally.
 
#define A_ORT_DISABLED   (1<<19)
 Indicates that the ORT is disabled.
 
Inode flags
#define A_INODE_IK_TERMINATOR   (1<<5)
 Terminates the top of an IK chain.
 
#define A_INODE_IK_POS_PINNED   (1<<6)
 The position is pinned.
 
#define A_INODE_IK_ROT_PINNED   (1<<7)
 The rotation is pinned.
 
#define A_INODE_CLONE_TARGET   (1<<8)
 Terminates the top of an IK chain.
 
#define A_INODE_IN_UPDATE   (1<<9)
 Used internally only.
 
#define A_INODE_IN_UPDATE_TM   (1<<10)
 Flag is set if it's updating it's TM. Don't Call GetNodeTM if it is.
 
Paramblock2 flags
#define A_PB2_POSTLOADCALLBACK   (1<<5)
 Set when a Paramblock2 has added itself to the PostLoadCallback used so we dont add multiple copies to the array.
 
Flags for Hold and Restore logic

For "lazy holding" to avoid multiple holding.

#define A_HELD   (1<<12)
 Typically a plug-in would not hold unless this flag was not set.

 
#define A_SET   (1<<13)
 Similar to A_HELD except is used by controllers.
 
#define A_IS_DELETED   (1<<14)
 Used internally.
 
#define A_BEING_AUTO_DELETED   (1<<15)
 Used internally.
 
Reserved for superclass use
#define A_SUPERCLASS1   (1<<20)
 
#define A_SUPERCLASS2   (1<<21)
 
Reserved for use by plugins

These flags are not persisted with the max file, thus they should only be used as temporary storage.

It is highly recommended that plugin code clears the flag it wishes to use before starting to set it on Animatable instances.

#define A_PLUGIN1   (1<<22)
 
#define A_PLUGIN2   (1<<23)
 
#define A_PLUGIN3   (1<<24)
 
#define A_PLUGIN4   (1<<25)
 
General work flags

These flags can be used by both 3ds Max and plugins.

These flags are not persisted with the max file, thus they should only be used as temporary storage. It is highly recommended that plugin code clears the work flag it wishes to use before starting to set it on Animatable instances.

#define A_WORK1   (1<<28)
 
#define A_WORK2   (1<<29)
 
#define A_WORK3   (1<<30)
 
#define A_WORK4   (1<<31)
 
Values for Animatable extended flags.

Reserved for future internal use

See also
Animatable::SetAFlagEx(DWORD mask)
Animatable::ClearAFlagEx(DWORD mask)
Animatable::TestAFlagEx(DWORD mask)
#define A_EX_ANIMATABLE_FILE_SAVE_LOCKED   (1<<0)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B00   (1<<0)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B01   (1<<1)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B02   (1<<2)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B03   (1<<3)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B04   (1<<4)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B05   (1<<5)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B06   (1<<6)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B07   (1<<7)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B08   (1<<8)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B09   (1<<9)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B10   (1<<10)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B11   (1<<11)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B12   (1<<12)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B13   (1<<13)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B14   (1<<14)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B15   (1<<15)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B16   (1<<16)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B17   (1<<17)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B18   (1<<18)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B19   (1<<19)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B20   (1<<20)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B21   (1<<21)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B22   (1<<22)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B23   (1<<23)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B24   (1<<24)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B25   (1<<25)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B26   (1<<26)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B27   (1<<27)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B28   (1<<28)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B29   (1<<29)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B30   (1<<30)
 Animatable is being used in a scene file save and is locked.
 
#define A_EX_RESERVED_B31   (1<<31)
 Animatable is being used in a scene file save and is locked.
 
Values for Animatable::aflag

The following flags are bits of the aflag data member of class Animatable.


See methods Animatable::ClearAFlag(), Animatable::SetAFlag() and Animatable::TestAFlag() to work with these flags.

#define A_EVALUATING   1
 Used Internally.
 
#define A_NOTIFYDEP   (1<<1)
 Used Internally.
 
#define A_DEPENDENTS_BEING_ENUMERATED   (1<<2)
 Used Internally.
 
#define A_ANIMATABLE_FILE_LOAD_LOCKED   (1<<3)
 Animatable is being used in a scene file load and is locked.
 
#define A_OBJECT_REDUCED   (1<<4)
 Used Internally.
 

Macro Definition Documentation

◆ ANIMTYPE_NODE

#define ANIMTYPE_NODE   1

◆ ANIMTYPE_ROOTNODE

#define ANIMTYPE_ROOTNODE   3

◆ ANIMTYPE_CONTROL

#define ANIMTYPE_CONTROL   2

◆ MAX_TRACK_VIEWS

#define MAX_TRACK_VIEWS   16

◆ ALL_TRACK_VIEWS

#define ALL_TRACK_VIEWS   0xffff

◆ MAX_TRACKVIEW_SELSETS

#define MAX_TRACKVIEW_SELSETS   16

◆ TRACKVIEW_NODE

#define TRACKVIEW_NODE   0

'type' argument to the OpenTreeEntry, CloseTreeEntry, IsTreeEntryOpen methods

See also
Animatable::OpenTreeEntry(int type, DWORD tv)
Animatable::CloseTreeEntry(int type, DWORD tv)
Animatable::IsTreeEntryOpen(int type, DWORD tv) operate on the tree based on the node parent/child relationship

◆ TRACKVIEW_ANIM

#define TRACKVIEW_ANIM   1

operate on the tree based on the animatable/subanim relationship