ブレンドシェイプは、同じトポロジーを持つジオメトリ間でモーフィングまたは ブレンド をすることができます。 ブレンドシェイプは、顔の表情や筋肉の膨らみのようなキャラクタ変形の作成とアニメーションをする際によく使用します。
リグをKineFXに取り込むと、そのリグの既存のブレンドシェイプ変形データは 維持 されます。
他にも、ブレンドシェイプアニメーションとスケルタル変形を組み合わせた時、通常ではブレンドシェイプはスケルタル変形の 前 に適用されます。
リグのブレンドシェイプを表示、調整、追加、抽出するには、以下のSOPノードを使用します:
-
Character Blend Shapes SOPノードは、ビューポートでブレンドシェイプを表示することができます。これは、
Joint Deform SOP がビューポートでキャラクタのスケルタル変形を表示する方法と同様です。
-
Character Blend Shapes Add SOPノードは、キャラクタに1つ以上の新しいブレンドシェイプを追加することができます。
-
Merge Packed SOPノードは、個々の、または、複数の名前付きパックプリミティブのブレンドシェイプを Character Blend Shapes Add SOP ノードに入れ込むことができます。
-
File Merge SOPノードは、ブレンドシェイプを含んだ単一ファイルまたは一連のファイルを Character Blend Shapes Add SOP ノードに入れ込むことができます。
-
Character Blend Shapes Extractノードは、キャラクタメッシュから個々のブレンドシェイプ(例えば、 Character Blend Shapes Add SOP で追加されたブレンドシェイプ)を表示または抽出することができます。
-
キャラクタのブレンドシェイプのブレンドウェイト値は、アニメーションスケルトン上のDetailアトリビュートによって駆動されます。ブレンドシェイプが新しいと、そこにはまだそのDetailアトリビュートがありません。
Attribute Create SOPノードを使用することで、ブレンドシェイプに対してそのDetailアトリビュートを作成することができます。
-
ブレンドシェイプのウェイトを調整またはアニメーションさせるには、何かしらのAttribute系SOPを使用して、そのDetailアトリビュートの値を制御します。例えば、
Attribute Expression SOPノードを使用すれば、簡単に パラメータエディタ から直接ブレンドシェイプのウェイトを設定またはアニメーションさせることができます。
-
Joint Deform SOPノードは、 Character Blend Shapes SOPノードの出力にキャラクタのスケルタル変形を追加することができます。
Notes
-
KineFXのエクスポート系ノードは、すべてのブレンドシェイプデータを維持します。
-
Character Blend Shapes SOPは、ブレンドシェイプが適用された後に1番目の入力からそのブレンドシェイプを削除します。そのため、そのノードの出力ではなくて 入力 をエクスポートしてください。
-
ブレンドシェイプが追加された後にそのブレンドシェイプの名前を変更する必要がある場合、
Name SOPノードを使用して、その blendshape_name Primitiveアトリビュートの名前を変更してください。
How to
キャラクタメッシュの個々のブレンドシェイプを表示する

-
Character Blend Shapes Extract SOPノードを作成します。
-
キャラクタのインポートノードのRest Geometry 出力 (通常は1番目の出力)を、その Character Blend Shapes Extract SOP ノードの 入力 に接続します。
-
その Character Blend Shapes Extract SOP ノードを選択して、Displayフラグを有効にしてから、 パラメータエディタ を開きます。
-
パラメータエディタ で、Blend Shapesパラメータのドロップダウンリストから、表示したいブレンドシェイプの名前を選択します。
これで、キャラクタのメッシュに対して Blend Shapes パラメータで選択した個々のブレンドシェイプターゲットがビューポートに表示できているはずです。
1つ以上の新しいブレンドシェイプをキャラクタメッシュに追加する

