This section describes the functions used to create HIK objects.
For details on memory management when creating these objects, see ~{ HumanIK Objects and Memory Management }~.
For details on using these functions in the context of initializing HumanIK, see ~{ Initialization }~.
HIKCharacter * HIKCharacterCreate | ( | const HIKCharacterDefinition * | pCharacterDefinition, |
HIKMalloc | pMalloc, | ||
const char * | pValidationString | ||
) |
Create a new HIKCharacter.
pCharacterDefinition | The HIKCharacterDefinition that specifies which Nodes your character will be using, and which Nodes have DoF and parent offsets. |
pMalloc | Pointer to a memory allocation function. If you do not have a custom memory allocation function, use &malloc. |
pValidationString | The customer identification string given to you by Autodesk to license the use of HumanIK in your project. |
HIKCharacter * HIKCharacterCreateInPlace | ( | const HIKCharacterDefinition * | pCharacterDefinition, |
void * | pBuffer, | ||
const char * | pValidationString | ||
) |
Create a new HIKCharacter in the buffer pBuffer
.
Characters created using this function do not need to be destroyed with HIKCharacterDestroy(), as the memory allocation is typically managed outside HumanIK.
pCharacterDefinition | The HIKCharacterDefinition that specifies which Nodes your character will be using, and which Nodes have DoF and parent offsets. |
pBuffer | Pre-allocated memory buffer of the appropriate size, aligned on 16 bytes. |
pValidationString | The customer identification string ("Customer String") given to you by Autodesk to license the use of HumanIK in your project. |
HIKCharacterState * HIKCharacterStateCreate | ( | const HIKCharacter * | pCharacter, |
HIKMalloc | pMalloc | ||
) |
Create a new HIKCharacterState.
Each characterized joint requires 128 bytes of memory.
pCharacter | HIKCharacter associated with this HIKCharacterState. |
pMalloc | Pointer to a memory allocation function. If you do not have a custom memory allocation function, use &malloc. |
HIKCharacterState * HIKCharacterStateCreateInPlace | ( | const HIKCharacter * | pCharacter, |
void * | pBuffer | ||
) |
Create a new HIKCharacterState in the buffer pBuffer
.
created using this function do not need to be destroyed with HIKCharacterStateDestroy(), as the memory allocation is typically managed outside HumanIK.
pCharacter | HIKCharacter associated with this HIKCharacterState. |
pBuffer | Pre-allocated memory buffer of the appropriate size, aligned on 16 bytes. |
HIKCreatureEffectorSetState* HIKCreatureEffectorSetStateCreate | ( | const HIKCreature * | pCreature, |
HIKMalloc | pMalloc | ||
) |
Create a new HIKCreatureEffectorSetState.
Each characterized chain requires XXX bytes of memory. Each characterized segment requires XXX bytes of memory. This HIKCreatureEffectorSetState will be used by the full-body IK solver.
pCreature | HIKCreature associated with this HIKCreatureState. |
pMalloc | Pointer to a memory allocation function. If you do not have a custom memory allocation function, use &malloc. |
HIKCreatureState* HIKCreatureStateCreate | ( | const HIKCreature * | pCreature, |
HIKMalloc | pMalloc | ||
) |
Create a new HIKCreatureState.
Each characterized joint requires 128 bytes of memory.
pCreature | HIKCreature associated with this HIKCreatureState. |
pMalloc | Pointer to a memory allocation function. If you do not have a custom memory allocation function, use &malloc. |
HIKEffectorSetState * HIKEffectorSetStateCreate | ( | HIKMalloc | pMalloc | ) |
Create a new HIKEffectorSetState.
This HIKEffectorSetState will be used by the full-body IK solver.
pMalloc | Pointer to a memory allocation function. If you do not have a custom memory allocation function, use &malloc. |
HIKEffectorSetState * HIKEffectorSetStateCreateInPlace | ( | void * | pBuffer | ) |
Create a new HIKEffectorSetState in the buffer pBuffer
.
This HIKEffectorSetState will be used by the full-body IK solver. created using this function do not need to be destroyed with HIKEffectorSetStateDestroy(), as the memory allocation is typically managed outside HumanIK.
pBuffer | Pre-allocated memory buffer of the appropriate size, aligned on 16 bytes. |
HIKPropertySetState * HIKPropertySetStateCreate | ( | HIKMalloc | pMalloc | ) |
Create a new HIKPropertySetState.
pMalloc | Pointer to a memory allocation function. If you do not have a custom memory allocation function, use &malloc. |
HIKPropertySetState * HIKPropertySetStateCreateInPlace | ( | void * | pBuffer | ) |
Create a new HIKPropertySetState in the buffer pBuffer
.
created using this function do not need to be destroyed with HIKPropertySetStateDestroy(), as the memory allocation is typically managed outside HumanIK.
pBuffer | Pre-allocated memory buffer of the appropriate size, aligned on 16 bytes. |