カテゴリー別アーカイブ: houdini

Houdiniで作る廃墟

「廃墟」をテーマにHoudiniでアニメーションを作成してみた。

今回Houdiniでやったこと

・ドラゴンの羽・尾・首アニメーション(Bend+CHOP)
・ドラゴン群衆ユニットの移動タイミング、ロール回転制御、群れのばらつき具合の制御(VEX)
・背景ビルモデリング(VEX、VDB)
・ツタ植物モデリング(VEX)
・ビルに対するツタの巻き付け制御(VEX)
・デブリパーティクル(DOP)
・DOF、フォグ(COP)

ツタの成長方向はVEXでコントロールし
どんな形状のビルに対しても巻き付くようにVEXで制御した。

今回、コンポジットはCOPで行ったが
昔に比べるとUIが圧倒的にわかりやすくなっており使用しやすくなった。

シーンの規模が大きくなるほど、Houdiniを使用するメリットが実感できる。

Houdini Denoiser

HoudiniのDenoiser テスト。
実際の制作においてはDenoiserの使いどころは限定されると思うが
モーションブラー時にはかなり効果がある。

以下の動画はデフォルトの設定(ピクセルサンプル3×3)でmantraでレンダリングしたもの。
モーションブラー特有のグレインノイズが綺麗に除去されている。

Houdini denoiser test from shuichi sakuma on Vimeo.

Houdini CHOPによる慣性効果

ベンドアニメーションにCHOPで慣性効果を加えて
羽ばたきアニメーションを作ってみた。フリーモデル使用。

今回ボーンは一切使用していないので、羽、首、尾のアニメーションは全てSOP内で作成できた。
CHOPはHoudiniではあまりスポットライトが当たらない機能だが
実際に使ってみるとキャラクターアニメーションとの親和性が高いことを実感する。

Houdini dragon wing test from shuichi sakuma on Vimeo.

Houdini 戦車モデリング

Houdiniでフルスクラッチで戦車を作成してみた。

この戦車を作るために作成したSOPノードの数は合計788個。
全て四角ポリゴンで作成した。

ラジアルメニューを中心に作業を進めていけば
他のDCCツールと同様にHoudiniでもモデリングは十分できる。
さらに現在はTopoBuildノードがあるため、キャラクターなどの
ハードサーフェース以外のモデルにも対応できるはずだ。

Houdini UDIMワークフロー

HoudiniとSubstance Painter間のUDIMワークフローについての備忘録。

まずHoudiniでモデリングを行う。

今回は3つのパーツ(外装パーツ、インナーチューブ、背中ブースター)に分けてUVを作成した。
それぞれUV UnwrapでUV展開した後、UV LayoutでUDIMの1001,1002,1003の領域へレイアウト。
(UDIMに関しては以下のサイトを参照)
https://www.fxguide.com/featured/udim-uv-mapping/



最後にHoudiniからobjファイルとしてジオメトリをエクスポートする。

ここらかサブスタンスペインターの作業。
サブスタンスペインターでHoudiniからエクスポートしたobjファイルを読み込む際に
UDIMのテクスチャー領域ごとにテクスチャーセットを作成する設定を行う。

これによりUDIMのUV領域ごとにテクスチャーを作成できるようになる。



作成されたテクスチャー。

サブスタンスペインターからテクスチャーのエクスポートを行う。
プリセットを「PBR Metal Rough」に設定し、
BaseColor,Metallic,Roughness,Normalテクスチャーをエクスポートする。
(テクスチャーセットの3セット分が一度にエクスポートされる)

ここからHoudiniの設定。サブスタンスペインターの見た目と合わせてみる。

以下、PrincipledShaderのパラメーター設定。
(Metal-Roughnessワークフローに関しては以下のサイトを参照。)
https://academy.allegorithmic.com/courses/the-pbr-guide-part-1
https://academy.allegorithmic.com/courses/the-pbr-guide-part-2

