Houdiniで粒子化エフェクトを作成。
全てSOP内で実装し、VEXでカスタムフォースを作った。
最初に指向性を決めるベクトルを作り、それに対してカールノイズとタービューランス(乱流)を
混ぜ合わせたベクトルを加算してポイントを移流させた。
このブレンド率を決めるのに時間がかかった。
Houdiniで粒子化エフェクトを作成。
全てSOP内で実装し、VEXでカスタムフォースを作った。
最初に指向性を決めるベクトルを作り、それに対してカールノイズとタービューランス(乱流)を
混ぜ合わせたベクトルを加算してポイントを移流させた。
このブレンド率を決めるのに時間がかかった。
HoudiniのSparse Pryoを使って衝撃波(Shock Wave)を作ってみた。
今回も大規模なシミュレーションだが、ボクセルサイズを5cmにしても
Sparse Pryoでは実用的なスピードで計算が回った。
Sparse Pryoのおかげで、個人レベルで一台のマシンでの作業でも
大規模な流体計算が可能になったと実感した。
HoudiniのSparse Pyroを使って爆発を作ってみた。
基本はシェルフから作成したが、
そのままではリアルな爆発にはならないので
色々とカスタマイズした。
爆破の規模は100立方メートル以上の非常に巨大なものだが、
Sparse Pyroのおかげで作業は比較的軽かった。
4年前に上梓しました拙書「Houdini SOP&VEX編」ですが
紙の本は在庫がほぼ無くなり完売となったそうです。
お買い上げいただいた皆様ありがとうございました。
今後はKindle版のみの販売となります。
引き続きHoudini FLIPの研究。
今回はHoudiniを使って、海外の映画で何度か見たことがある
水の精霊のようなキャラクターを作成してみた。
キャラクターは4層構造になっており、1層目はベースの海面、2層目はFLIPシミュレーション、
3層目はホワイトウォーター、4層目は細かな飛沫シミュレーションとなっている。
標準のホワイトウォーターでは今回のような空間を自由に動く波の形状に対応できる
白い泡立ちを作るのが難しかったため、VEXで実装した自前のものを使用した。
キャラクターの動きはKineFXを使用してキーフレームで作成。
キャラクターの全長は6m。
FLIPシミュレーション中もキャラクターの顔の凹凸が認識できるように、
VEXで顔部分のFLIPパーティクルの初速度を緩やかにしたりするような細かな処理も入れている。
今回はコンポジットまで全てHoudiniを使用。
FLIPパーティクル数は1000万程度だが、今まで作ったシーンの中では最大の計算量だった。
引き続きHoudini FLIPのR&D。
今回は液体の動きをVEXで制御してみた。
VEX内ではカールノイズで渦状の動きを作り、
液体をサーフェイスに吸着させるための力を発生させた。
この吸着力をsin関数で増減させ、サーフェイス上に波の高低差を発生させるようにしてみた。
これにより液体はサーフェイスに吸着しながら渦を巻くようになる。
さらに部分的に液体を落下させるようにするため
全体に対して一律に重力はかけないようにし、
VEX内の条件式の中で重力を発生させるようにしてみた。
結果、標準のFLIPでは作れない面白い動きになった。
HoudiniのFLIPを使って水の飛沫シミュレーションを行ってみた。
先日Houdiniで作成した熊の動きに合わせて自然な飛沫になるよう調整。
水の飛沫はWhiteWater Solverで作成し、
水本体のSDFから適度に離れて飛散していくよう調整してみた。
また、水に触れる部分のファーに対してはwetアトリビュートを設定し、クランプ量(束)を
変化させ、濡れた質感を出すためにwetアトリビュートを組み込んだファーシェーダを作成した。
Vellum Solverを使った熊のFurダイナミクステスト。
Self Collision(ファーの自己衝突)をオフにしたためSubstepsは3程度で十分だった。