-
ブレンドシェイプを作成またはインポートします:
-
Houdiniで新しくブレンドシェイプを作成したい場合、
Sculpt SOPや
Edit SOPなどのジオメトリ編集SOPを追加して、その入力をキャラクタのインポートノードのRest Geometry 出力 (通常では1番目の出力)に接続します。新しいブレンドシェイプを複数作成したい場合、ジオメトリ編集ノードを複数追加します。
-
そのジオメトリ編集ノードを使用して、キャラクタのメッシュからブレンドシェイプを作成します。
-
Merge Packed SOPノードを追加して、ジオメトリ編集ノード(s)の出力をその Merge Packed SOP に接続します。
-
-
ディスク上のファイル内の外部ブレンドシェイプを使用したい場合、
File Merge SOPノードを追加します。
-
File Merge SOP のFileマルチパラメータを使用して、キャラクタのメッシュに追加したいブレンドシェイプが含まれている外部ジオメトリファイルを読み込みます。複数の外部ファイルを取り込みたい場合、複数の File マルチパラメータを使用します。
-
-
-
ブレンドシェイプに名前を付けます。
-
Merge Packed SOP を使用した場合、 Name パラメータフィールドでブレンドシェイプの名前を指定します。
-
File Merge SOP を使用した場合、 Attributes ▸ File Name Attribute を有効にして、そのファイル名からブレンドシェイプの名前を決めます。
-
-
Character Blend Shapes Add SOPノードを追加します。
-
Merge Packed SOP または File Merge SOP の出力をその Character Blend Shapes Add SOP の 2番目の入力 に接続し、キャラクタのインポートノードのRest Geometry 出力 (通常では1番目の出力)をその Character Blend Shapes Add SOP の 1番目の入力 に接続します。
-
その Character Blend Shapes Add SOP のパラメータエディタで、Remove Unchanged Pointsを有効にして、ブレンドシェイプから未変形のポイントを除去し、次に、Skin Nameパラメータフィールドを空っぽのままにして、1番目の入力のキャラクタメッシュをブレンドシェイプのターゲットスキンとして使用します。
-
Character Blend Shapes SOPを追加して、以下の操作を行ないします:
-
キャラクタインポートノードの2番目の出力と3番目の出力を、それぞれ Character Blend Shapes SOP の2番目の入力と3番目の入力に接続します。
-
Character Blend Shapes Add SOP の出力を Character Blend Shapes SOP の 1番目の入力 に接続します。
-
-
Joint Deform SOPを追加し、 Character Blend Shapes SOP のすべての出力をJoint Deform SOPのすべての入力に接続します(1番目の出力を1番目の入力に、2番目の出力を2番目の入力に、3番目の出力を3番目の入力に接続します)。
キャラクタメッシュ上の既存のブレンドシェイプを編集する

-
Character Blend Shapes Extract SOPを追加して、その入力をキャラクタのインポートノードのRest Geometry 出力 (通常では1番目の出力)に接続します。
-
その Character Blend Shapes Extract SOP のパラメータエディタで、 Blend Shape パラメータのドロップダウンリストから編集したいブレンドシェイプの名前を選択します。
-
Sculpt SOPや
Edit SOPなどのジオメトリ編集SOPを追加して、その入力を Character Blend Shapes Extract SOP の 出力 (通常では1番目の出力)に接続します。
-
追加したジオメトリ編集SOPを使用して、抽出したブレンドシェイプのトポロジーを変更します。
-
追加したジオメトリ編集SOPの出力を Character Blend Shapes Add SOP の 2番目の入力 に接続して、キャラクタのインポートノードのRest Geometry 出力 (通常では1番目の出力)を Character Blend Shapes Add SOP の 1番目の入力 に接続します。
-
Character Blend Shapes Add SOP のパラメータエディタで、以下の操作を行ないます:
-
Remove Unchanged Pointsを有効にして、ブレンドシェイプから未変形のポイントを除去します。
-
Skin Nameパラメータフィールドを空っぽのままにして、1番目の入力のキャラクタメッシュをブレンドシェイプのターゲットスキンとして使用します。
-
Unpacked Shape を有効にして、そのドロップダウンリストからキャラクタメッシュに追加したいシェイプの名前を選択します。
-
-
Character Blend Shapes SOPを追加して、以下の操作を行ないます:
-
キャラクタインポートノードの2番目の出力と3番目の出力を、それぞれ Character Blend Shapes SOP の2番目の入力と3番目の入力に接続します。
-
Character Blend Shapes Add SOP の出力を Character Blend Shapes SOP の 1番目の入力 に接続します。
-
-
Joint Deform SOPを追加し、 Character Blend Shapes SOP のすべての出力をJoint Deform SOPのすべての入力に接続します(1番目の出力を1番目の入力に、2番目の出力を2番目の入力に、3番目の出力を3番目の入力に接続します)。
キャラクタメッシュのブレンドシェイプのブレンドウェイト値を調整したりキーを打つ


