« skpファイルのインポートテスト4 | Main | Blenderでヘアパーティクル2 »

January 20, 2010

Blenderでヘアパーティクル

Blenderのヘアパーティクルに取り組んでいます。
どのパラメータをいじるとどう変化するかが掴めるまでが難しい。

カーブガイドを使う方法は思ったより使い勝手が悪い(例えばMaxの場合は平行なカーブ2本に挟まれた部分にヘアパーティクルを補完するような形なのでわかりやすい)ので、全部エディタブルモードで作ってみました。
末広がりにするにはPhysicsタブのRandomを調整すればいいので、あとはNormalで伸ばしてAccZのマイナス数値で長さと形を大まかに設定し、そこからエディットモードに入って形とウエイトの調整。

色々試行錯誤してなんとかミクのツインテールが風になびく感じに。(まだ一部髪が足りないですが…)

ポイントは特に直毛の場合、髪1本を適度なセグメント数にすることですね。少ないと針金みたいに硬くなるし、多すぎると柔らかすぎて直毛っぽさが無くなったり、ノイズを入れた風が当たると小刻みに震えてレンダリング結果が汚くなることも。当然セグメントが多いと計算も倍加して遅くなるのでいずれにしても多すぎは良くないですね。

今回は前髪がちょっとセグメントが多すぎな感じ。
ツインテールはマテリアルのStrand設定で太めに設定。

ウエイトは最高の1にしても、風の影響を受けるようなので、後頭部の動かしたくない部分は別レイヤーにして風の影響を受けないようにしました。
同様に前髪の部分もツインテールをなびかせるほどの強い風だとウエイトを調整してもデフレクタ(コリジョン)を置いても顔にめり込みまくりなので、これも別なレイヤーにして、そのレイヤーに新たに弱い風を作るWindのEmptyを作成。
また、パーティクルとの距離が微妙なデフレクタを仕込むと、パーティクルがとんでもない変形を起こしたり、計算が大幅に遅くなったりするので、デフレクタを設定せず、WindのStrengthが常に0~マイナスの値になるようにIPOカーブを調整して手前に引っ張るように動かすことで顔にめり込まないようにしています。

最初、ツインテールも腕に直方体のデフレクタを不可視にして仕込んでいて、髪があたるとそれなりに機能したのですが、デフレクタに当たった髪は以降、それに張り付くような傾向があって不自然な感じになるので、結局はずしました。
アーマチュアを仕込んで体の動きに連動させる場合などはデフレクタを仕込んだほうが良いことも多いと思いますが、今回のような場合はあまり体に髪が近寄らないようにWindのIPOカーブを調整してごまかしたほうが楽ですね。

それにしても、Max9でヘアパーティクルを試していたときは簡単に落ちまくっていたのに、Blenderでは大量の髪をセルフコリジョンにするなど、明らかに落ちるだろうなということをしない限り、滅多に落ちません。
Blender2.49bの安定度は凄いものがありますね。

|

« skpファイルのインポートテスト4 | Main | Blenderでヘアパーティクル2 »

Comments

The comments to this entry are closed.