HIKCharacterState データのデータ セット関数

データの設定と取得のワークフロー」で説明しているデータ セットを使用して、同時に複数のノードのデータを設定および取得できます。

データ セットで使用する必要があるデータ デスクリプション構造を含む、その正確な手順は、各ノードのトランスレーション、向き、スケール データの設定と取得で個別の数値配列を使用するか、変換行列を使用するかによって異なります。「個別の TQS 値を使用してノード データを設定および取得する」または「マトリックスを使用してノード データを設定および取得する」を参照してください。

グローバル スペースとローカル スペースの比較

HIKCharacterState でノードのデータを設定および取得するときは、データ セット内のデータがノードのトランスレーション、回転、スケールをグローバル スペースで表すか、親ノードに相対的なローカル スペースで表すかをデータ デスクリプションで指定する必要があります。HumanIK は、内部的には正規化されたグローバル スペースの値を使用して各ノードの状態を表します。データ セット内のデータを設定または取得するときにローカル スペースを指定する場合、HumanIK は座標を透過的に変換します。

ただし、HumanIK に対して不明なジョイントがキャラクタに含まれていて、ローカル スペースでノード データを取得または設定する場合、不明なジョイントのトランスレーション、回転、スケールは、HumanIK がその子ノードの値を変換する方法に影響を与えます。この場合は、各ノードのペアレント オフセットも指定して、不明な親または親ジョイントのエフェクトを示す必要があります。詳細は、「追加ジョイントをサポートする」を参照してください。

ローカル スペースの使用を選択する場合は、1 つのパスの HIKCharacterState で、すべてのノードのトランスレーション、回転、スケールを設定する必要があります。2 つ以上のパスが異なるノードのローカル スペースで値を設定するようにしたり、ローカル スペースで一部の値を設定し、グローバル スペースで他の値を設定することはできません。