先日作成した動画の中で、熊が川を遡上している際の
熊に付着した水滴表現についての補足。
基本はファーにポイントを付着させておき、
そこからPOP Networkの中でパーティクルを発生させている。
発生させたパーティクルにはパーティクルの年齢に比例して
タービュランスが大きくなるような力を加えている。
<通常状態>
<水滴表現あり>
先日Houdiniで作成した熊を使って、川の流体シミュレーションを行ってみた。
今回からはHoudini20を使用。
それに伴い流体シミュレーションのワークフローをFLIP SOPに全面移行した。
レンダリングにはKarma XPUを使用し、要素分けなしの一発レンダリング。
背景はHoudiniで全てモデリングした。
Houdini19.5から実装されたFLIP SOPによりFLIPのワークフローは完全に新しくなった。
SOP内で全て完結できるため、結論から言うとセットアップがかなり分かりやすくなっている。
SOP版のFLIP Solverの実装はDOP版のものとは異なるためパラメーターには若干の違いがある。
ソルバーにはAPICとFLIPと二つのアルゴリズムが用意されており、今回はFLIPを選択。
以下は二つのアルゴリズムを使った今回のシミュレーションの比較。
ホワイトウォーターの表現には標準のものに加えて、スプラッシュ用に自分で実装したものを追加した。標準のホワイトウォーターはボリュームシェーダで、自分で実装したものはSSSを調整したサーフェイスシェーダでレンダリングしている。
熊のファーもウェット用にグルーミングを少し修正している。
さらにファーのウェット用のシェーダを作り、ファーからの第二の飛沫もパーティクルで表現してみた。
飛沫が岩石に衝突した際の岩石のウェット表現はSOP内のAttributeTransferで実装した。
数年前にHoudiniで作った熊のファーを今回作り直してみた。
以前はMantraでレンダリングしていたが今回はKarma XPUを使用。
ファーのシミュレーションにはVellumを使用した。
ファーのグルーミングは再構築し、今回ほぼ作り直した。
最初はプロシージャルにグルーミングを行い、その後局所的にブラシで
グルーミングしていった。
ファーの根元から毛先にかけての色の変化を作るために
Karma用のカスタムシェーダも作った。
ファーに関してはKarma CPUもKarma XPUもレンダリング結果はほぼ同一の結果になった。
おそらくピクセルレベルでは数パーセント程度の差だと思われる。
レンダリング時間はThreadripper(32コア)+RTX 3090の組み合わせで
フルHDサイズで1フレーム90秒程度。
1フレームを数時間かけてレンダリングしていたMantra時代とは隔世の感がある。
しかしKarma XPUは異次元のスピードだな…
スピードを追い求めて以前みたいにRedshfitやV-Rayを購入する必要ないもんな~。
Karma XPUがクォリティ的に厳しい場合にはRenderman XPUを使えばいいわけだし。
今回ふと思ったが、数年前に自分で作ったシーンファイルを開いて
中身を振り返りながら作り直していく作業は
Houdiniのスキルを上げていく上で一番いい方法かもしれない。
現在のHoudiniではLabs Tree系ノードを使用すれば簡単にリアルな木が作れる。
基本的な木の形状を作成するためのノードネットワークは以下の通り。
パラメーターを変えながらWedgeを使って数種類のパターン形状を作成。
今回、木を使った様々なシーンを作ってみた。
①「カールじいさんの空飛ぶ家」をイメージ
② 紅葉
今後、木を作るためにL-Systemを使用することはもうないだろうな。
今回作ったキャラクターのトートバックとランチトートをSUZURIで作ってみました。
自分用に作ったものですが、SUZURIで購入できますのでよろしかったら是非。
トートバックは職場で使っていますが、大きめに作られておりマチがしっかりあります。
家猫エルのキャラクター作成プロジェクトその6
先日作成したクロスシミュレーションにファーを追加。
クロスもファーも猫のひげも、全てVellumによるダイナミクス計算によって駆動。
今回は以下のようにクロスとファーの干渉を避けるためにクロス内部に入るファーを
動的に削除するVEXを書いた。
レンダリング時間はフルHDサイズで、32コアのCPUで1フレーム40秒程度。
今回は以下のキャラクター作成の作業を
全てHoudini内でやってみた。
今回、実際に自分で手を動かしてキャラクターを作ってみて
キャラクターを作る大変さがよくわかった。
特にかわいい(と、自分が思う)キャラクターを作るのは大変すぎる…