Blender 3.3 の使い方 (20) 新ヘアシステム Hair Curves

前 (ジオメトリーノード) www.mztn.org 次 (ヘアカーブの進化)


Blender 3.3 の新ヘアシステム Hair Curves

new_hair.png

Blender 3.3 には、これまでのパーティクルヘア に加えて、カーブをベースとした新しいヘアシステム機能が追加されました。 Hair Curves オブジェクトのスカルプトモードで、Add ブラシや密度ブラシで、ヘアを植えるオブジェクトの表面をなぞっていくことでヘアを植えていきます。 植えたあとで長さや形状、位置、本数も変更できます。 編集モードはなく、スカルプトモードで編集します。

hair_curves.png


ヘアーを植えるオブジェクトの用意

ヘアーを植えるメッシュオブジェクトを選択してアクティブにします。

hair_curve_20220828_00.png


「カーブ/空のヘアー」を追加

ヘアーを植えるオブジェクトが選択されている状態で、メニューの「追加/カーブ/空のヘアー」を選択します。 これで新しい Hair Curves オブジェクトが作成され、自動的に次のような設定が行われます。



その結果、親のオブジェクトの動きにヘアは追従して、メッシュの変形に合わせてヘアの相対位置は移動するため、アーマチュアやシェイプキーのアニメーションでも使用できます。

hair_curve_20220828_01.png


スカルプトモードで編集

Hair Curves オブジェクトのモードをスカルプトモードに切り替えます。

hair_curve_20220828_02.png


ブラシ

Hair Curves オブジェクトのビューポートをスカルプトモードに切り替えて、[T]キーを押すと表示されるツールバーにブラシのアイコンが並びます。

密度(Density)ブラシ

密度ブラシは、ヘアの密度 (density) や一度に植える本数を指定して、ペイントするように親オブジェクトのポリゴン上に植毛します。 座標軸を指定して対称に植えることができます。 「カーブ形状」で長さとカーブの頂点数を指定できます。 周囲のヘアの長さや形状を変更している場合は、補間にチェックすると周りに合わせたヘアを追加できます。

hair_curve_20220828_03.png


ストランド(Strand)

プロパティのレンダープロパティのカーブパネルの設定が「ストランド」の場合は、ヘアを1本の線として表します。

hair_curve_20220828_04.png


ストリップ(Strip)

カーブパネルの設定が「ストリップ」の場合は、ヘアを太さのある形で表現します。 細かく形状を指定する場合はジオメトリノードでメッシュに変換します。 頭髪のように本数が多い場合は「ストリップ」の太さ(半径)を指定するだけにすると、本数が多くても速度の低下は最小限ですみます。

hair_curve_20220828_05.png


ヘアーのマテリアル

ヘアーのマテリアルは普通にマテリアルプロパティで指定します。ヘアにマテリアルを割り当てるには、ジオメトリノードの「Set Material」ノードを使用します。

hair_curve_20220828_06.png


ヘアーのビューポート表示

ソリッドモードでヘアーに色を設定するためには、マテリアルプロパティの「ビューポート表示」のカラーで指定します。 ヘアーを「ストリップ」にして、色を設定したほうがソリッドモードで見やすくなるので、この設定で進めます。

hair_curve_20220828_07.png


伸縮/収縮(Grow/Shrink)ブラシ

密度(density)ブラシではヘアの長さは一定なので、伸縮/収縮ブラシで長さを変更します。[-]アイコンを選択するか、 Ctrlキーを押しながらでは、ヘアは短くカットされます。

球(Sphere)/投影(Projected)ではブラシを奥行きに向かってブラシの効く範囲を指定します。 「投影」ではスクリーンに垂直な方向に無限にブラシの効果が及びます。 「球」の場合は、マウスカーソルに近いヘアの位置をもとにして近い空間にブラシの効果を適用します。

hair_curve_20220828_08.png


くし(Comb)ブラシ

くしで梳くようにヘアカーブを変形させます。 「投影」を使うと確実に変形できますが、オブジェクトの裏側にまで影響が及ぶため注意が必要です。

hair_curve_20220828_09.png


ヘアーの細分化(Additional Subdivision)

レンダープロパティのカーブパネルの「さらに細分化」の値を大きくすると、ヘアはなめらかに表示されます。

hair_curve_20220828_10.png


パフ(Puff)ブラシ

ヘアの根本をオブジェクトの表面に垂直に立ち上げます。

hair_curve_20220828_11.png


スライド(Slide)ブラシ

ヘアの根本の位置を移動するブラシです。

hair_curve_20220828_12.png


スムーズ(Smooth)ブラシ

