cedec 2015 houdini for game vfx
TRANSCRIPT
![Page 1: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/1.jpg)
![Page 2: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/2.jpg)
![Page 3: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/3.jpg)
Houdini はノードベースのプロシージャル3Dソフトウェアであり、基本的なワークフローはノードを接続することによりシーンを構成する。しかし、シェルフにはこういった接続を自動的に行うためのツール群が装備されていて、すべてを一から接続する作業がから解放される。
![Page 4: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/4.jpg)
例えば Pyroにより爆発のスプライトを作成したい場合、基本的な設定はVFX
用途にPyroのシーンを作るのと変わりない。例えば Pyro FXシェルフからFlamesツールを実行、ノードのパラメータを調整して求める見た目に近づけていく。
![Page 5: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/5.jpg)
Render Viewを通じてレンダリングした結果。
![Page 6: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/6.jpg)
一度連番フレームとしてレンダリングした画像ファイルを Houdiniの合成モジュール (COPs)に取り込み、 Mosaicノードを使ってテクスチャシートにして単一イメージファイルで出力。
![Page 7: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/7.jpg)
テクスチャシートを Unrealに持ち込み描画するとこのようになる。
![Page 8: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/8.jpg)
Houdiniからレンダリングによる最終画像出力だけではなく、それを構成するためのデータの出力も容易。今、ビューポートに矢印で表示されているのは炎(ボリューム)の速度ベクトル。こういったデータの視覚化および出力も容易。
![Page 9: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/9.jpg)
Orboltには、前のページの速度ベクトルを FGAという Unrealが入力可能なファイルフォーマットで出力するためのアセットがあり、無償でダウンロード可能。Link: http://www.orbolt.com/asset/Benny::UE4_velocitygridexporter
![Page 10: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/10.jpg)
出力したデータを Unrealで読み込んだ状態。
![Page 11: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/11.jpg)
FGAを用いてパーティクルの動きを操作。
![Page 12: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/12.jpg)
同様のことで爆発や、
![Page 13: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/13.jpg)
煙などにも応用可能。
![Page 14: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/14.jpg)
Fluid (流体)も同様にゲーム用素材に応用可能。上の画像は血しぶきを表現するためのデカールスプライト用の流体設定。
![Page 15: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/15.jpg)
左側はビューポートの様子(ヘッドライトのみによるアンビエント)。右側は、diffuse をレンダリングした結果。
![Page 16: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/16.jpg)
法線マップの出力も可能。
![Page 17: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/17.jpg)
二つを組み合わせることで、ライトの方向に反応するデカールテクスチャをUnreal上に表現可能。
![Page 18: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/18.jpg)
同様に Flow Mapも作成可能。元になったのは Valveによる Siggraph 2010
での講演。
http://www.valvesoftware.com/publications/2010/siggraph2010_vlachos_water
flow.pdf
![Page 19: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/19.jpg)
水の流れを2次元で表現するため、 X方向への動きを赤(R)チャネルに。Z方向のチャネルを緑(G)チャネルに 0 < x,z < 128で-方向に、128< x,z < 255で+方向に動く。X=128, Z=128 で静止状態。
![Page 20: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/20.jpg)
Houdiniでの流体シミュレーションの速度情報をポイント単位のカラー出力。左側が通常のサーフェス表示。右側が速度情報を追加した状態。
![Page 21: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/21.jpg)
速度情報を Unrealに持っていた様子。
![Page 22: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/22.jpg)
Houdiniからのデータは最終的なイメージ出力だけに限らず、アセットとして共有することも可能。
![Page 23: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/23.jpg)
左側のノードのネットワークが右側の形状を構成している。
![Page 24: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/24.jpg)
こうしたノードのネットワークは、一つのノードにまとめてしまうことが可能。その際に必要なパラメータだけを露出することで、中に入って一つ一つのノードをたどることなく、単一のビューで必要な操作を行えるようにしたノードをデジタルアセットと呼ぶ。
![Page 25: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/25.jpg)
デジタルアセットには、ノードネットワークだけでなく、メッシュデータ、画像データ、スクリプト、マニピュレータ、ヘルプなども同梱可能。これにより、スタジオ全体、プロジェクト単位、ショット単位など、あらゆる規模でのアセットの共有が可能になる。
![Page 26: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/26.jpg)
従来こうしたデジタルアセットはHoudiniユーザ間でのみ共有が可能であったが、Houdini Engineを使うことにより他のアプリケーションとの共有も可能になった。
![Page 27: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/27.jpg)
基本的に Houdini Engine は Houdini Digital Asset (HDA)を操作するためのAPIだが、それを元にしたプラグインも公開されている。
![Page 28: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/28.jpg)
![Page 29: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/29.jpg)
こちらは Houdini Engine for Unrealの様子。現在 Public Beta。
![Page 30: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/30.jpg)
そして Houdini Engine for Unity。こちらは既に出荷済み。
![Page 31: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/31.jpg)
Unity内でHDAを操作している様子。カーブを描いたところに壁のアセットが自動生成されている。
![Page 32: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/32.jpg)
こうしたアセットを組み合わせることで、レベルの構築を手早く行い、プレイの検証までの反復を高速化できる。
![Page 33: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/33.jpg)
こうしたアセットの一つに Indie Proツールから提供されている Pro Trackというアセットがある。これはUnity専用で、Unity Assetストアから購入可能。
![Page 34: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/34.jpg)
Houdini Engineのプラグインはゲームエンジンだけに限らず、DCCツールにも対応している。そのうちのひとつがMaya。
![Page 35: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/35.jpg)
こちらは Houdiniのボリュームデータを Mayaに持ってきた様子。
Houdini が対応しているデータ形式で、プラグインのホスト(この場合Maya)
が描画できるものはそのまま渡すことが可能。
![Page 36: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/36.jpg)
Houdini Engineは非常に簡単かつ堅牢な100強の関数によって構成される C
言語 API。Houdini Digital Assetファイルにアクセスし、アセット情報を取得したり設定したりしてホストに渡すことが可能。ドキュメントはsidefx.com (Support -> Documentation). にあり。
![Page 37: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/37.jpg)
Houdini 15 より、Houdini Engine APIは 2.0に。ホスト単位で複数のセッションの実行(それぞれ1スレッド)が可能。
Houdini Engineのプロセスをホストプロセスから切り離して実行可能。これでライブラリの衝突が回避可能に。
Houdini Engine 2.0 Thin Client
実行部分をフロントエンドから切り離すことも可能。
![Page 38: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/38.jpg)
これらの機能向上により3DS Maxプラグインがリリース可能に。
![Page 39: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/39.jpg)
こちらは Houdini 15 と同タイミングでリリース予定。
![Page 40: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/40.jpg)
ここから Allegorithmic Substanceと Simplygonのプラグインについて紹介。
![Page 41: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/41.jpg)
この画像は GDC2013の時のHoudiniからのアセットと Substanceによるテク
スチャをUnityに読み込み、実演している状態。
この時点では、Houdiniでのビューポートで Substanceテクスチャを表示す
ることは不可能であった。
![Page 42: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/42.jpg)
今回、Allegorithmicにより Houdini用のプラグインが開発されている。このプラグインを使うことで、Substanceシェーダを Houdiniのシェーダノード同様に扱い、ビューポートに表示、またベイクなどに用いることが可能になった。このプラグインは Allegorithmicより入手可能。
![Page 43: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/43.jpg)
こちらの例では、形状全体に黒いプロシージャルシェーダがアサインされ、突き出されたそれぞれの先に別のシェーダがアサインされている。Houdiniのグループノードによりこれらが定義されている。
![Page 44: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/44.jpg)
Houdini 15ではビューポートの描画が強化されたことによりバンプやディスプレイスメントマップもそのまま表示可能に。上の画像はディスプレイスメント付 Substanceのシェーダをそのまま持ってきた状態。
![Page 45: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/45.jpg)
こちらはSubstanceのシェーダをアサインしたジオメトリからテクスチャをベイクする様子。Houdiniは Substanceシェーダも Houdiniのシェーダも区別せず同じように扱うことが可能。
![Page 46: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/46.jpg)
Houdiniで作成した状態。Houdiniによるジオメトリのノードネットワークと複数のSubstanceのノードで構成されている。
![Page 47: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/47.jpg)
Shatterノードで事前破砕した様子。
![Page 48: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/48.jpg)
Unityでの再生の結果。
![Page 49: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/49.jpg)
Unrealでの再生。こちらはスプライトによる煙を追加している。
![Page 50: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/50.jpg)
次に Simplygonの様子。Simplygonは、ポリゴン削減やマテリアルの統合をするためのツール。Simplygonのプラグインにより、それぞれの機能が個々のノードとして実装される。これはSimplygonから提供予定。
![Page 51: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/51.jpg)
Simplygonにより複数マテリアルを一つにまとめたり、
![Page 52: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/52.jpg)
Houdiniのノードと組み合わせて必要なところにのみポリゴン削減を加えたりすることが可能。
![Page 53: CEDEC 2015 Houdini for Game VFX](https://reader033.vdocuments.mx/reader033/viewer/2022050614/58807b461a28ab64028b71a5/html5/thumbnails/53.jpg)