This section describes the functions used to write data to an HIKEffectorSetState.
All of these functions mask translation.w to 0.f and scale.w to 1.f.
Functions | |
void | HIKSetEffectorPivotStateTQSfv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const float pT[4], const float pQ[4], const float pS[4], const float pIKPivot[4]) |
Set the translation (T), quaternion rotation (Q) and scaling (S) values in global space for Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState , taking into account the IK pivot pIKPivot . More... | |
void | HIKSetEffectorPivotStateTQSdv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const double pT[4], const double pQ[4], const double pS[4], const double pIKPivot[4]) |
Set the translation (T), quaternion rotation (Q) and scaling (S) values in global space for Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState , taking into account the IK pivot pIKPivot . More... | |
void | HIKSetEffectorPivotStatefv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const float pXForm[16], const float pIKPivot[4]) |
Set the transform matrix for Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState , taking into account the IK pivot pIKPivot . More... | |
void | HIKSetEffectorPivotStatedv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const double pXForm[16], const double pIKPivot[4]) |
Set the transform matrix for Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState , taking into account the IK pivot pIKPivot . More... | |
void | HIKSetCharacterSpaceEffectorStateTQSfv (const HIKCharacter *pCharacter, int pEffectorIndex, HIKEffectorSetState *pEffectorSetState, const float pT[4], const float pQ[4], const float pS[4]) |
Set the translation (T), quaternion rotation (Q) and scaling (S) values in global space for Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState , removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector. More... | |
void | HIKSetCharacterSpaceEffectorStateTQfv (const HIKCharacter *pCharacter, int pEffectorIndex, HIKEffectorSetState *pEffectorSetState, const float pT[4], const float pQ[4]) |
Set the translation (T) and quaternion rotation (Q) values in global space for Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState , removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector. More... | |
void | HIKSetCharacterSpaceEffectorStateTQSdv (const HIKCharacter *pCharacter, int pEffectorIndex, HIKEffectorSetState *pEffectorSetState, const double pT[4], const double pQ[4], const double pS[4]) |
Set the translation (T), quaternion rotation (Q) and scaling (S) values in global space for Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState , removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector. More... | |
void | HIKSetCharacterSpaceEffectorStatefv (const HIKCharacter *pCharacter, int pEffectorIndex, HIKEffectorSetState *pEffectorSetState, const float pXForm[16]) |
Set the transform matrix in global space for Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState , removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector. More... | |
void | HIKSetCharacterSpaceEffectorStatedv (const HIKCharacter *pCharacter, int pEffectorIndex, HIKEffectorSetState *pEffectorSetState, const double pXForm[16]) |
Set the transform matrix in global space for Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState , removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector. More... | |
void | HIKSetCharacterSpaceEffectorStateDataTQ (const HIKCharacter *pCharacter, HIKEffectorSetState *pEffectorSetState, const HIKEffectorDataDescription *pDataDescription, const void *pDataSet) |
Set the translation (T), quaternion rotation (Q) and IK constraints for all Effectors specified in data description pDataDescription , removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of each Effector. More... | |
void | HIKGetCharacterSpaceEffectorStateFromCharacterTQSfv (int pEffectorIndex, const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, const HIKPropertySetState *pPropertyState, float pT[4], float pQ[4], float pS[4]) |
Retrieve the translation (T), quaternion rotation (Q) and scaling (S) of Effector pEffectorIndex for character pCharacter in HIKCharacterState pCharacterState , applying any rotation and scaling offsets contained in the character's characterization pose (its default T-stance) to the final rotation of the Effector. More... | |
void | HIKGetCharacterSpaceEffectorStateFromCharacterfv (int pEffectorIndex, const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, const HIKPropertySetState *pPropertyState, float pXForm[16]) |
Retrieve the transform matrix of Effector pEffectorIndex for character pCharacter in HIKCharacterState pCharacterState , applying any rotation and scaling offsets contained in the character's characterization pose (its default T-stance) to the final rotation of the Effector. More... | |
void | HIKGetEffectorStateFromCharacterfv (const HIKCharacter *pCharacter, int pEffectorIndex, const HIKCharacterState *pCharacterState, const HIKPropertySetState *pPropertyState, float pXForm[16]) |
Retrieve the transform matrix of Effector pEffectorIndex for character pCharacter in HIKCharacterState pCharacterState . More... | |
void | HIKGetEffectorStateFromCharacterdv (const HIKCharacter *pCharacter, int pEffectorIndex, const HIKCharacterState *pCharacterState, const HIKPropertySetState *pPropertyState, double pXForm[16]) |
Retrieve the transform matrix of Effector pEffectorIndex for character pCharacter in HIKCharacterState pCharacterState . More... | |
void | HIKEffectorSetFromCharacter (const HIKCharacter *pCharacter, HIKEffectorSetState *pEffectorSetState, const HIKCharacterState *pCharacterState, const HIKPropertySetState *pPropertyState) |
Set up HIKEffectorSetState pEffectorSetState to match character pCharacter in HIKCharacterState pCharacterState . More... | |
void | HIKSetEffectorStatefv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const float pXForm[16]) |
Set the transform matrix of Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState . More... | |
void | HIKSetEffectorStatedv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const double pXForm[16]) |
Set the transform matrix of Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState . More... | |
void | HIKSetEffectorStateTQSfv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const float pT[4], const float pQ[4], const float pS[4]) |
Set the translation (T), quaternion rotation (Q) and scaling (S) in global space of Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState . More... | |
void | HIKSetEffectorStateTQSdv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const double pT[4], const double pQ[4], const double pS[4]) |
Set the translation (T), quaternion rotation (Q) and scaling (S) in global space of Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState . More... | |
void | HIKSetEffectorStateTQSAlignfv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const float *pTQS, size_t pTOffset, size_t pQOffset, size_t pSOffset) |
Set the translation (T), quaternion rotation (Q) and scaling (S) in global space of Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState . More... | |
void | HIKSetEffectorStateTQAlignfv (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, const float *pTQ, size_t pTOffset, size_t pQOffset) |
Set the translation (T) and quaternion rotation (Q) in global space of Effector pEffectorIndex in HIKEffectorSetState pEffectorSetState . More... | |
void | HIKSetTranslationActive (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, float pValue) |
Set the Reach Translation constraint for Effector pEffectorIndex . More... | |
void | HIKSetRotationActive (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, float pValue) |
Set the Reach Rotation constraint for Effector pEffectorIndex . More... | |
void | HIKSetPull (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, float pValue) |
Set the Pull constraint for Effector pEffectorIndex . More... | |
void | HIKSetResist (HIKEffectorSetState *pEffectorSetState, int pEffectorIndex, float pValue) |
Set the Resist constraint for Effector pEffectorIndex . More... | |
void | HIKSetHandPullHips (HIKEffectorSetState *pEffectorSetState, int pLeft, float pValue) |
Set the amount of pull the left or right hand can exert on the hips. More... | |
void | HIKSetIKSolvingStep (HIKEffectorSetState *pEffectorSetState, int pSolvingStep) |
Set the IK solving steps for HIKEffectorSetState pEffectorSetState . More... | |
void | HIKSetEffectorStateDataTQS (HIKEffectorSetState *pEffectorSetState, const HIKEffectorDataDescription *pDataDescription, const void *pDataSet) |
Set the translation (T), quaternion rotation (Q), scaling (S), and IK constraints of multiple Effectors from data set pDataSet , interpreted according to data description pDataDescription . More... | |
void | HIKSetEffectorStateData (HIKEffectorSetState *pEffectorSetState, const HIKEffectorDataDescriptionMatrix *pDataDescription, const void *pDataSet) |
Set the transform matrix and IK constraints of multiple Effectors from data set pDataSet , interpreted according to data description pDataDescription . More... | |
void | HIKEffectorSetFromCreature (const HIKCreature *pCreature, HIKCreatureEffectorSetState *pEffectorSetState, const HIKCreatureState *pCreatureState) |
Set up HIKCreatureEffectorSetState pEffectorSetState to match creature pCreature in HIKCreatureState pCreatureState . More... | |
void | HIKCreatureSetEffectorStateTQSfv (HIKCreatureEffectorSetState *pEffectorSetState, int pEffectorIndex, const float pT[4], const float pQ[4], const float pS[4]) |
Set the translation (T), quaternion rotation (Q) and scaling (S) in global space of Effector pEffectorIndex in HIKCreatureEffectorSetState pEffectorSetState . More... | |
void | HIKCreatureSetTranslationActive (HIKCreatureEffectorSetState *pEffectorSetState, int pEffectorIndex, float pValue) |
Set the Reach Translation constraint for Effector pEffectorIndex . More... | |
void | HIKCreatureSetRotationActive (HIKCreatureEffectorSetState *pEffectorSetState, int pEffectorIndex, float pValue) |
Set the Reach Rotation constraint for Effector pEffectorIndex . More... | |
void | HIKCreatureSetPull (HIKCreatureEffectorSetState *pEffectorSetState, int pEffectorIndex, float pValue) |
Set the Pull constraint for Effector pEffectorIndex . More... | |
void HIKCreatureSetEffectorStateTQSfv | ( | HIKCreatureEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const float | pT[4], | ||
const float | pQ[4], | ||
const float | pS[4] | ||
) |
Set the translation (T), quaternion rotation (Q) and scaling (S) in global space of Effector pEffectorIndex
in HIKCreatureEffectorSetState pEffectorSetState
.
Values are provided in separate arrays.
pEffectorSetState | HIKCreatureEffectorSetState containing the Effector whose translation, rotation and scaling values you want to set. |
pEffectorIndex | Unique ID of the Effector whose translation, rotation and scaling values you want to set. |
pT | Translation value to set in global space. |
pQ | Rotation value to set in global space. |
pS | Scaling value to set in global space. |
void HIKCreatureSetPull | ( | HIKCreatureEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
float | pValue | ||
) |
Set the Pull constraint for Effector pEffectorIndex
.
pEffectorSetState | HIKCreatureEffectorSetState containing the Effector whose value you want to set. |
pEffectorIndex | Unique ID of the Effector whose Pull you want to set. |
pValue | Value must be between 0.0 (the joint will not pull other joints in order to reach its target) and 1.0 (the joint will have maximum priority for reaching its target). |
void HIKCreatureSetRotationActive | ( | HIKCreatureEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
float | pValue | ||
) |
Set the Reach Rotation constraint for Effector pEffectorIndex
.
pEffectorSetState | HIKCreatureEffectorSetState containing the Effector whose value you want to set. |
pEffectorIndex | Unique ID of the Effector whose Reach Rotation you want to set. |
pValue | Value must be between 0.0 (pin the joint to the rotation of the FK pose) and 1.0 (pin the joint to the rotation of the Effector). |
void HIKCreatureSetTranslationActive | ( | HIKCreatureEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
float | pValue | ||
) |
Set the Reach Translation constraint for Effector pEffectorIndex
.
pEffectorSetState | HIKCreatureEffectorSetState containing the Effector whose value you want to set. |
pEffectorIndex | Unique ID of the Effector whose Reach Translation you want to set. |
pValue | Value must be between 0.0 (pin the joint to the translation of the FK pose) and 1.0 (pin the joint to the translation of the Effector). |
void HIKEffectorSetFromCharacter | ( | const HIKCharacter * | pCharacter, |
HIKEffectorSetState * | pEffectorSetState, | ||
const HIKCharacterState * | pCharacterState, | ||
const HIKPropertySetState * | pPropertyState | ||
) |
Set up HIKEffectorSetState pEffectorSetState
to match character pCharacter
in HIKCharacterState pCharacterState
.
pCharacter | Character to query. | |
[out] | pEffectorSetState | HIKEffectorSetState to be set up. |
pCharacterState | HIKCharacterState from which to set up the HIKEffectorSetState. | |
pPropertyState | HIKPropertySetState containing all character properties for the character. |
void HIKEffectorSetFromCreature | ( | const HIKCreature * | pCreature, |
HIKCreatureEffectorSetState * | pEffectorSetState, | ||
const HIKCreatureState * | pCreatureState | ||
) |
Set up HIKCreatureEffectorSetState pEffectorSetState
to match creature pCreature
in HIKCreatureState pCreatureState
.
pCreature | Creature to query. | |
[out] | pEffectorSetState | HIKEffectorSetState to be set up. |
pCreatureState | HIKCreatureState from which to set up the HIKCreatureEffectorSetState. |
void HIKGetCharacterSpaceEffectorStateFromCharacterfv | ( | int | pEffectorIndex, |
const HIKCharacter * | pCharacter, | ||
const HIKCharacterState * | pCharacterState, | ||
const HIKPropertySetState * | pPropertyState, | ||
float | pXForm[16] | ||
) |
Retrieve the transform matrix of Effector pEffectorIndex
for character pCharacter
in HIKCharacterState pCharacterState
, applying any rotation and scaling offsets contained in the character's characterization pose (its default T-stance) to the final rotation of the Effector.
pEffectorIndex | Unique ID of the Effector whose transform matrix you want to retrieve. See the HIKEffectorId enumeration for possible values. | |
pCharacter | HIKCharacter to query. | |
pCharacterState | HIKCharacterState from which to retrieve the Effector placement. | |
pPropertyState | HIKPropertySetState containing all character properties for the character. | |
[out] | pXForm | Stores the transform matrix of the Effector in global space (4x4 column major matrix). |
void HIKGetCharacterSpaceEffectorStateFromCharacterTQSfv | ( | int | pEffectorIndex, |
const HIKCharacter * | pCharacter, | ||
const HIKCharacterState * | pCharacterState, | ||
const HIKPropertySetState * | pPropertyState, | ||
float | pT[4], | ||
float | pQ[4], | ||
float | pS[4] | ||
) |
Retrieve the translation (T), quaternion rotation (Q) and scaling (S) of Effector pEffectorIndex
for character pCharacter
in HIKCharacterState pCharacterState
, applying any rotation and scaling offsets contained in the character's characterization pose (its default T-stance) to the final rotation of the Effector.
pEffectorIndex | Unique ID of the Effector whose TQS values you want to retrieve. See the HIKEffectorId enumeration for possible values. | |
pCharacter | HIKCharacter to query. | |
pCharacterState | HIKCharacterState from which to retrieve the Effector placement. | |
pPropertyState | HIKPropertySetState containing all character properties for the character. | |
[out] | pT | Stores the translation value. |
[out] | pQ | Stores the orientation value. |
[out] | pS | Stores the scaling value. |
void HIKGetEffectorStateFromCharacterdv | ( | const HIKCharacter * | pCharacter, |
int | pEffectorIndex, | ||
const HIKCharacterState * | pCharacterState, | ||
const HIKPropertySetState * | pPropertyState, | ||
double | pXForm[16] | ||
) |
Retrieve the transform matrix of Effector pEffectorIndex
for character pCharacter
in HIKCharacterState pCharacterState
.
pCharacter | Character to query. | |
pEffectorIndex | Unique ID of the Effector whose transform matrix you want to retrieve. See the HIKEffectorId enumeration for possible values. | |
pCharacterState | HIKCharacterState from which to retrieve the Effector placement. | |
[out] | pXForm | Stores the transform matrix of the Effector in global space (4x4 column major matrix). |
pPropertyState | HIKPropertySetState containing all character properties for the character. This function converts floating-point numbers internally to double-precision. For best performance, use the HIKGetEffectorStateFromCharacterfv() function instead wherever possible. |
void HIKGetEffectorStateFromCharacterfv | ( | const HIKCharacter * | pCharacter, |
int | pEffectorIndex, | ||
const HIKCharacterState * | pCharacterState, | ||
const HIKPropertySetState * | pPropertyState, | ||
float | pXForm[16] | ||
) |
Retrieve the transform matrix of Effector pEffectorIndex
for character pCharacter
in HIKCharacterState pCharacterState
.
pCharacter | Character to query. | |
pEffectorIndex | Unique ID of the Effector whose transform matrix you want to retrieve. See the HIKEffectorId enumeration for possible values. | |
pCharacterState | HIKCharacterState from which to retrieve the Effector placement. | |
[out] | pXForm | Stores the transform matrix of the Effector in global space (4x4 column major matrix). |
pPropertyState | HIKPropertySetState containing all character properties for the character. |
void HIKSetCharacterSpaceEffectorStateDataTQ | ( | const HIKCharacter * | pCharacter, |
HIKEffectorSetState * | pEffectorSetState, | ||
const HIKEffectorDataDescription * | pDataDescription, | ||
const void * | pDataSet | ||
) |
Set the translation (T), quaternion rotation (Q) and IK constraints for all Effectors specified in data description pDataDescription
, removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of each Effector.
You can use this function to set the rotation of your character's joints in local space directly on their corresponding Effectors. This function is faster than setting values for each Effector individually through iterative calls to HIKSetCharacterSpaceEffectorStateTQSfv().
This function sets the scaling values for all axes to 1.0f
.
pCharacter | Set Effectors TQ in this character space. |
pEffectorSetState | HIKEffectorSetState to set data in. |
pDataDescription | Data description for your data set. |
pDataSet | void pointer to the beginning of your first data block. |
void HIKSetCharacterSpaceEffectorStatedv | ( | const HIKCharacter * | pCharacter, |
int | pEffectorIndex, | ||
HIKEffectorSetState * | pEffectorSetState, | ||
const double | pXForm[16] | ||
) |
Set the transform matrix in global space for Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
, removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector.
You can use this function to set the rotation of a joint directly on its corresponding Effector.
pCharacter | Set the Effector into this character's local space. |
pEffectorIndex | Index of the Effector whose matrix is to be set. See enum HIKEffectorId for possible values. |
pEffectorSetState | Effectort set state. |
pXForm | Global transform matrix to set for the Effector. |
This function converts the double-precision numbers internally to floating-point numbers. It is intended for use only where floating-point values are unavailable. For best performance, use the HIKSetCharacterSpaceEffectorStatefv() function instead wherever possible.
void HIKSetCharacterSpaceEffectorStatefv | ( | const HIKCharacter * | pCharacter, |
int | pEffectorIndex, | ||
HIKEffectorSetState * | pEffectorSetState, | ||
const float | pXForm[16] | ||
) |
Set the transform matrix in global space for Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
, removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector.
You can use this function to set the rotation of a joint directly on its corresponding Effector.
pCharacter | Set the Effector into this character's local space. |
pEffectorIndex | Index of the Effector whose matrix is to be set. See enum HIKEffectorId for possible values. |
pEffectorSetState | Effectort set state. |
pXForm | Global transform matrix to set for the Effector. |
void HIKSetCharacterSpaceEffectorStateTQfv | ( | const HIKCharacter * | pCharacter, |
int | pEffectorIndex, | ||
HIKEffectorSetState * | pEffectorSetState, | ||
const float | pT[4], | ||
const float | pQ[4] | ||
) |
Set the translation (T) and quaternion rotation (Q) values in global space for Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
, removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector.
You can use this function to set the rotation of a joint directly on its corresponding Effector.
This function sets the scaling values for all axes to 1.0f
.
pCharacter | Set the Effector into this character's local space. |
pEffectorIndex | Index of the Effector whose TQ values are to be set. See enum HIKEffectorId for possible values. |
pEffectorSetState | HIKEffectorSetState. |
pT | Global translation values to set for the Effector. |
pQ | Global rotation values to set for the Effector. |
void HIKSetCharacterSpaceEffectorStateTQSdv | ( | const HIKCharacter * | pCharacter, |
int | pEffectorIndex, | ||
HIKEffectorSetState * | pEffectorSetState, | ||
const double | pT[4], | ||
const double | pQ[4], | ||
const double | pS[4] | ||
) |
Set the translation (T), quaternion rotation (Q) and scaling (S) values in global space for Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
, removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector.
You can use this function to set the rotation of a joint directly on its corresponding Effector.
pCharacter | Set the Effector into this character's local space. |
pEffectorIndex | Index of the Effector whose TQS values are to be set. See enum HIKEffectorId for possible values. |
pEffectorSetState | HIKEffectorSetState. |
pT | Global translation values to set for the Effector. |
pQ | Global rotation values to set for the Effector. |
pS | Global scaling values to set for the Effector. |
This function converts the double-precision numbers internally to floating-point numbers. It is intended for use only where floating-point values are unavailable. For best performance, use the HIKSetCharacterSpaceEffectorStateTQSfv() function instead wherever possible.
void HIKSetCharacterSpaceEffectorStateTQSfv | ( | const HIKCharacter * | pCharacter, |
int | pEffectorIndex, | ||
HIKEffectorSetState * | pEffectorSetState, | ||
const float | pT[4], | ||
const float | pQ[4], | ||
const float | pS[4] | ||
) |
Set the translation (T), quaternion rotation (Q) and scaling (S) values in global space for Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
, removing any rotation and scale offsets contained in the character's characterization pose (its default T-stance) from the final rotation of the Effector.
You can use this function to set the rotation of a joint directly on its corresponding Effector.
pCharacter | Set the Effector into this character's local space. |
pEffectorIndex | Index of the Effector whose TQS values are to be set. See enum HIKEffectorId for possible values. |
pEffectorSetState | HIKEffectorSetState. |
pT | Global translation values to set for the Effector. |
pQ | Global rotation values to set for the Effector. |
pS | Global scaling values to set for the Effector. |
void HIKSetEffectorPivotStatedv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const double | pXForm[16], | ||
const double | pIKPivot[4] | ||
) |
Set the transform matrix for Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
, taking into account the IK pivot pIKPivot
.
pEffectorSetState | HIKEffectorSetState. |
pEffectorIndex | Index of the Effector whose matrix is to be set. See the HIKEffectorId enumeration for possible values. |
pXForm | Transform matrix to set for the Effector. |
pIKPivot | Global position of the IK pivot. |
This function converts the double-precision numbers internally to floating-point numbers. It is intended for use only where floating-point values are unavailable. For best performance, use the HIKSetEffectorPivotStatefv() function instead wherever possible.
void HIKSetEffectorPivotStatefv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const float | pXForm[16], | ||
const float | pIKPivot[4] | ||
) |
Set the transform matrix for Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
, taking into account the IK pivot pIKPivot
.
pEffectorSetState | HIKEffectorSetState. |
pEffectorIndex | Index of the Effector whose matrix is to be set. See the HIKEffectorId enumeration for possible values. |
pXForm | Transform matrix to set for the Effector. |
pIKPivot | Global position of the IK pivot. |
void HIKSetEffectorPivotStateTQSdv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const double | pT[4], | ||
const double | pQ[4], | ||
const double | pS[4], | ||
const double | pIKPivot[4] | ||
) |
Set the translation (T), quaternion rotation (Q) and scaling (S) values in global space for Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
, taking into account the IK pivot pIKPivot
.
pEffectorSetState | HIKEffectorSetState. |
pEffectorIndex | Index of the Effector whose TQS values are to be set. See the HIKEffectorId enumeration for possible values. |
pT | Global translation values to set for the Effector. |
pQ | Global rotation values to set for the Effector. |
pS | Global scaling values to set for the Effector. |
pIKPivot | Global position of the IK pivot. |
This function converts the double-precision numbers internally to floating-point numbers. It is intended for use only where floating-point values are unavailable. For best performance, use the HIKSetEffectorPivotStateTQSfv() function instead wherever possible.
void HIKSetEffectorPivotStateTQSfv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const float | pT[4], | ||
const float | pQ[4], | ||
const float | pS[4], | ||
const float | pIKPivot[4] | ||
) |
Set the translation (T), quaternion rotation (Q) and scaling (S) values in global space for Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
, taking into account the IK pivot pIKPivot
.
pEffectorSetState | HIKEffectorSetState. |
pEffectorIndex | Index of the Effector whose TQS values are to be set. See the HIKEffectorId enumeration for possible values. |
pT | Global translation values to set for the Effector. |
pQ | Global rotation values to set for the Effector. |
pS | Global scaling values to set for the Effector. |
pIKPivot | Global position of the IK pivot. |
void HIKSetEffectorStateData | ( | HIKEffectorSetState * | pEffectorSetState, |
const HIKEffectorDataDescriptionMatrix * | pDataDescription, | ||
const void * | pDataSet | ||
) |
Set the transform matrix and IK constraints of multiple Effectors from data set pDataSet
, interpreted according to data description pDataDescription
.
This function is faster than setting the matrix of each Effector individually using functions such as HIKSetEffectorState().
pEffectorSetState | HIKEffectorSetState in which to set the data. |
pDataDescription | Data description defining the memory layout of your data set. |
pDataSet | Void pointer to the beginning of your first data block. |
void HIKSetEffectorStateDataTQS | ( | HIKEffectorSetState * | pEffectorSetState, |
const HIKEffectorDataDescription * | pDataDescription, | ||
const void * | pDataSet | ||
) |
Set the translation (T), quaternion rotation (Q), scaling (S), and IK constraints of multiple Effectors from data set pDataSet
, interpreted according to data description pDataDescription
.
This function is faster than setting the matrix of each Effector individually using functions such as HIKSetEffectorState().
pEffectorSetState | HIKEffectorSetState in which to set the data. |
pDataDescription | Data description defining the memory layout of your data set. |
pDataSet | Void pointer to the beginning of your first data block. |
void HIKSetEffectorStatedv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const double | pXForm[16] | ||
) |
Set the transform matrix of Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
.
pEffectorSetState | HIKEffectorSetState containing the Effector whose matrix you want to set. |
pEffectorIndex | Unique ID of the Effector whose matrix you want to set. See the HIKEffectorId enumeration for possible values. |
pXForm | Transform matrix to set for the Effector in global space (4x4 column major matrix). |
This function converts the double-precision numbers internally to floating-point numbers. It is intended for use only where floating-point values are unavailable. For best performance, use the HIKSetEffectorStatefv() function instead wherever possible.
void HIKSetEffectorStatefv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const float | pXForm[16] | ||
) |
Set the transform matrix of Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
.
pEffectorSetState | HIKEffectorSetState containing the Effector whose matrix you want to set. |
pEffectorIndex | Unique ID of the Effector whose matrix you want to set. See the HIKEffectorId enumeration for possible values. |
pXForm | Transform matrix to set for the Effector in global space (4x4 column major matrix). |
void HIKSetEffectorStateTQAlignfv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const float * | pTQ, | ||
size_t | pTOffset, | ||
size_t | pQOffset | ||
) |
Set the translation (T) and quaternion rotation (Q) in global space of Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
.
Values are read from specified offsets within a single array.
This function sets the scaling values for all axes to 1.0f
.
The T and Q values are each expected to be expressed as an array of four floating-point numbers within the pTQ
array, and the offset of each of these arrays must be aligned on 16 bytes. The arrays containing the T and Q values may be in any order within the larger array. For example, the offset of the quaternion rotation data may be less than the offset of the translation data. The pTQ
array may also contain other arbitrary data values interspersed between the arrays containing the T and Q values, if that is convenient.
pEffectorSetState | HIKEffectorSetState containing the Effector whose translation and rotation values you want to set. |
pEffectorIndex | Unique ID of the Effector whose translation and rotation values you want to set. See the HIKEffectorId enumeration for possible values. |
pTQ | Pointer to an array of floating-point numbers containing the data for the Effector in global space. This array must be aligned on 16 bytes. |
pTOffset | Offset of the translation values within pTQ . This offset must be aligned on 16 bytes. |
pQOffset | Offset of the rotation values within pTQ . This offset must be aligned on 16 bytes. |
void HIKSetEffectorStateTQSAlignfv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const float * | pTQS, | ||
size_t | pTOffset, | ||
size_t | pQOffset, | ||
size_t | pSOffset | ||
) |
Set the translation (T), quaternion rotation (Q) and scaling (S) in global space of Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
.
Values are read from specified offsets within a single array.
The T, Q and S values are each expected to be expressed as an array of four floating-point numbers within the pTQS
array, and the offset of each of these arrays must be aligned on 16 bytes. The arrays containing the T, Q and S values may be in any order within the larger array. For example, the offset of the scaling data may be less than the offset of the translation data. The pTQS
array may also contain other arbitrary data values interspersed between the arrays containing the T, Q and S values, if that is convenient.
pEffectorSetState | HIKEffectorSetState containing the Effector whose translation, rotation and scaling values you want to set. |
pEffectorIndex | Unique ID of the Effector whose translation, rotation and scaling values you want to set. See the HIKEffectorId enumeration for possible values. |
pTQS | Pointer to an array of floating-point numbers containing the data for the Effector in global space. This array must be aligned on 16 bytes. |
pTOffset | Offset of the translation values within pTQS . This offset must be aligned on 16 bytes. |
pQOffset | Offset of the rotation values within pTQS . This offset must be aligned on 16 bytes. |
pSOffset | Offset of the scaling values within pTQS . This offset must be aligned on 16 bytes. |
void HIKSetEffectorStateTQSdv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const double | pT[4], | ||
const double | pQ[4], | ||
const double | pS[4] | ||
) |
Set the translation (T), quaternion rotation (Q) and scaling (S) in global space of Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
.
Values are provided in separate arrays.
pEffectorSetState | HIKEffectorSetState containing the Effector whose translation, rotation and scaling values you want to set. |
pEffectorIndex | Unique ID of the Effector whose translation, rotation and scaling values you want to set. See the HIKEffectorId enumeration for possible values. |
pT | Translation value to set in global space. |
pQ | Rotation value to set in global space. |
pS | Scaling value to set in global space. |
This function converts the double-precision numbers internally to floating-point numbers. It is intended for use only where floating-point values are unavailable. For best performance, use the HIKSetEffectorStatefv() function instead wherever possible.
void HIKSetEffectorStateTQSfv | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
const float | pT[4], | ||
const float | pQ[4], | ||
const float | pS[4] | ||
) |
Set the translation (T), quaternion rotation (Q) and scaling (S) in global space of Effector pEffectorIndex
in HIKEffectorSetState pEffectorSetState
.
Values are provided in separate arrays.
pEffectorSetState | HIKEffectorSetState containing the Effector whose translation, rotation and scaling values you want to set. |
pEffectorIndex | Unique ID of the Effector whose translation, rotation and scaling values you want to set. See the HIKEffectorId enumeration for possible values. |
pT | Translation value to set in global space. |
pQ | Rotation value to set in global space. |
pS | Scaling value to set in global space. |
void HIKSetHandPullHips | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pLeft, | ||
float | pValue | ||
) |
Set the amount of pull the left or right hand can exert on the hips.
By default, both hands can pull the hips (unless the hips have Pull and Reach Translation values assigned to them). You can use this function to change this default priority, and make the hands unable to pull the hips under any circumstances.
pEffectorSetState | HIKEffectorSetState containing the left or right hand Effector whose Pull you want to set. |
pLeft | Indicates whether to set the pull for the left hand or right hand. 0 = right, 1 = left. |
pValue | Value must be between 0.0 (the hand cannot pull the hips) and 1.0 (the hand has full priority over the hips). |
void HIKSetIKSolvingStep | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pSolvingStep | ||
) |
Set the IK solving steps for HIKEffectorSetState pEffectorSetState
.
pEffectorSetState | HIKEffectorSetState that you want to query. |
pSolvingStep | Bit mask indicating the active steps. See the HIKSolvingStep enumeration for descriptions of the bit values. |
void HIKSetPull | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
float | pValue | ||
) |
Set the Pull constraint for Effector pEffectorIndex
.
pEffectorSetState | HIKEffectorSetState containing the Effector whose value you want to set. |
pEffectorIndex | Unique ID of the Effector whose Pull you want to set. See the HIKEffectorId enumeration for possible values. |
pValue | Value must be between 0.0 (the joint will not pull other joints in order to reach its target) and 1.0 (the joint will have maximum priority for reaching its target). |
void HIKSetResist | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
float | pValue | ||
) |
Set the Resist constraint for Effector pEffectorIndex
.
pEffectorSetState | HIKEffectorSetState containing the Effector whose value you want to set. |
pEffectorIndex | Unique ID of the Effector whose Resist you want to set. See the HIKEffectorId enumeration for possible values. |
pValue | Value must be between 0.0 (the joint moves freely) and 1.0 (the joint is constrained to its original rotation). |
void HIKSetRotationActive | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
float | pValue | ||
) |
Set the Reach Rotation constraint for Effector pEffectorIndex
.
pEffectorSetState | HIKEffectorSetState containing the Effector whose value you want to set. |
pEffectorIndex | Unique ID of the Effector whose Reach Rotation you want to set. See the HIKEffectorId enumeration for possible values. |
pValue | Value must be between 0.0 (pin the joint to the rotation of the FK pose) and 1.0 (pin the joint to the rotation of the Effector). |
void HIKSetTranslationActive | ( | HIKEffectorSetState * | pEffectorSetState, |
int | pEffectorIndex, | ||
float | pValue | ||
) |
Set the Reach Translation constraint for Effector pEffectorIndex
.
pEffectorSetState | HIKEffectorSetState containing the Effector whose value you want to set. |
pEffectorIndex | Unique ID of the Effector whose Reach Translation you want to set. See the HIKEffectorId enumeration for possible values. |
pValue | Value must be between 0.0 (pin the joint to the translation of the FK pose) and 1.0 (pin the joint to the translation of the Effector). |