On this page | |
Since | 19.0 |
このノードは、 パック/アンパックジオメトリプリミティブ の形式でコントロールジオメトリを1番目の入力のポイント(たいていの場合がジョイント)に階層を変えずに取り付けて、 KineFXのインタラクティブツールでそれらのプリミティブを取り付け先のポイントの セレクター として認識させるのに必要なアトリビュートを作成します。
コントロール形状を選べるようにライブラリを用意したいのであれば、このノードの2番目の入力( Shape Library 入力)で複数のプリミティブを受け取ることができます。
このジオメトリはパックプリミティブやアンパックプリミティブのどちらでも構いませんが、コントロールとして取り付けれるようにするには必ずプリミティブにname
アトリビュートがなければなりません。
既に定義済みの一連のシェイプの割り当てを再利用したいのであれば、既存のシェイプの割り当てを シェイプテンプレート として保存することで可能になります。 このシェイプテンプレートをどれかの Attach Joint Geo SOP ノードの3番目の入力に接続することで、そのシェイプテンプレートを使用することができます。
Notes
-
コントロールは、その取り付け先のポイントの トランスフォーム を継承します。そのため、ビューポート内にコントロールジオメトリが確認できないようでしたら、ジョイントスケールが原因でコントールが(ビューポート内でデフォルトのズームではポイントが見えなくなるまで)縮小されてしまっている可能性があるので、スケルトンの ジョイントスケール をチェックしてください。
-
KineFXでのコントロールの扱い方に関する詳細は、コントロールシェイプのセットアップを参照してください。
Tips
シーン内に直接コントロールジオメトリを作成する別の方法として、以下のノードを使用する方法があります:
-
File SOPノードを使用して、コントロールとして使用したいプリミティブすべてが含まれたディスク上の
.bgeo
ファイルを参照します。 -
Skeleton SOPノードを使用して、コントロールとして使用可能なKineFXポイントを作成します。
State

Create New Group
-
ビューポート内で何もポイントが選択されていなければ、このボタンは新しく空っぽのAssign Shapesマルチパラメータを作成します。
-
ビューポート内でポイントが選択されていれば、このボタンは、新しくAssign Shapesマルチパラメータを作成して、Groupパラメータフィールドにその選択されたポイントの
@names
を追加します。
Mode
Assign Shapes
このモードでは、ビューポート内でポイントを選択したり、⇧ Shiftクリックで複数のポイントを選択すると、それらのポイントに対して新しくAssign Shapesマルチパラメータが自動的に生成され、それらのポイントの@name
が自動的にGroupパラメータフィールドに追加されます。
そして、を使って、(2番目の入力の)シェイプライブラリ内のどれかのコントロールシェイプをマルチパラメータのShape Nameとして割り当てることができます。
Assign in World Space
有効にすると、割り当てられていないワールド空間のコントロールシェイプをビューポート内に表示して選択することができます。 割り当てられていないワールド空間のコントロールシェイプは、ビューポートステートでは明るい青で表示されます。
Offset Mode
シェイプテンプレートやオフセットアトリビュートで指定された他のオフセット値に関連させて、指定したローカルトランスフォームオフセットの挙動を決めます。
Pre-Multiply
指定したローカルトランスフォームオフセットを既存オフセットで事前乗算してから、その値をその既存オフセットに加算で適用します。
Override
指定したオフセットは既存オフセットを上書きして完全に置換します。
ホットキー |
アクション |
---|---|
|
入力スケルトン内のポイントを選択します。 |
G |
|
⌃ Ctrl + G |
|
|
Assign Shapes モードの時、利用可能なライブラリシェイプのリストをスクロールして選択したシェイプを現在のAssign Shapesマルチパラメータに追加することができます。 |



