HIKCharacterState データの読み込み

モジュール説明

このセクションでは、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() などの関数を使用して、個別に各ノードのデータを取得するよりも高速に処理できます。

パラメータ:
pCharacterHIKCharacter: ここからデータ値を取得します。
pCharacterStateHIKCharacterState: ここからデータ値を取得します。
pDataDescriptionデータ セットのメモリ レイアウトを定義するデータ デスクリプション
[out]pDataSet最初のデータ ブロックの先頭への void ポインタ
void HIKGetCharacterStateTransformQ ( const HIKCharacter pCharacter,
HIKCharacterState pCharacterState,
const HIKDataDescription pDataDescription,
void *  pDataSet 
)

HIKCharacterState pCharacterState から複数ノードのクォータニオン回転(Q)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。

この関数は、HIKGetNodeStateTQS() などの関数を使用して、個別に各ノードのデータを取得するよりも迅速に処理できます。

パラメータ:
pCharacterHIKCharacter: ここからデータ値を取得します。
pCharacterStateHIKCharacterState: ここからデータ値を取得します。
pDataDescriptionデータ セットのメモリ レイアウトを定義するデータ デスクリプション
[out]pDataSet最初のデータ ブロックの先頭への void ポインタ
void HIKGetCharacterStateTransformTQ ( const HIKCharacter pCharacter,
HIKCharacterState pCharacterState,
const HIKDataDescription pDataDescription,
void *  pDataSet 
)

HIKCharacterState pCharacterState から複数ノードのトランスレーション(T)とクォータニオン回転(Q)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。

この関数は、HIKGetNodeStateTQS() などの関数を使用して、個別に各ノードのデータを取得するよりも迅速に処理できます。

パラメータ:
pCharacterHIKCharacter: ここからデータ値を取得します。
pCharacterStateHIKCharacterState: ここからデータ値を取得します。
pDataDescriptionデータ セットのメモリ レイアウトを定義するデータ デスクリプション
[out]pDataSet最初のデータ ブロックの先頭への void ポインタ
void HIKGetCharacterStateTransformTQS ( const HIKCharacter pCharacter,
HIKCharacterState pCharacterState,
const HIKDataDescription pDataDescription,
void *  pDataSet 
)

HIKCharacterStatepCharacterState から複数ノードのトランスレーション(T)、クォータニオン回転(Q)、およびスケール(S)を取得し、データ セット pDataSet のメモリにデータ デスクリプション pDataDescription に従って書き込みます。

この関数は、HIKGetNodeStateTQS() などの関数を使用して、個別に各ノードのデータを取得するよりも迅速に処理できます。

パラメータ:
pCharacterHIKCharacter: ここからデータ値を取得します。
pCharacterStateHIKCharacterState: ここからデータ値を取得します。
pDataDescriptionデータ セットのメモリ レイアウトを定義するデータ デスクリプション
[out]pDataSet最初のデータ ブロックの先頭への void ポインタ
例:
datadescriptionscattersqt.h および datadescriptiontqs.h
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() などの関数を使用して、個別に各ノードのデータを取得するよりも迅速に処理できます。

パラメータ:
pCharacterHIKCharacter: ここからデータ値を取得します。
pCharacterStateHIKCharacterState: ここからデータ値を取得します。
pDataDescriptionデータ セットのメモリ レイアウトを定義するデータ デスクリプション
[out]pDataSet最初のデータ ブロックの先頭への void ポインタ
void HIKGetNodeNormalizedStatedv ( const HIKCharacter pCharacter,
const HIKCharacterState pCharacterState,
int  pNodeId,
double  pXForm[16] 
)

キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、ノード pNodeId の変換行列を HIKCharacterState pCharacterState で取得します。

キャラクタのキャラクタライゼーション ポーズに回転またはスケール オフセットが含まれていない場合、この関数を使用してノードの TQS の値を取得できます。この関数は、HIKGetNodeStatefv() より迅速に処理できます。

パラメータ:
pCharacterHIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。
pCharacterStateHIKCharacterState
pNodeId行列を取得するノードのインデックス。可能な値については、HIKNodeId 列挙を参照してください。
[out]pXFormノードの変換行列

この関数は、浮動小数値を内部的に倍精度に変換します。最高のパフォーマンスを得るには、できる限り代わりに HIKGetNodeNormalizedStatefv() 関数を使用してください。

void HIKGetNodeNormalizedStatefv ( const HIKCharacter pCharacter,
const HIKCharacterState pCharacterState,
int  pNodeId,
float  pXForm[16] 
)

キャラクタのキャラクタライゼーション ポーズ(キャラクタのデフォルトの T スタンス)に含まれる回転およびスケール オフセットを適用せずに、ノード pNodeId の変換行列を HIKCharacterState pCharacterState で取得します。

キャラクタのキャラクタライゼーション ポーズに回転またはスケール オフセットが含まれていない場合、この関数を使用してノードの TQS の値を取得できます。この関数は、HIKGetNodeStatefv() より迅速に処理できます。

パラメータ:
pCharacterHIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。
pCharacterStateHIKCharacterState
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() より迅速に処理できます。

パラメータ:
pCharacterHIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。
pCharacterStateHIKCharacterState
pNodeIdTQS の値を取得するノードのインデックス。可能な値については、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() より迅速に処理できます。