ヘアをまっすぐに伸ばすブラシです。

hair_curve_20220828_13.png


ピンチ(Pinch)ブラシ

ヘアを集めるように変形します。 コントロールを押しながらではバラけるように変形します。

hair_curve_20220828_14.png


スネークフック(Snake Hook)ブラシ

マウスカーソルの動きに合わせてヘアを伸ばします。

hair_curve_20220828_15.png


削除(Delete)ブラシ

ヘアを削除します。

hair_curve_20220828_16.png


追加(Add)ブラシ

ヘアを指定した本数増やします。 カーブ形状で長さや形状を周囲のヘアに合わせて変形します。

hair_curve_20220828_17.png


選択ペイント(Selection Paint)ブラシ

マスクとは逆にブラシの影響範囲以外をアクティブにして、その他の部分がマスクされます。 コントロールを押しながらではマスクブラシとして作用します。

hair_curve_20220828_18.png

「選択」メニューでは、選択する部分を変更できます。

hair_curve_20220828_19.png


ヘアの形状とジオメトリノード

ヘアーの形状はジオメトリノードを使って指定できます。

hair_curve_20220828_20.png

ジオメトリノードによって色々な使い方が考えられます。

hair_curve_20220828_20b.png


ヘアのシェーダノードの例

頭髪に単色のマテリアルを割り当てると、どうしても人工的なカツラのような感じになってしまいます。 生え際の色を暗くしたり、髪の色を一本一本異なる色にすると自然な感じになります。

ここでは、生え際の色を暗く、髪の色を異なる色にするシェーダを作ってみます。 分かりやすいように、生え際は黒、髪の色は赤か青といった極端な例となっています。 カーブパネルの設定は「ストリップ」に設定しています。


hair_curves_material.png

シェーダノードの全体像です。 簡単なノード構成ですが、2つのColor Rampの値の調整と、Mix ノードの2色の設定、Multiply ノードのFactor の値を変更することで、いろいろな表情のマテリアルを作成できると思います。


hair_curves_material_node.png


頭髪、まつ毛、まゆ毛を Curve Hair にした例

上記のジオメトリシェーダとマテリアルを使ったサンプルです。

まつ毛とまゆ毛は「Curve to Mesh」でメッシュにして、先細りの形状を設定しています。

この解像度では頂点数が増えるばかりで効果はありませんね。

hair_curves_long01.png


ジオメトリーノードで形状を制御

Hair Curves の親オブジェクトとの距離を制御して、根元の頂点以外を表面から離れるように配置するジオメトリノードです。 左下の値を大きくすると、ヘアの根元以外が表面から離れる方向に移動します。

HairDisplacement_Node.png


HairDisplacement_Node_jp.png


レンダリング結果です。 値を-0.1から0.2に変化させています。 ジオメトリーノードで1つの値を変えるだけで、髪全体のボリュームを変えることができました。

HairDisplacement_low.pngHairDisplacement_high.png


子カーブと集結

Hair Curves の本数を増やして頭髪を作成すると、ヘアスタイルを整える場合に扱いにくかったり、処理が重くなったりします。 パーティクルヘアのように少ない本数のヘアカーブでヘアスタイルを決め、親ヘアの周りにその子となるヘアを同じような形状で本数を増やす方法を考えます。

hair_children_sample.png

ジオメトリノードの働き

ジオメトリノード

hair_curves_model_05_02n.png


ジオメトリノード(日本語)

hair_curves_model_05_02njp.png


使用例

頭髪は、前、中間、後ろの3つのオブジェクトに分けてます。 全体を1つのカーブヘアオブジェクトとすると、収拾がつきません。 ヘアスタイルによって分け方を変えた方がいいでしょう。

hair_curves_model_05_02.png


Capture Attribute を使わない場合(縮れ)

Capture Attribute ノードで乱数で生成した値をカーブ位置のオフセットとしていますが、Capture Attribute ノードを除いて、乱数をオフセットに加えると、カーブの頂点ごとに別の乱数値が与えられます。

hair_curves_model_05_03n.png


ジオメトリノード(日本語)

hair_curves_model_05_03njp.png


使用例

カーブの途中の位置がランダムに変化するため、結果として縮れたような髪の毛になります。

hair_curves_model_05_03.png

Hair Curves(新ヘアシステム)を使うほうが、パーティクルヘアより楽に感じます。 といっても、思ったとおりのヘアスタイルにしようとしてもブラシの使い方になれないと簡単ではありません。😂


ページ先頭へ


Blender 2.8 - 4.3 の使い方 [目次]

copyright (C) 2019-2024 Jun Mizutani