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.
HIKCharacterStates 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. |
| 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. HIKEffectorSetStates 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.
HIKPropertySetStates 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. |