パラメータ
Add Shapes
Has Input Worldspace Shape Group
有効にすると、 Group パラメータフィールドで指定されたジオメトリグループを使用して、ワールド空間でモデル化されたコントロールシェイプがグループ化されます。
Group
ローカル空間でモデル化されたコントロールシェイプとワールド空間でモデル化されたコントロールシェイプがシェイプライブラリ内に混在している場合、ワールド空間で構築されたプリミティブをジオメトリグループに追加して、この Group フィールドにそのグループの名前を指定してください。
デフォルトでは、ワールド空間のシェイプのグループの名前はworld_shapes
になっています。
Note
Group の使用は 必須ではありません 。 Group を使用しなくても、このノードは内部的に完全に正常に動作します。 このパラメータは、ビューポートでAssign Shapeモードをローカル空間シェイプとワールド空間シェイプに分けるのに使用されます。
Create Missing Shape Names by Connectivity
有効にすると、シェイプライブラリ内のすべてまたは選択した一部に名前が見つからなかった場合に、その名前のないコントロールシェイプには自動的にシェイプの接続性に基づいて適切なプリミティブ名が割り当てられます。
Use Lighting
有効にすると、シーンの現行ライティングセットアップを使用してビューポート内でコントロールシェイプをレンダリングします。
Output Joint Geo Group
コントロールシェイプの格納先のプリミティブグループの名前を指定します。
指定したグループが既に存在すれば、コントロールシェイプはその既存グループに追加されます。
デフォルトでは、このプリミティブグループ名はkinefx_controls
になっています。
Assign Shapes
コントロールシェイプとそのターゲットスケルトンポイント間にリンクを作成するマルチパラメータを作成または削除します。
Group
コントロールシェイプの取り付け先のポイント(s)の名前を指定します。
このパラメータは、@name
構文で指定されたポイント名を受け入れます。
例えば、1個のポイントなら@name=head
、2個のポイントなら@name=hand_l @name=hand_r
など。
他にも、このパラメータの隣にある選択ジオメトリ矢印アイコンでは、ビューポートからこの Group のスケルトンポイントを選択することができます。
Shape Name
Group にリストしたポイントのコントロールシェイプとして使用するジオメトリプリミティブの名前。 また、このノードの2番目の入力(Shape Library入力)に接続されたジオメトリプリミティブのすべての名前は、このパラメータのドロップダウンリストに表示されます。
Keep Shape World Transform
有効にすると、 Shape Name で指定されたコントロールシェイプのワールド空間位置は維持され、そのコントロールシェイプの割り当て先のポイントのローカル空間位置を継承しません。 その結果として、つまりは、コントロールシェイプの位置に影響を与えずに入力スケルトンのRestポジションを変更することができます。
Tweak
Use Joint Offset Attribute
有効にすると、ポイント毎のコントロールシェイプのローカルトランスフォームオフセットをこのノードの1番目の入力(Target Skeleton入力)のマトリックスPointアトリビュートで指定することができます。
Offset Attribute
ポイント毎のコントロールシェイプのローカルトランスフォームオフセットを表現したこのノードの1番目の入力(Target Skeleton入力)のマトリックスPointアトリビュートの名前を指定します。
このパラメータは、 Use Joint Offset Attribute が有効な場合にのみ利用可能です。
Use Joint Color Attribute
有効にすると、ポイント毎のコントロールシェイプのカラー値をこのノードの1番目の入力(Target Skeleton入力)のベクトルPointアトリビュートで指定することができます。
Color Attribute
ポイント毎のコントロールシェイプのカラー値を表現したこのノードの1番目の入力(Target Skeleton入力)のベクトルPointアトリビュートの名前を指定します。
このパラメータは、 Use Joint Color Attribute が有効な場合にのみ利用可能です。
Multiply Shape Scale
割り当てられたすべてのコントロールシェイプのスケールを指定した係数で均一に乗算します。
Tweaks
Tweaksは、指定したポイントに対してローカルトランスフォームオフセットを指定することができるマルチパラメータです。 そのポイントに割り当てられたコントロールシェイプは、そのローカルトランスフォームオフセットを継承します。
Mode
シェイプテンプレートやオフセットアトリビュートで指定された他のオフセット値に関連させて、指定したローカルトランスフォームオフセットの挙動を決めます。
Pre-Multiply
指定したローカルトランスフォームオフセットを既存オフセットで事前乗算してから、その値をその既存オフセットに加算で適用します。
Override
指定したオフセットは既存オフセットを上書きして完全に置換します。
Group
指定したローカルオフセットが適用されるポイント(s)の名前を指定します。
このパラメータは、@name
構文で指定されたポイント名を受け入れます。
例えば、1個のポイントなら@name=head
、2個のポイントなら@name=hand_l @name=hand_r
など。
他にも、このパラメータの隣にある選択ジオメトリ矢印アイコンでは、ビューポートからこの Group のスケルトンポイントを選択することができます。
Translate
移動オフセット量を指定します。
Rotate
回転オフセット量を指定します。
Scale
スケールオフセット量を指定します。
Pivot Translate
ピボットの移動オフセット量を指定します。
Pivot Rotation
ピボットの回転オフセット量を指定します。
Change Color
有効にすると、指定したポイントのコントロールシェイプの現行カラーを新しく指定した Color で上書きします。
Color
指定した Group のコントロールシェイプを上書きするカラー値を定義します。 このカラーは、Primitiveアトリビュートとしてコントロールシェイプに適用されます。
Shape Template
このノードの3番目の入力(Shape Template入力)で指定されたシェイプテンプレートファイルの設定を決めます。 このシェイプテンプレートは、入力スケルトンと一緒に使用したいコントロールシェイプを含んだ外部ファイルです。 以下のパラメータは、3番目の入力が検出された場合にのみ利用可能です。
Target Joints
シェイプテンプレートを適用したいターゲットポイントを指定します。
デフォルトの*
値は、入力スケルトン内のすべてのポイントを選択します。
Template Joints
入力スケルトン(1番目の入力)または指定した Target Joints に転送したいテンプレートポイント(つまりは、そこに割り当てられているコントロールシェイプ)を指定します。
デフォルトの*
値は、指定したシェイプテンプレート内のすべてのテンプレートポイントを選択します。
Match By
シェイプテンプレートを入力スケルトンにマッチさせる方法を決めます。
Attribute Value
スケルトンとシェイプテンプレートのPointアトリビュート値に基づいてマッチさせます。
Point Number
スケルトンとシェイプテンプレートのポイント番号に基づいてマッチさせます。
Mapping Attribute
Map Point SOPノードの
mapping
アトリビュートと Rig Mirror Pose SOPノードの
mirror
アトリビュートの構造に基づいた辞書アトリビュートを使用してマッチさせます。
例:
{ `reference`: "ptnum"または参照するアトリビュートの名前(例えば、"name"), `value`: `reference`キーで指定されたアトリビュートの値、または、`reference`が"ptnum"の場合は対称ポイントのポイント番号, `flipaxes`: ポイントの対称化の方法が格納された整数値( __By Scale__ または __By Rotation__ ) }
この Match By モードは、テンプレートを別の名前のスケルトンにマップしたり、指定したテンプレートを対称化することができるので非常に便利です。
Attribute to Match
入力スケルトンとテンプレートをマッチさせるのに使用されるPointアトリビュートの名前を指定します。
アトリビュートのタイプにはstring
またはinteger
を指定することができ、複数のマッチも許可されています。
例えば、2つ以上のポイントが同じマッチポイント値を持っていれば、テンプレートシェイプのbox
を複数の入力ポイントに適用することができます。
このパラメータは、 Match By が Attribute Value に設定されている場合にのみ利用可能です。
Note
マッチさせるPointアトリビュートのデフォルトはname
になっています。
これは、通常ではKineFXシェイプテンプレートはポイント名を持ったスケルトンに基づいているので非常に便利です。
Keep Template Joint Offsets
有効にすると、指定したシェイプテンプレートからのローカルのTweakオフセットが入力スケルトンに適用されます。
Keep Template World Transform
有効にすると、テンプレートシェイプのワールド位置が使用されます。
入力
Input 1
ターゲットスケルトン。シェイプの取り付け先となるSOPスケルトン。
Input 2
シェイプライブラリ。入力スケルトンと一緒にコントロールシェイプとして使用するname
アトリビュートを含んだパック/アンパックジオメトリプリミティブ。
これらのプリミティブは、 ローカル空間 や ワールド空間 のどちらでモデリングしても構いません。
ローカル空間は、それらのプリミティブがすべて原点基準でモデリングされていて、それらの形状がその割り当て先のポイントのローカル空間に自動的に配置されることを意味します。 これは、球やボックスといった単純なコントロールシェイプをモデリングして管理するのに非常に都合が良い方法です。
ワールド空間は、それらのプリミティブがすべてキャラクタの正しい位置に準拠してモデリングされていることを意味します。 これは、複雑なコントロールシェイプをおおまかにキャラクタモデルに合わせたい時にオフセットさせてモデリングする必要がないので非常に都合が良いです。
Input 3
シェイプテンプレート。
ここには、入力スケルトンへ転送可能な既存のシェイプの割り当て/オフセットに関する情報を格納します。
シェイプテンプレートは、はじめからキャラクタにコントロールシェイプをセットアップする時間を大幅に短くすることができるのが良いです。
そして、 Attach Joint Geo SOP ノードと同様に、いつでもシェイプの割り当てとTweakの変更をテンプレートに対してさらに適用することができます。
Tweakデータはjointgeo
Primitiveアトリビュートに格納されます。
テンプレートは、マッチング用のPointアトリビュートを持っていてオプションでオフセット用のメタデータがpackedgeo
Primitiveアトリビュートに記録されたパックプリミティブを含んだポイントで構成されます。
デフォルトのマッチング用アトリビュート(Attribute to Match)は、非常に都合の良いジョイントのname
アトリビュートになっています。
既に一連のシェイプの割り当てを作成済みで、それらを他のリグの開始点として再利用したい場合、それらをシェイプテンプレートとして保存すると良いでしょう。
つまり、この Attach Joint Geo SOP ノードから出力された.bgeo
ファイルと完全なスケルトンを一緒に保存して、それをテンプレートとして利用することができます。
出力
Output 1
ターゲットスケルトン。コントロールシェイプが取り付けられた(Input 1の)入力スケルトン。
See also |