About Houdini

日本ではマイナーな存在ですが、ハリウッドではビジュアルエフェクトツールとして良く知られているツールです。パーティクルが強力なツールとして紹介されることが多いのですが、一番の特徴は徹底したProceduralなアーキテクチャです。
Procedural とは、「手続き型」と訳されることがありますが、プログラム的な方法に基づいてシーンを作成する手法です。例えばパスラインを作成して、これに断面を指定して押しだし形状をモデリングします。Houdiniはこのモデルのデータをこんな形で保持します。

image031223_1

複数のアイコンがラインでつながれており、プログラムの入門書で見かけるフォローチャートのようですね。そうです、まさにプログラムの手順がアイコンで記述されているのです。これをHoudiniではSOP(Surface OPeration)と呼んでいます。

手順がそのまま残っているので、形状の変更も簡単です。断面の形状を変更したりすれば、それが最終的な形状にリアルタイムで反映されます。パスを変更しても同様ですし、これらの形状をアニメーションさせれば、最終的なオブジェクトもアニメーションに対応して変形します。

image031223_2

MAYAやXSIでも同様なアプローチはスクリプト言語を記述することで可能になります、スクリプトがコマンドを記述するのに対して、SOPの場合はアイコンの1つ1つが「ポイントを消去する」「サーフェースにくっつける」といった単純なプログラムになっており、これを繋げて行くことで、様々なシーンを構築することが出来るのです。修正や機能追加もアイコンを追加して設定するだけです。ある手順を一つのアイコンにまとめたり、過去に作成したSOPを別のプロジェクトで改良して使用したりと、プログラムをアイコンを使って組んでいるような感じです。

GUI操作だけでは限界がある、スクリプトを使う場合、プログラムの心得が無いとちょっと敷居が高いし・・・Houdiniの場合は GUI操作とスクリプティングの中間的な存在である、SOPを使ってプログラム的なアプローチをお手軽に構築するすることが出来るのです。「Houdiniってプログラムっぽくて難しいですよねぇ」という話を時々耳にしますが、ちょっとした要領さえ飲み込めば、実はスクリプトを組むよりよっぽどお気軽に、スクリプトで構築するものと同等のパワフルな環境を手に入れることが出来るのです。この魅力にとりつかれると、「使い慣れると手放せなくなる」ツールに変身していきます。(笑)