パラメータ:
pCharacterHIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。
pCharacterStateHIKCharacterState
pNodeIdTQS の値を取得するノードのインデックス。可能な値については、HIKNodeId 列挙を参照してください。
[out]pTノードのグローバルトランスレーション値
[out]pQノードのグローバル回転値
[out]pSノードのグローバルスケール値
void HIKGetNodeStatedv ( const HIKCharacter pCharacter,
const HIKCharacterState pCharacterState,
int  pNodeId,
double  pXForm[16] 
)

ノード pNodeId の変換行列を HIKCharacterStatepCharacterState で取得します。 値は個別の配列を使用して表されます。

パラメータ:
pCharacterHIKCharacter: ここから行列を取得します。
pCharacterStateHIKCharacterState: ここから行列を取得します。
pNodeIdTQS の値を設定するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。
[out]pXFormグローバル スペースに取得した変換行列を保存します。

この関数は、浮動小数値を内部的に倍精度に変換します。浮動小数点値が使用できない場合のみ使用します。最適なパフォーマンスを得るには、できる限り代わりに HIKGetNodeStatefv() 関数を使用します。

void HIKGetNodeStatefv ( const HIKCharacter pCharacter,
const HIKCharacterState pCharacterState,
int  pNodeId,
float  pXForm[16] 
)

ノード pNodeId の変換行列を HIKCharacterStatepCharacterState で取得します。 値は個別の配列を使用して表されます。

パラメータ:
pCharacterHIKCharacter: ここから行列を取得します。
pCharacterStateHIKCharacterState: ここから行列を取得します。
pNodeIdTQS の値を設定するノードの固有の 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 を含む配列間に混在するその他の任意のデータ値も含まれる場合があります。

パラメータ:
pCharacterHIKCharacter: ここからトランスレーション値と回転値を取得します。
pCharacterStateHIKCharacterState: ここからトランスレーション値と回転値を取得します。
pNodeIdデータを取得するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。
pTQノードのトランスレーション値と回転値の保存に使用する浮動小数値の配列へのポインタ。この配列は 16 バイトでアラインする必要があります。
pTOffsetpTQ 配列内のトランスレーション値のオフセット。このオフセットは、16 バイトでアラインされる必要があります。
pQOffsetpTQ 配列内の回転値のオフセット。このオフセットは、16 バイトでアラインされる必要があります。
void HIKGetNodeStateTQfv ( const HIKCharacter pCharacter,
const HIKCharacterState pCharacterState,
int  pNodeId,
float  pT[4],
float  pQ[4] 
)

ノード pNodeId のグローバル スペースでのトランスレーション(T)およびクォータニオン回転(Q)を HIKCharacterState pCharacterState で取得します。 値は個別の配列を使用して表されます。

パラメータ:
pCharacterHIKCharacter: ここからトランスレーション値と回転値を取得します。
pCharacterStateHIKCharacterState: ここからトランスレーション値と回転値を取得します。
pNodeIdTQS の値を取得するノードの固有の 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 軸に異なるスケール値を指定できます。

パラメータ:
pCharacterHIKCharacter: ここからトランスレーション値、回転値およびスケール値を取得します。
pCharacterStateHIKCharacterState: ここからトランスレーション値、回転値およびスケール値を取得します。
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 の値を含む配列間に混在するその他の任意のデータ値も含まれる場合があります。

パラメータ:
pCharacterHIKCharacter: ここからトランスレーション値、回転値およびスケール値を取得します。
pCharacterStateHIKCharacterState: ここからトランスレーション値、回転値およびスケール値を取得します。
pNodeIdデータを取得するノードの固有の ID。可能な値については、HIKNodeId 列挙を参照してください。
pTQSノードのトランスレーション値、回転値、およびスケール値の保存に使用する浮動小数値の配列へのポインタ。 この配列は 16 バイトでアラインする必要があります。
pTOffsetpTQS 配列内のトランスレーション値のオフセット。このオフセットは、16 バイトでアラインされる必要があります。
pQOffsetpTQS 配列内の回転値のオフセット。このオフセットは、16 バイトでアラインされる必要があります。
pSOffsetpTQS 配列内のスケール値のオフセット。このオフセットは、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 で取得します。 値は個別の配列を使用して表されます。

パラメータ:
pCharacterHIKCharacter: ここからトランスレーション値、回転値およびスケール値を取得します。
pCharacterStateHIKCharacterState: ここからトランスレーション値、回転値およびスケール値を取得します。
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 で取得します。 値は個別の配列を使用して表されます。

パラメータ:
pCharacterHIKCharacter: ここからトランスレーション値、回転値およびスケール値を取得します。
pCharacterStateHIKCharacterState: ここからトランスレーション値、回転値およびスケール値を取得します。
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() への反復的な呼び出しで各ノードから値を個別に取得するより迅速に処理できます。

パラメータ:
pCharacterHIKCharacter: パラメータ pCharacterState で指定した HIKCharacterState の作成に使用します。
pCharacterStateHIKCharacterState
pDataDescriptionデータ セットのデータ デスクリプション。
[out]pDataSet最初のデータ ブロックの先頭への void ポインタ