新しいブレンドシェイプに関しては、以下の操作を行ないます:
-
Attribute Create SOPを追加します。
-
その Attribute Create SOP の入力をキャラクタのインポートノードの 3番目の出力 (Animated Pose)に接続します。
-
新しいブレンドシェイプを表現してそのウェイトにアクセスできるようにDetailアトリビュートを作成します。
-
新しく Number of Attributes マルチパラメータを作成します。
-
Name フィールドに新しいブレンドシェイプの名前を入力します。
-
Class を Detail に設定します。
-
新しいブレンドシェイプと既にキャラクタメッシュの一部になっているブレンドシェイプに関しては、以下の操作を行ないます:
-
Attribute Expression SOPを追加します。
-
新しいブレンドシェイプで、 Attribute Create SOP を使用してDetailアトリビュートを作成したばかりの場合、その Attribute Create SOP の出力を Attribute Expression SOP の 1番目の入力 に接続し、その Attribute Expression SOP の 出力 を Character Blend Shapes SOP の 3番目の入力 (Animated Pose)に接続します。
-
ブレンドシェイプが既にキャラクタメッシュの一部になっている場合、KineFXキャラクタインポートノードの 3番目の出力 (Animated Pose)をその Attribute Expression SOP の 1番目の入力 に接続し、その Attribute Expression SOP の 出力 を Character Blend Shapes SOP の 3番目の入力 (Animated Pose)に接続します。
-
Attribute Expression SOP のパラメータエディタで、以下の操作を行ないます:
-
VEXpressions タブで、 Attribute Class を Detail に設定します。
-
ウェイト値を調整したりキーを打ちたいブレンドシェイプ毎に Attribute VEXexpressions マルチパラメータを追加します。
各 Attribute VEXexpressions マルチパラメータの Constant Value は、各ブレンドシェイプのブレンドウェイトです。
例: 2つのブレンドシェイプが設定されたネットワークのマルチパラメータ -
-
追加した各 Attribute VEXexpressions マルチパラメータで以下の操作を行ないます:
-
Attribute を Custom に設定します。
-
Name パラメータのドロップダウンリスト(Attribute Classの既存のアトリビュートすべてをリストします)からブレンドシェイプチャンネルを選択するか、または、 Name フィールドにブレンドシェイプチャンネルの名前を入力します。新しいアトリビュートの場合、その名前はキャラクタメッシュ上の blendshape_channel Primitiveアトリビュート値に合わせてください。ただし、もし
Character Blend Shapesで説明されているとおりに
clipchannels
Detailアトリビュートをセットアップしているのであれば、その名前に合わせてください。 -
Type を Float に設定します。
ブレンドシェイプのウェイトまたはチャンネルが 浮動小数点値 としてKineFXに取り込まれます。
-
VEXpression フィールドに
value
と入力します。
例: 2つのブレンドシェイプが設定されたネットワークのマルチパラメータ Tip
Character Blend Shape Extract SOP を使用しない別の方法として、 Geometry Spreadsheet からキャラクタのすべてのブレンドシェイプの名前を確認することができます。
-
ネットワークエディタ 内で、 Attribute Expression SOP または Character Blend Shapes SOP を選択します。
-
Geometry Spreadsheet のツールバーのドロップダウンメニュー(適用可能であれば)から Animated Pose を選択してから、 Detail アトリビュートアイコンを有効にします。
例: Geometry Spreadsheet内のブレンドシェイプ名 -
-
各 Attribute VEXexpressions マルチパラメータの Constant Value パラメータ値を調整またはキーを打って、好きなように変形効果またはアニメーション変形を適用します。
例: Constant Valueパラメータ 例: ブレンドシェイプのウェイト値を調整
See also |