今年刊行予定の書籍「Houdini SOP&VEX編」の原稿が完成。
今回、新規に書いた原稿の総ページ数は793になった。
赤本並のページ数の本を一人で書くことになるとは
夢にも思わなかったが、なんとか完成した。
全ページHoudini16に対応しております。
書店に並ぶまでには今しばらく時間がかかると思いますので
どうぞお待ち下さい。
内容の詳細に関しましては
今後このブログでお知らせいたします。
Houdiniでビルを作成するためのデジタルアセットを作ることになったため
ビルの参考資料として「超高層ビビル3(ドバイ編)」を購入した。
書籍を見た限りでは、ドバイでは建築基準法が日本よりも相当緩やかなのか
日本では見られないような様々な奇抜な形状のビルが建築されている。
今回のデジタルアセットで作成したビル群。
今回作成したデジタルアセットの仕様としては
ビルの断面形状(Nurbsサーフェイス)をデジタルアセットに渡せば
とりあえず一棟のビルが建つようにした。
1階の断面形状と最上階の断面形状をそれぞれ個別に設定することもできる仕様にし、
その場合、間のフロア形状はスムースに補間される。
ビルの捻れ具合、太さ、ガラス枚数、床の厚み、柱の密度などはUIから制御可能。
(Houdini16で作成しているため作業画面のスナップショットはまだ公開できません。
ご了承下さい)
Houdiniではモデリングする際にもVEXが大活躍する。
VEXを使ってSOPだけで粒子化エフェクトを作ってみた。
<球体版>
消滅していくプリミティブのエッジからポイントをヱミットし重力落下させている。
Houdini SOP noise propagation test ver.001 from shuichi sakuma on Vimeo.
<銅像版>
球体版よりも幾分複雑になっている。
消滅していくプリミティブのエッジからポイントをヱミットし
重力落下させるところまでは一緒だが、
落下中に銅像のサーフェイスに衝突したら、サーフェイスの傾斜に沿いながら
鉛直下向き方向に移動させる処理に切り替えている。
さらにポイントがサーフェイスの傾斜に沿って移動中、ポイントの足元のプリミティブが
既に消されていた場合には再び重力落下させる処理に切り替える。
つまり各ポイントは、重力落下とサーフェイスに密着しながら移動する二つの状態を
状況に応じて遷移していく。
Houdini SOP noise propagation test ver.002 from shuichi sakuma on Vimeo.
以前作成したツタ生成のアニメーションは
SOPオペレーターとエクスプレッションで作成したが
今回ほとんどの処理をVEXで置き換えて作り直してみた。
Copy-Stamp、TimeShiftなどを使用せず
ほとんどをVEXで実行している。
Houdini SOP ivy growth test ver.002 from shuichi sakuma on Vimeo.
オペレーター+エクスプレッション中心の制作スタイルから
VEXメインのスタイルに以降すると、
Houdiniはまるで別のソフトウェアになったかのように実行速度が一気に上がる。
HoudiniのVEXを使って
アニメーション中に動的にグループ化を行い、
重力をかける領域を徐々に大きくしていくアニメーションを作ってみた。
全てSOP内で作成。
50万ポイント使用したが、
VEXは計算が速いためストレスなく作業できた。
Houdini SOP grain test ver.001 from shuichi sakuma on Vimeo.
最近、以前作成したSOPネットワークの見直し作業を行っている。
見直すと必ず修正出来る箇所が見つかるため、結構いい勉強になる。
このアニメーションも全てSOP内のVEXで作成した。
SOPだけでモーフィングエフェクトを作成してみた。
このタイプのエフェクトは状態遷移の枠組みを
自分で作る必要があるが、Houdiniには決まったやり方がない。
POP系のGroupノードを組み合わせても状態遷移を実現出来るが、
今回はSOP内のVEXで状態遷移を実装した。
VEXで実装すれば視認性がよくなるため
状態の移り変わりが理解しやすくなる利点がある。
1.吸着->2.自由運動->3.ターゲットへの移動
以上の3つの状態をそれぞれのポイントが遷移していく。
Houidni SOP morphing test ver.002 from shuichi sakuma on Vimeo.
HoudiniのSOPだけで粒子化エフェクトを作ってみた。
ポイントの初期速度の設定、スケール処理、蝶の羽ばたき
アニメーションなどは全てVEXで処理している。
提供してもらった猫のアニメーションの尻尾がかなり高速に動くため
その動きに追従しながらポイントをエミットするために
Solverのサブフレーム数を5まで上げている。
ポイント数は約200万。
【砂バージョン】
Houdini SOP particle effect test ver.001 from shuichi sakuma on Vimeo.
【蝶バージョン】
Houdini SOP particle effect test ver.002 from shuichi sakuma on Vimeo.
HoudiniのVEXを使ってキャタピラアニメーションを作成。
今回はSolverオペレーター内でキャタピラの移動量を決めれるようにし、
キャラクターの加速・減速にも対応できるようにした。
車輪の回転量も同様の計算で決定している。
Houdini SOP catapiller test ver.002 from shuichi sakuma on Vimeo.
■煙に関して
キャラクターと地面との接地ポイントをVDBを使って求め
VEXを使って煙をどちらに流すかの情報を接地ポイントの速度ベクトルに保存する。
その後、その情報をボリュームデータへコピーし
進行方向とは逆の少し斜め上方向に煙が流れるようにしている。
HoudiniのPointWrangleを使って
ラインとの衝突回避プログラムを作ってみた。
HoudiniのCrowdは使用せずVEXでフルスクラッチ。
図のようにビュー内に適当にラインを引けば、
ラインを構成する線分を壁として処理し、
衝突回避運動を発動させるVEXになっている。
今回、全部で3つのルールを組み合わせてポイントを動かしているが、
ルールが増えると各ルールのウェイト付けの調整に時間がかかる。
Houdini SOP Line Collide test ver.001 from shuichi sakuma on Vimeo.