BaseColor、Roughnes、Metallic、Normalテクスチャーにサブスタンスペインターから
エクスポートされたテクスチャー名を設定する。
テクスチャー名はファイル名の「udim番号(1001から1003)」の部分を
「%(UDIM)d」に置き換えればOK。


ついでに、環境マップもサブスタンスペインターと合わせてみる。
デフォルトでは、以下のフォルダに入っているPanorama.hdrを使用している。

mantraでレンダリング。これでサブスタンスペインターとほぼ同じ見た目になる。


Houdini Rose シミュレーション

以前、Houdini のClothで作成したバラの花びらのシミュレーションを
Vellumでやってみた。
バラのモデルはHoudini 17で再度フルスクラッチで作成した。

Houdini Rose from shuichi sakuma on Vimeo.

80枚の花びらをVellumでシミュレーションしているが
動作が非常に軽く、セッティングはClothよりもシンプルで使いやすい。

VellumはSOPに組み込みやすいので、
モデリングの一部としても使っていけると思う。

 

Houdini Hair シミュレーション

HoudiniでHairのシミュレーションを行ってみた。

Houdini Hair Simulation test from shuichi sakuma on Vimeo.

Houdiniは何をやるにもアトリビュートドリブン(駆動)なので
今回はアトリビュートを使って、髪の根本から毛先までかけて
徐々に髪質が柔らかくなるような設定にしてみた。
これにより、髪の毛先はより外部フォースの影響を受けやすくなる。

以下は髪の毛のコリジョン設定を可視化したもの。

今回のようなロングヘアーの場合、リアルな挙動を再現するためには
髪の毛同士のセルフコリジョンが必要になり、計算負荷は高くなる。
それでもVellumの高速な処理のおかげで8コアのマシンでも十分作業ができた。

 

Houdini Hair ジェネレーター

Houdiniでヘアーを作成してみた。

今回は標準のHair Generateノードは使用せずに
SOPで自前のジェネレータを作ってヘアーを生成した。

 

■ 巻き髪ヘアー

■ 三つ編みヘアー

ヘアーを生成後、VEXを使って髪のボリューム感(ふわっとした感じ)を出している。
この自前のジェネレータはチューブジオメトリからプロシージャルにヘアーを生成するので
ロングヘアーなどに活用できそうだ。

 

Houdini Fur ダイナミクステスト

Vellumによるファーダイナミクスのテストを行った。
従来はWireSolverを使用していたので
VellumSolverに切り替えると体感的にも再生スピードが上がるのがわかる。

WireSolverの場合、従来のmass-springモデルのため
速い動きに対しては解が発散傾向にあり
ワイヤーの伸びはどうしても避けられなかった。

これに対して、Vellumの場合PBDモデルのため解は常に安定することになり
ワイヤーの伸び縮みを気にしなくてよくなる。
少なくとも体毛の揺れに関しては、WireSolverを使用することはなくなりそうだ。

今後はVellumのおかげで、キャラクターFXに関しても
Houdiniを使用することが増えてきそうだ。

 

Houdini Fur


Houdiniを使って動物のファーを作成してみた。
使用バージョンは16.5。


16.5から体の部位ごとにガイドカーブを別々にグルーミングして
その後マージすることが可能になった。
(「グルーミング」とは毛の流れを整える作業)
マージ後、各部位の境界付近のガイドカーブは
CVの数も含めて綺麗に補間される。

今回、全長2メートルの熊に対して生成されたファーは約70万本。
ファーのベースとなるガイドカーブは約1万本使用した。

このようなファーに対しても、Houdiniのプロシージャルシステムのおかげで
かなり効率的に作業を進められたが
グルーミング作業時には挙動が若干もっさりしている印象を受けた。
(H17では、ヘルプを見ると4倍から10倍のスピードになっているらしいが…)

やはりというか、動物のファーを本物らしく見せるのはかなり難しい。