Houdini21のCOP3を確認する
新機能を試す

この記事について
Houdini21で正式にリリースされたCopernicusの機能を以下のページを参考にどういった機能が追加されたかの確認を行ったものです。
- Houdiniドキュメント| Houdini21のCOP更新内容
https://www.sidefx.com/docs/houdini/news/21/copernicus.html
※まだ日本語ドキュメントはありません。
(日本語ドキュメントはリリース後にSideFXのスタッフが毎回頑張って翻訳してくれているらしいです)
当記事はHoudini21での更新すべてを網羅しているわけではなく個人的に覚えておくと便利そうだなと思ったものとなっています。
(例えばSlapComp周りの更新などはゲーム用途に弱いため僕の方では取りまとめていません)
環境
Houdini Indie 21.0.440
ケーブル操作
- Houdiniドキュメント| ケーブルについて
https://www.sidefx.com/docs/houdini/copernicus/cables.html
複数のアトリビュートをパックした状態をCOPの接続として利用することができる。
ケーブルの利用
cable入力は歯車マークからAdd Input Override Portを実行すると表示できる。

ケーブル接続は名前で管理され、例えば以下のようにBakeTextureの目相が一致する出力をすべてPreviewMaterialにケーブルを介して接続することができる

※すでにケーブル入力されているアトリビュートに接続することも可能で、その場合アトリビュートの接続が優先される

ケーブルを明示的に作成することも可能でCablePack、CableUnpackを使うことでケーブルの状態が作成できる。

ノードごとに異なるケーブルの関連性
右上のケーブル出力はノードによって持っているもの、持っていないものがある。
また、ケーブル状態のアトリビュートは右上、左上の入出力に限らず、ノードによっては出力として持っている場合もある。
PreviewMaterialNodeにはMaterialという出力があるが、ノードの中を見るとこれもpackされたアトリビュートであることが判る。

テクスチャベイク / マッピング
正式リリースされたCOPにテクスチャベイクが追加された。非常に使いやすく高速。
またCOPのフロー構成が洗練されているため特殊な効果を含めたベイクなども可能で非常に素晴らしい仕組みに感じる。
- Houdiniドキュメント| Bake Geometry Textures COP ノード
https://www.sidefx.com/docs/houdini/nodes/cop/bakegeometrytextures.html
テクスチャベイクのセットアップ
ベイク処理を行うノードはBake Geopmetry Textureノードだが、Bake Setupを押すとベイクを行うためのベースとなる構成を作成してくれる

TangentNormalをベイクするならLowMeshにNormalとUVを持たせてHighメッシュを準備すればベイクできる。

レイトレース
レイトレース用のノードが追加。
- Houdiniドキュメント| レイトレース COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/raytrace.html
…が、試してみてもちょっと使い方が判らなかったので自分はサンプル待ちです
Triplanar
位置準拠でシームレスなブレンドを行ってくれるTriplanarも追加された。
継ぎ目が目立ちづらい六角タイル形式の敷き詰めも追加されている。
- Houdiniドキュメント| Tripllaner COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/triplanar.html - Houdiniドキュメント| Tripllaner Hex Tile COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/triplanarhextile.html
HeightFieldなどの位置情報、ワールド法線を投影して利用できる


余談ですがこれのテストをしてみていた時にCableの使い勝手に一番感動しました。
以下のようにCableにパックしてTriplanarに入力すると含まれるテクスチャすべてに同様のTriplannerの効果を反映させることのできます

Scatter
CopにもScatterが追加された
- Houdiniドキュメント| ShapeScatter COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/shapescatter.html
公開されている公式のサンプル動画ではランダム感のある傷のエフェクトを作成していた

ROPノードの入力サポート
ノード接続から画像出力ができるようになったのでよりパイプラインとしての構成がつくりやすくなった
- Houdiniドキュメント| ROP Image COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/rop_image.html


AOV出力について
なお、出力されるデータは「Add AOVs From Input」ボタンを押すとケーブルに含まれる値がAOVとして出力できるようなのだが、マルチレイヤーに対応したテクスチャとして出力するための設定であり、各チャンネルを個別のテクスチャに出力することは出来なそうだった。
(この辺りは過去に触ったLOPのRenderVarの挙動と同じように見えました。BC、NMといったテクスチャを個別に出したければ現状ROPを複数作成することになりそうです
- Maneki Pipeline| RenderVarごとにRenderProductを設定し、各チャンネルをレンダリングする
https://www.procedural.jp/articles/1nyqkb__fxd4/

COP間Fetch
別のCOPで作成したマップをFetchできるノードが追加された
例えば別のCOPで作成したマテリアルをレンダリング用のCOPに入力することが可能になる
- Houdiniドキュメント| Fetch COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/fetch.html


VDBサポート
int、Float、Vectorg型を含むVDBサポート。
VDBを2次元画像にサンプリングするためのノードが追加された。
- Houdiniドキュメント| Layer From VDB COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/layerfromvdb.html
HoudiniからCOPにDensity VDBをImportし、

Geometry To VDBを使ってVDBを取り出し、RasterizeVolumeで画像化できる

2Dシミュレーション
時間軸で連続して作用するような処理ブロックの機能が追加された。
併せて処理ブロックを使った機能ノードやシミュレーションプリセットが追加されている。
FlowSolver
処理をブロック化してフレームごとに再帰的に動作させる仕組みが追加された
- Houdiniドキュメント| COPs Flow Solver
https://www.sidefx.com/docs/houdini/copernicus/flow.html

FlowSolverはそのための調整をデフォルトの機能として持っており、速度による影響や熱による影響の効果を連続的に画像に対して与えられる。

また、Block内にノードを追加することでそのノードの影響もフレーム単位で画像に反映できる
(FlowBlockというよりはもともとのBlockの機能)

COP Pyro
COPでシミュレーション可能なPyroシステムが追加された
- Houdiniドキュメント| COPs Pyro
https://www.sidefx.com/docs/houdini/pyro/copintro.html
軽量な平面上でのシミュレーションとして動作する。
連番アニメーションが作成できるので特にゲームでは使い道がありそう

タブを押したときに表示される Pyro Configue ○○ 系がCOP Pyroのプリセットになっている

その他、新しいノイズパターンや効果
reaction diffusion
- Houdiniドキュメント| Cops Reaction-Diffusion solver
https://www.sidefx.com/docs/houdini/copernicus/reaction_diffusion.html

クラドニパターン
- Houdiniドキュメント| Chladni Cymatic Patterns COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/chladni.html
ドキュメントには「タイルなどに使えるかも」との記述。

フェイザーノイズパターン
- Houdiniドキュメント|Phasor Noise COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/phasornoise.html
ドキュメントには「木目などに使えるかも」との記述。

ピクセル化
- Houdiniドキュメント|Pixelate COPノード
https://www.sidefx.com/docs/houdini/nodes/cop/pixelate.html

いや、本当に更新多いですね。記事の作成が大変でした。
特にケーブル回り、ベイク周りは実用を考えた際に非常に有益に感じます。
ただのテクスチャ作成ツールではなくベイクパイプラインなどを見据えた機能が素晴らしいと感じます。

fish_ball
プロシージャル魚類