Houdini 21.0 キャラクタ KineFX

Neck Head

キャラクタの首と頭のコントロールをセットアップします。

Since 21.0

このコンポーネントは、キャラクタの首と頭のコントロールをセットアップして、キャラクタの様々なセグメント(またはパーツ)に対してループで実行することができます。 これは、Splineコンポーネントに似ています。

このファイルの例では、Ottoテストジオメトリに対してNeckリグコンポーネントを使用する方法を説明しています。

NeckComponent

Neckコンポーネントは、下図に載せているコントロールを作成します。 これは、rootコントロール、root CV(制御頂点)、tip CV、tipコントロールの4つのコントロールを持つ接線スプラインをセットアップします:

デフォルトでは、CVは一番近い外側にあるコントロールの子になります。 そのため、root CVはrootコントロールの子になり、tip CVはtipコントロールの子になります。 rootコントロールは首のメインの親となり、中間コントロールと端点コントロールを使用することで、首と頭の回転をさらに微調整することができます:

Neckコントロール

端点コントロールのデフォルトの位置は頭の上方にありますが、そのピボット位置は頭の中央にあります。 End Control Offset パラメータを使用することで、端点コントロールの位置を変更することができます:

端点コントロール

頭のみを回転させたい場合は、端点コントロールを使用してください。 頭の回転に合わせて首を捩じりたい場合は、tipコントロールを使用してください:

端点コントロール(左)、tipコントロール(右)

ビューポート内のメニューから、Neckコンポーネントの構成オプションにアクセスすることができます。 首を伸ばすには、 Settings タブの Add Stretch Control パラメータを有効にしてください。 これにより、Neckコンポーネントのメニューにスライダ設定パラメータが追加され、首の伸縮を調整できるようになります:

Stretchコントロール

パラメータ

Name

このコンポーネントによって作成されるノードに追加する名前。 Segments を使用する場合、そのセグメント名もノード名に追加されます。

Settings

Curve

Type

コントロールポイントから作成するカーブのタイプ。

Curve Order

カーブを構築するのに使用されるコントロールポイントの数。デフォルトで Curve Order が4に設定されているのは、首にはrootコントロール、root CV、tip CV、tipコントロールというコントロールポイントがあるからです。

Bezierカーブ(カーブのタイプは Type パラメータで設定されます)では、コントロールポイントの数がカーブの階数と同じである必要があります。複合カーブは、個々のカーブセグメント間でコントロールポイントを共有しているため、カーブセグメントが追加される度にさらにorder-1個のコントロールポイントが必要になります。この要件は、<number_of_control_points> % (order-1) == 1の方程式で表現することができます。詳細は、コントロールスプラインを参照してください

Pin Root

オンの時、ルートジョイントの方向をrootコントロールに拘束します(ルートジョイントは、rootコントロールによって駆動されるジョイントです)。

Pin Tip

オンの時、先端のジョイントの方向をtipコントロールに拘束します(先端のジョイントは、tipコントロールによって駆動されるジョイントです)。 サンプルは、Splineコンポーネントを参照してください。

Stretch

Add Stretch Control

オンの時、Neckコンポーネントのメニューにスライダ設定パラメータが追加され、首の伸縮を調整できるようになります:

Stretchコントロール

Stretch

首の長さを維持するかどうかを指定します。0に設定すると、首の長さが維持されます。1に設定すると、首はTipコントロールに従って伸びます。

Stretch Scale

ストレッチの量を制御します。この量を増やすと、ストレッチの効果が高まります。

Squash Scale

スカッシュ(押し潰し)の量を制御します。この量を増やすと、スカッシュの効果が高まります。

Keep Tip Scale

オンの時、首を引き伸ばしても首の先端のスケーリングは変更されません。オフの時、首を引き伸ばすと首の先端がスケールされます。

Note

スケーリングの効果を確認できるのは、 Stretch Scale または Squash Scale が1より大きい場合のみです。

“Keep Tip Scale”がオン(左)、Keep Tip Scaleがオフ(右)

Driven

Segments

セグメントは、各首チェーンを分けるタグです。タグは、Attribute Adjust Array SOPを使用してスケルトンジョイントにセットアップすることができます。詳細は、リギング用スケルトンの準備を参照してださい。

Segments が空っぽの場合、Neckロジックは1回だけ実行されます。

Note

