このセクションでは、HIKCharacterState からのデータの読み取りに使用する関数について説明します。
これらの関数はすべて translation.w = 0.f と scale.w = 1.f を返します。
関数 | |
| void | HIKGetCharacterStateTransform (const HIKCharacter *pCharacter, HIKCharacterState *pCharacterState, const HIKDataDescriptionMatrix *pDataDescription, void *pDataSet) |
HIKCharacterState pCharacterState から複数ノードのトランスフォーム マトリックスを取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。表示... | |
| void | HIKGetCharacterStateTransformQ (const HIKCharacter *pCharacter, HIKCharacterState *pCharacterState, const HIKDataDescription *pDataDescription, void *pDataSet) |
HIKCharacterState pCharacterState から複数ノードのクォータニオン回転(Q)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。表示... | |
| void | HIKGetCharacterStateTransformTQ (const HIKCharacter *pCharacter, HIKCharacterState *pCharacterState, const HIKDataDescription *pDataDescription, void *pDataSet) |
HIKCharacterState pCharacterState から複数ノードのトランスレーション(T)とクォータニオン回転(Q)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。表示... | |
| void | HIKGetCharacterStateTransformTQS (const HIKCharacter *pCharacter, HIKCharacterState *pCharacterState, const HIKDataDescription *pDataDescription, void *pDataSet) |
HIKCharacterStatepCharacterState から複数ノードのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。表示... | |
| void | HIKGetCharacterStateTransformTQS_SoA (const HIKCharacter *pCharacter, HIKCharacterState *pCharacterState, const HIKDataDescription *pDataDescription, void *pDataSet) |
HIKCharacterStatepCharacterState から複数ノードのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。表示... | |
| void | HIKGetNodeNormalizedStatedv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, double pXForm[16]) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、ノード pNodeId の変換行列を HIKCharacterState pCharacterState で取得します。表示... | |
| void | HIKGetNodeNormalizedStatefv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, float pXForm[16]) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、ノード pNodeId の変換行列を HIKCharacterState pCharacterState で取得します。表示... | |
| void | HIKGetNodeNormalizedStateTQSdv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, double pT[4], double pQ[4], double pS[4]) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、グローバル スペースでノード pNodeId のトランスレーション値(T)、クォータニオン回転値(Q)、およびスケール値(S)を HIKCharacterState pCharacterState で取得します。表示... | |
| void | HIKGetNodeNormalizedStateTQSfv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, float pT[4], float pQ[4], float pS[4]) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、グローバル スペースでノード pNodeId のトランスレーション値(T)、クォータニオン回転値(Q)、およびスケール値(S)を HIKCharacterState pCharacterState で取得します。表示... | |
| void | HIKGetNodeStatedv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, double pXForm[16]) |
ノード pNodeId の変換行列を HIKCharacterStatepCharacterState で取得します。 値は個別の配列を使用して表されます。表示... | |
| void | HIKGetNodeStatefv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, float pXForm[16]) |
ノード pNodeId の変換行列を HIKCharacterStatepCharacterState で取得します。 値は個別の配列を使用して表されます。表示... | |
| void | HIKGetNodeStateTQAlignfv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, float *pTQ, size_t pTOffset, size_t pQOffset) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)およびクォータニオン回転(Q)を HIKCharacterState pCharacterState で取得します。 値は単一の配列内で指定したオフセットに保存されます。表示... | |
| void | HIKGetNodeStateTQfv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, float pT[4], float pQ[4]) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)およびクォータニオン回転(Q)を HIKCharacterState pCharacterState で取得します。 値は個別の配列を使用して表されます。表示... | |
| void | HIKGetNodeStateTQNonUniformSfv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, float pT[4], float pQ[4], float pS[4]) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)、クォータニオン回転(Q)、および不均等スケール(S)を HIKCharacterState pCharacterState で取得します。 値は個別の配列を使用して表されます。表示... | |
| void | HIKGetNodeStateTQSAlignfv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, float *pTQS, size_t pTOffset, size_t pQOffset, size_t pSOffset) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を HIKCharacterState pCharacterState で取得します。 値は単一の配列内で指定したオフセットに保存されます。表示... | |
| void | HIKGetNodeStateTQSdv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, double pT[4], double pQ[4], double pS[4]) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を HIKCharacterState pCharacterState で取得します。 値は個別の配列を使用して表されます。表示... | |
| void | HIKGetNodeStateTQSfv (const HIKCharacter *pCharacter, const HIKCharacterState *pCharacterState, int pNodeId, float pT[4], float pQ[4], float pS[4]) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を HIKCharacterState pCharacterState で取得します。 値は個別の配列を使用して表されます。表示... | |
| void | HIKGetNormalizedCharacterStateTransformTQS (const HIKCharacter *pCharacter, HIKCharacterState *pCharacterState, const HIKDataDescription *pDataDescription, void *pDataSet) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、データ デスクリプション pDataDescription に一覧表示されたすべてのノードについてグローバル スペースでトランスレーション値(T)、クォータニオン回転値(Q)、およびスケール値(S)を取得します。表示... | |
| void HIKGetCharacterStateTransform | ( | const HIKCharacter * | pCharacter, |
| HIKCharacterState * | pCharacterState, | ||
| const HIKDataDescriptionMatrix * | pDataDescription, | ||
| void * | pDataSet | ||
| ) |
HIKCharacterState pCharacterState から複数ノードのトランスフォーム マトリックスを取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。
この関数は、HIKGetNodeStateTQS() などの関数を使用して、個別に各ノードのデータを取得するよりも高速に処理できます。
| pCharacter | HIKCharacter: ここからデータ値を取得します。 | |
| pCharacterState | HIKCharacterState: ここからデータ値を取得します。 | |
| pDataDescription | データ セットのメモリ レイアウトを定義するデータ デスクリプション | |
| [out] | pDataSet | 最初のデータ ブロックの先頭への void ポインタ |
| void HIKGetCharacterStateTransformQ | ( | const HIKCharacter * | pCharacter, |
| HIKCharacterState * | pCharacterState, | ||
| const HIKDataDescription * | pDataDescription, | ||
| void * | pDataSet | ||
| ) |
HIKCharacterState pCharacterState から複数ノードのクォータニオン回転(Q)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。
この関数は、HIKGetNodeStateTQS() などの関数を使用して、個別に各ノードのデータを取得するよりも迅速に処理できます。
| pCharacter | HIKCharacter: ここからデータ値を取得します。 | |
| pCharacterState | HIKCharacterState: ここからデータ値を取得します。 | |
| pDataDescription | データ セットのメモリ レイアウトを定義するデータ デスクリプション | |
| [out] | pDataSet | 最初のデータ ブロックの先頭への void ポインタ |
| void HIKGetCharacterStateTransformTQ | ( | const HIKCharacter * | pCharacter, |
| HIKCharacterState * | pCharacterState, | ||
| const HIKDataDescription * | pDataDescription, | ||
| void * | pDataSet | ||
| ) |
HIKCharacterState pCharacterState から複数ノードのトランスレーション(T)とクォータニオン回転(Q)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。
この関数は、HIKGetNodeStateTQS() などの関数を使用して、個別に各ノードのデータを取得するよりも迅速に処理できます。
| pCharacter | HIKCharacter: ここからデータ値を取得します。 | |
| pCharacterState | HIKCharacterState: ここからデータ値を取得します。 | |
| pDataDescription | データ セットのメモリ レイアウトを定義するデータ デスクリプション | |
| [out] | pDataSet | 最初のデータ ブロックの先頭への void ポインタ |
| void HIKGetCharacterStateTransformTQS | ( | const HIKCharacter * | pCharacter, |
| HIKCharacterState * | pCharacterState, | ||
| const HIKDataDescription * | pDataDescription, | ||
| void * | pDataSet | ||
| ) |
HIKCharacterStatepCharacterState から複数ノードのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。
この関数は、HIKGetNodeStateTQS() などの関数を使用して、個別に各ノードのデータを取得するよりも迅速に処理できます。
| pCharacter | HIKCharacter: ここからデータ値を取得します。 | |
| pCharacterState | HIKCharacterState: ここからデータ値を取得します。 | |
| pDataDescription | データ セットのメモリ レイアウトを定義するデータ デスクリプション | |
| [out] | pDataSet | 最初のデータ ブロックの先頭への void ポインタ |
| void HIKGetCharacterStateTransformTQS_SoA | ( | const HIKCharacter * | pCharacter, |
| HIKCharacterState * | pCharacterState, | ||
| const HIKDataDescription * | pDataDescription, | ||
| void * | pDataSet | ||
| ) |
HIKCharacterStatepCharacterState から複数ノードのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。
この SoA 関数を使用すると、各データ ブロックは 1 つのノードのみのデータを含めるのではなく、4 つのノードのデータをインターリーブします。この形式の使用を選択すると、データ デスクリプションのオフセットで、各データ ブロック内のベクトルの最初のトランスレーション、向き、およびスケールの場所を指定する必要があります。HumanIK は、これらのオフセットから開始して、4 つのノードすべての値を保存します。
この関数は、HIKGetNodeStateTQS() などの関数を使用して、個別に各ノードのデータを取得するよりも迅速に処理できます。
| pCharacter | HIKCharacter: ここからデータ値を取得します。 | |
| pCharacterState | HIKCharacterState: ここからデータ値を取得します。 | |
| pDataDescription | データ セットのメモリ レイアウトを定義するデータ デスクリプション | |
| [out] | pDataSet | 最初のデータ ブロックの先頭への void ポインタ |
| void HIKGetNodeNormalizedStatedv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| double | pXForm[16] | ||
| ) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、ノード pNodeId の変換行列を HIKCharacterState pCharacterState で取得します。
キャラクタのキャラクタライゼーション ポーズに回転またはスケール オフセットが含まれていない場合、この関数を使用してノードの TQS の値を取得できます。この関数は、HIKGetNodeStatefv() より迅速に処理できます。
| pCharacter | HIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。 | |
| pCharacterState | HIKCharacterState | |
| pNodeId | 行列を取得するノードのインデックス。可能な値については、HIKNodeId 列挙を参照してください。 | |
| [out] | pXForm | ノードの変換行列 |
この関数は、浮動小数値を内部的に倍精度に変換します。最高のパフォーマンスを得るには、できる限り代わりに HIKGetNodeNormalizedStatefv() 関数を使用してください。
| void HIKGetNodeNormalizedStatefv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| float | pXForm[16] | ||
| ) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、ノード pNodeId の変換行列を HIKCharacterState pCharacterState で取得します。
キャラクタのキャラクタライゼーション ポーズに回転またはスケール オフセットが含まれていない場合、この関数を使用してノードの TQS の値を取得できます。この関数は、HIKGetNodeStatefv() より迅速に処理できます。
| pCharacter | HIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。 | |
| pCharacterState | HIKCharacterState | |
| pNodeId | 行列を取得するノードのインデックス。可能な値については、HIKNodeId 列挙を参照してください。 | |
| [out] | pXForm | ノードの変換行列 |
| void HIKGetNodeNormalizedStateTQSdv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| double | pT[4], | ||
| double | pQ[4], | ||
| double | pS[4] | ||
| ) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、グローバル スペースでノード pNodeId のトランスレーション値(T)、クォータニオン回転値(Q)、およびスケール値(S)を HIKCharacterState pCharacterState で取得します。
キャラクタのキャラクタライゼーション ポーズに回転またはスケール オフセットが含まれていない場合、この関数を使用してノードの TQS の値を取得できます。この関数は、HIKGetNodeStateTQSfv() より迅速に処理できます。
| pCharacter | HIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。 | |
| pCharacterState | HIKCharacterState | |
| pNodeId | TQS の値を取得するノードのインデックス。可能な値については、HIKNodeId 列挙を参照してください。 | |
| [out] | pT | ノードのグローバルトランスレーション値 |
| [out] | pQ | ノードのグローバル回転値 |
| [out] | pS | ノードのグローバルスケール値 |
この関数は、浮動小数値を内部的に倍精度に変換します。最高のパフォーマンスを得るには、できる限り代わりに HIKGetNodeNormalizedStateTQSfv() 関数を使用してください。
| void HIKGetNodeNormalizedStateTQSfv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| float | pT[4], | ||
| float | pQ[4], | ||
| float | pS[4] | ||
| ) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、グローバル スペースでノード pNodeId のトランスレーション値(T)、クォータニオン回転値(Q)、およびスケール値(S)を HIKCharacterState pCharacterState で取得します。
キャラクタのキャラクタライゼーション ポーズに回転またはスケール オフセットが含まれていない場合、この関数を使用してノードの TQS の値を取得できます。この関数は、HIKGetNodeStateTQSfv() より迅速に処理できます。
| pCharacter | HIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。 | |
| pCharacterState | HIKCharacterState | |
| pNodeId | TQS の値を取得するノードのインデックス。可能な値については、HIKNodeId 列挙を参照してください。 | |
| [out] | pT | ノードのグローバルトランスレーション値 |
| [out] | pQ | ノードのグローバル回転値 |
| [out] | pS | ノードのグローバルスケール値 |
| void HIKGetNodeStatedv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| double | pXForm[16] | ||
| ) |
ノード pNodeId の変換行列を HIKCharacterStatepCharacterState で取得します。 値は個別の配列を使用して表されます。
| pCharacter | HIKCharacter: ここから行列を取得します。 | |
| pCharacterState | HIKCharacterState: ここから行列を取得します。 | |
| pNodeId | TQS の値を設定するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。 | |
| [out] | pXForm | グローバル スペースに取得した変換行列を保存します。 |
この関数は、浮動小数値を内部的に倍精度に変換します。浮動小数点値が使用できない場合のみ使用します。最適なパフォーマンスを得るには、できる限り代わりに HIKGetNodeStatefv() 関数を使用します。
| void HIKGetNodeStatefv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| float | pXForm[16] | ||
| ) |
ノード pNodeId の変換行列を HIKCharacterStatepCharacterState で取得します。 値は個別の配列を使用して表されます。
| pCharacter | HIKCharacter: ここから行列を取得します。 | |
| pCharacterState | HIKCharacterState: ここから行列を取得します。 | |
| pNodeId | TQS の値を設定するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。 | |
| [out] | pXForm | グローバル スペースに取得した変換行列を保存します。 |
| void HIKGetNodeStateTQAlignfv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| float * | pTQ, | ||
| size_t | pTOffset, | ||
| size_t | pQOffset | ||
| ) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)およびクォータニオン回転(Q)を HIKCharacterState pCharacterState で取得します。 値は単一の配列内で指定したオフセットに保存されます。
T と Q の値は、それぞれ pTQ 配列内の 4 つの浮動小数値の配列として表現されることを想定しており、これらの各配列のオフセットは 16 バイトでアラインする必要があります。T と Q の値を含む配列は、大きな配列内で任意の順序にできます。たとえば、スケール データのオフセットは、トランスレーションデータのオフセットより小さい可能性があります。pTQ 配列には、便宜上、T と Q を含む配列間に混在するその他の任意のデータ値も含まれる場合があります。
| pCharacter | HIKCharacter: ここからトランスレーション値と回転値を取得します。 |
| pCharacterState | HIKCharacterState: ここからトランスレーション値と回転値を取得します。 |
| pNodeId | データを取得するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。 |
| pTQ | ノードのトランスレーション値と回転値の保存に使用する浮動小数値の配列へのポインタ。この配列は 16 バイトでアラインする必要があります。 |
| pTOffset | pTQ 配列内のトランスレーション値のオフセット。このオフセットは、16 バイトでアラインされる必要があります。 |
| pQOffset | pTQ 配列内の回転値のオフセット。このオフセットは、16 バイトでアラインされる必要があります。 |
| void HIKGetNodeStateTQfv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| float | pT[4], | ||
| float | pQ[4] | ||
| ) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)およびクォータニオン回転(Q)を HIKCharacterState pCharacterState で取得します。 値は個別の配列を使用して表されます。
| pCharacter | HIKCharacter: ここからトランスレーション値と回転値を取得します。 |
| pCharacterState | HIKCharacterState: ここからトランスレーション値と回転値を取得します。 |
| pNodeId | TQS の値を取得するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。 |
| pT | グローバル スペースで取得したトランスレーション値 |
| pQ | グローバル スペースで取得した回転値 |
| void HIKGetNodeStateTQNonUniformSfv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| float | pT[4], | ||
| float | pQ[4], | ||
| float | pS[4] | ||
| ) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)、クォータニオン回転(Q)、および不均等スケール(S)を HIKCharacterState pCharacterState で取得します。 値は個別の配列を使用して表されます。
この関数を使用すると、X、Y および Z 軸に異なるスケール値を指定できます。
| pCharacter | HIKCharacter: ここからトランスレーション値、回転値およびスケール値を取得します。 | |
| pCharacterState | HIKCharacterState: ここからトランスレーション値、回転値およびスケール値を取得します。 | |
| pNodeId | データを取得するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。 | |
| [out] | pT | グローバル スペースで取得したトランスレーション値 |
| [out] | pQ | グローバル スペースで取得した回転値 |
| [out] | pS | グローバル スペースで取得したスケール値 |
| void HIKGetNodeStateTQSAlignfv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| float * | pTQS, | ||
| size_t | pTOffset, | ||
| size_t | pQOffset, | ||
| size_t | pSOffset | ||
| ) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を HIKCharacterState pCharacterState で取得します。 値は単一の配列内で指定したオフセットに保存されます。
T、Q および S の値は、それぞれ pTQS 配列内の 4 つの浮動小数値の配列として保存され、これらの各配列のオフセットは 16 バイトでアラインする必要があります。T、Q および S の値を含む配列は、大きな配列内で任意の順序にできます。たとえば、スケール データのオフセットは、トランスレーションデータのオフセットより小さい可能性があります。pTQS 配列には、便宜上、T、Q、および S の値を含む配列間に混在するその他の任意のデータ値も含まれる場合があります。
| pCharacter | HIKCharacter: ここからトランスレーション値、回転値およびスケール値を取得します。 |
| pCharacterState | HIKCharacterState: ここからトランスレーション値、回転値およびスケール値を取得します。 |
| pNodeId | データを取得するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。 |
| pTQS | ノードのトランスレーション値、回転値、およびスケール値の保存に使用する浮動小数値の配列へのポインタ。 この配列は 16 バイトでアラインする必要があります。 |
| pTOffset | pTQS 配列内のトランスレーション値のオフセット。このオフセットは、16 バイトでアラインされる必要があります。 |
| pQOffset | pTQS 配列内の回転値のオフセット。このオフセットは、16 バイトでアラインされる必要があります。 |
| pSOffset | pTQS 配列内のスケール値のオフセット。このオフセットは、16 バイトでアラインされる必要があります。 |
| void HIKGetNodeStateTQSdv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| double | pT[4], | ||
| double | pQ[4], | ||
| double | pS[4] | ||
| ) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を HIKCharacterState pCharacterState で取得します。 値は個別の配列を使用して表されます。
| pCharacter | HIKCharacter: ここからトランスレーション値、回転値およびスケール値を取得します。 | |
| pCharacterState | HIKCharacterState: ここからトランスレーション値、回転値およびスケール値を取得します。 | |
| pNodeId | データを取得するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。 | |
| [out] | pT | グローバル スペースで取得したトランスレーション値 |
| [out] | pQ | グローバル スペースで取得した回転値 |
| [out] | pS | グローバル スペースで取得したスケール値 |
この関数は、浮動小数値を内部的に倍精度に変換します。浮動小数点値が使用できない場合のみ使用します。最高のパフォーマンスを得るには、できる限り代わりに HIKGetNodeStateTQSfv() 関数を使用してください。
| void HIKGetNodeStateTQSfv | ( | const HIKCharacter * | pCharacter, |
| const HIKCharacterState * | pCharacterState, | ||
| int | pNodeId, | ||
| float | pT[4], | ||
| float | pQ[4], | ||
| float | pS[4] | ||
| ) |
ノード pNodeId のグローバル スペースでのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を HIKCharacterState pCharacterState で取得します。 値は個別の配列を使用して表されます。
| pCharacter | HIKCharacter: ここからトランスレーション値、回転値およびスケール値を取得します。 | |
| pCharacterState | HIKCharacterState: ここからトランスレーション値、回転値およびスケール値を取得します。 | |
| pNodeId | データを取得するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。 | |
| [out] | pT | グローバル スペースで取得したトランスレーション値 |
| [out] | pQ | グローバル スペースで取得した回転値 |
| [out] | pS | グローバル スペースで取得したスケール値 |
| void HIKGetNormalizedCharacterStateTransformTQS | ( | const HIKCharacter * | pCharacter, |
| HIKCharacterState * | pCharacterState, | ||
| const HIKDataDescription * | pDataDescription, | ||
| void * | pDataSet | ||
| ) |
キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、データ デスクリプション pDataDescription に一覧表示されたすべてのノードについてグローバル スペースでトランスレーション値(T)、クォータニオン回転値(Q)、およびスケール値(S)を取得します。
キャラクタのキャラクタライゼーション ポーズに回転またはスケール オフセットが含まれていない場合、この関数を使用してノードの TQS の値を取得できます。この関数は、HIKGetCharacterStateTransformTQS() より速く、HIKGetNodeNormalizedStateTQSfv() への反復的な呼び出しで各ノードから値を個別に取得するより迅速に処理できます。
| pCharacter | HIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。 | |
| pCharacterState | HIKCharacterState | |
| pDataDescription | データ セットのデータ デスクリプション。 | |
| [out] | pDataSet | 最初のデータ ブロックの先頭への void ポインタ |