#include <IGameObject.h>
Simple wrapper for IKChains.
An IGame wrapper around the IKChain object.
This object be used as a basis for character export. All nodes used in the chain are maintained by the IGameIKChain interface. This allows animation to be exported based on whether it is in IK or FK mode. If the IK is enabled then the IGameControl retrieved from the IGameNode will be that of the End Effector for the chain. If it is in FK mode then the IGameControl from the nodes in the chain would be used for the FK calculation.
Public Member Functions | |
virtual int | GetNumberofBonesinChain ()=0 |
Get the number of nodes that make up the chain. More... | |
virtual IGameNode * | GetIGameNodeInChain (int index)=0 |
Access to the n'th node in the chain. More... | |
virtual IGameProperty * | GetSwivelData ()=0 |
Get the swivel data. More... | |
virtual IGameControl * | GetIKEnabledController ()=0 |
Get the controller for the IK enable. More... | |
Public Member Functions inherited from IGameObject | |
IGameObject () | |
Default constructor. More... | |
IGAMEEXPORT void | GetBoundingBox (Box3 &bb) |
The bounding box of the object. More... | |
IGAMEEXPORT bool | IsRenderable () |
Check if object renderable. More... | |
virtual ObjectTypes | GetIGameType ()=0 |
The IGame object type. More... | |
IGAMEEXPORT Object * | GetMaxObject () |
Access to the actual 3ds Max object. More... | |
IGAMEEXPORT MaxType | GetMaxType () |
The 3ds Max object type. More... | |
IGAMEEXPORT int | GetNumModifiers () |
The number of modifiers active on the object. More... | |
IGAMEEXPORT IGameModifier * | GetIGameModifier (int index) |
Access to IGame modifier. More... | |
IGAMEEXPORT | IGameObject (INode *node) |
The IGameObject constructor. More... | |
IGAMEEXPORT bool | CastShadows () |
Check if Object casts shadows. More... | |
IGAMEEXPORT bool | IsObjectSkinned () |
Check if object skinned. More... | |
IGAMEEXPORT IGameSkin * | GetIGameSkin () |
Access to the Skin interface. More... | |
IGAMEEXPORT bool | IsObjectXRef () |
Check if XRef object. More... | |
IGAMEEXPORT GMatrix | GetIGameObjectTM () |
Access to the ObjectTM. More... | |
virtual bool | InitializeData () |
Extract the 3ds Max data into IGame data. More... | |
virtual | ~IGameObject ()=0 |
Public Member Functions inherited from IExportEntity | |
virtual | ~IExportEntity () |
Destructor. More... | |
virtual IPropertyContainer * | GetIPropertyContainer () |
Retrieve the Property Container. More... | |
virtual bool | IsEntitySupported () |
Is the Entity directly supported. More... | |
virtual const MCHAR * | GetClassName ()=0 |
Retrieves the name of the entity class. More... | |
Additional Inherited Members | |
Public Types inherited from IGameObject | |
enum | ObjectTypes { IGAME_UNKNOWN, IGAME_LIGHT, IGAME_MESH, IGAME_SPLINE, IGAME_CAMERA, IGAME_HELPER, IGAME_BONE, IGAME_IKCHAIN, IGAME_XREF } |
Various IGame Object types. More... | |
enum | MaxType { IGAME_MAX_UNKNOWN, IGAME_MAX_GEOM, IGAME_MAX_SHAPE, IGAME_MAX_LIGHT, IGAME_MAX_CAMERA, IGAME_MAX_BONE, IGAME_MAX_HELPER } |
Various 3ds Max Object types. More... | |
Static Public Member Functions inherited from MaxHeapOperators | |
static UtilExport void * | operator new (size_t size) |
Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e) |
Standard new operator used to allocate objects if there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new (size_t size, const char *filename, int line) |
New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, int block_type, const char *filename, int line) |
New operator used to allocate objects that takes the type of memory, filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, const char *filename, int line) |
New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new (size_t size, unsigned long flags) |
New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, unsigned long flags) |
New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new[] (size_t size) |
New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e) |
New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new[] (size_t size, const char *filename, int line) |
New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new[] (size_t size, int block_type, const char *filename, int line) |
New operator used to allocate arrays of objects. More... | |
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, const char *filename, int line) |
New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new[] (size_t size, unsigned long flags) |
New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, unsigned long flags) |
New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void | operator delete (void *ptr) |
Standard delete operator used to deallocate an object If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e) |
Standard delete operator used to deallocate an object If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete (void *ptr, const char *filename, int line) |
Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete (void *ptr, int block_type, const char *filename, int line) |
Delete operator used to deallocate an object that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete (void *ptr, unsigned long flags) |
Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, unsigned long flags) |
Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete[] (void *ptr) |
Standard delete operator used to deallocate an array of objects If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e) |
Standard delete operator used to deallocate an array of objects If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete[] (void *ptr, const char *filename, int line) |
Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete[] (void *ptr, int block_type, const char *filename, int line) |
Delete operator used to deallocate an array of objects that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete[] (void *ptr, unsigned long flags) |
Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, unsigned long flags) |
Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, void *placement_ptr) |
Placement new operator. More... | |
static UtilExport void | operator delete (void *ptr, void *placement_ptr) |
Placement delete operator. More... | |
Protected Member Functions inherited from IGameObject | |
void | SetNode (INode *n) |
Protected Attributes inherited from IGameObject | |
INode * | gameNode |
Object * | gameObject |
|
pure virtual |
Get the number of nodes that make up the chain.
Access to the n'th node in the chain.
index | The index of the node to access |
|
pure virtual |
Get the swivel data.
The swivel data used in the IK calculation
|
pure virtual |
Get the controller for the IK enable.
Access to the Enabled controller - this defines whether IK or FK are used. When IK the end effector is used to control the transforms, in FK the individual nodes can be positioned independent of the effector