Segments パラメータはAPEXパスパターン(例えば、#<tag>関数)に対応していません。代わりに、このフィールドに直接タグ名を指定してください。

Driven

“neck_01 neck_02 neck_03 ”など駆動するTransformObjectノード。 このパラメータもAPEXパスパターンに対応しているので、このフィールドにタグ(例えば、#neck)を指定することができます。

FK Transformコンポーネントの Tags パラメータにデフォルトで設定されているbindタグも指定することをお勧めします。FK Transformコンポーネントは通常、リグの構築を開始するのに使用される最初のコンポーネントです。bindタグを含めると、例えばneckタグなど、継承した可能性のある他のコントロールを含めないようにすることができます。つまり、このコンポーネントでは、 Driven を“#bind & #neck”に設定することができます。

Driver

コントロール名が一意であることを確認してください。複数の首セットアップを作成する際に、名前の衝突を避けるためには、文字列“{segment}”を使用して首セグメントを指定します。例えばセグメントをneck_01という名前にした( Segments をneck_01に設定)場合、 Root Name を{segment}_root_ctrlに設定します。 Segments の値が文字列“{segment}”を置換するので、rootコントロールの名前はneck_01_root_ctrlという名前になります。

Root Name

rootコントロールの名前です。

Root CV Name

rootの接線CVの名前。

Mid Name

中間コントロールの名前。

Tip CV Name

tipの接線CVの名前。

Tip Name

tipコントロールの名前。

End Name

ヘッドコントロールの名前。 このコントロールは首に影響しません。

Root CV Offset

rootの接線CVに追加するオフセット。

Tip CV Offset

tipの接線CVに追加するオフセット。

End Control Offset

端点コントロールに追加するオフセット。

Parent

Root

rootコントロールの親。空っぽの場合、rootコントロールはそれが関連付けられたTransformObjectノードの親に親子化されます。例えば、rootコントロールがノードC_neck_02に配置され、C_neck_02の親がC_neck_01の場合、rootコントロールはC_neck_01の子になります。複数の背骨をセットアップしている場合、このフィールドは空っぽのままでも構いません。

また、スケルトンに親タグを設定し、その親タグと Segments タグを使用して各セグメントの親を取得することもできます。例えば、セグメントをneckという名前にして( Segments をneckに設定)、親ジョイントにneck_parentとタグ付けすると、 Root を{segment}_parentに設定することができます。 Segments の値が、文字列“{segment}”を置換するのに使用されます。

rootコントロールの親子化を解除するには、このパラメータにアンダースコア(“_”)を設定します。

このパラメータは、APEXパスパターンに対応しているので、このフィールドにタグ(例えば、#<tag>)を指定することができます。

Tip

tipコントロールの親。空っぽの場合、tipは Root に親子化されます。tipコントロールの親子化を解除するには、このパラメータにアンダースコア(“_”)を設定します。このパラメータは、APEXパスパターンに対応しているので、このフィールドにタグを指定することができます。

CV

CVの親。空っぽの場合、CVは一番近い外側にあるコントロールに親子化されます。CVコントロールの親子化を解除するには、このパラメータにアンダースコア(“_”)を設定します。このパラメータは、APEXパスパターンに対応しているので、このフィールドにタグを指定することができます。

Tags

Component

このコンポーネントによって作成されるネックノード(rig::SplineInterpolateTransforms)に追加するタグ。

Root

このコンポーネントによって作成されるrootコントロールのTransformObjectに追加するタグ。

Tip

このコンポーネントによって作成されるtipコントロールのTransformObjectに追加するタグ。

CV

このコンポーネントによって作成されるCVのTransformObjectに追加するタグ。

Shape

APEX Configure Controls SOPにはコントロールの外観を変更するオプションがより多く用意されています。

Shape

コントロールの形状。 ここには、ビルトインのAPEXコントロールシェイプのどれかを設定することができます。

Color

コントロールシェイプのカラー。スケルトンからシェイプのカラーを継承するには、この値を(0, 0, 0)に設定します。

Translate

コントロールシェイプの移動。

Rotate

コントロールシェイプの回転。

Scale

コントロールシェイプのスケール。 スケルトンからシェイプのスケールを継承するには、この値を(0, 0, 0)に設定します。

See also

KineFX

概要

キャラクタ要素の準備

APEXグラフを使用したリギング

APEXスクリプトを使用したリググラフの構築

リグコンポーネントを使用したリギング

ビューポート内でアニメーションを付ける

SOPベースのアニメーション

変形

アニメーションのリターゲット

H20以前

ペイン

別表