RenderMan for Houdini その3

今回RenderManのボリュームシェーダと屈折系シェーダのテストを行うために
以下のような海中を泳ぐクラゲのシーンを作成した。

海の中を表現するために大きなコンテナに対してボリュームシェーダを設定。
その上部にエリアライトを置き、ライトとコンテナの間にライトをブロックするための
複数のグリッドを配置した。それをVEXで小刻みに動かして水中に差し込む光を表現した。

Houdini Jellyfish test from Shuichi Sakuma on Vimeo.

クラゲの頭の動きはH18から新しくなったBendノードとsin関数を組み合わせて制御。
クラゲの触手はVellumを使って動かした。

シーンに大量の屈折体やボリュームシェーダが割り当てられたスケールの大きいオブジェクトが
ある場合でも、RenderManは極端にレンダリングスピードが落ちることがない。
このあたりが標準レンダラーのmantraとは違う点。

今回少しだけRenderManカスタムシェーダを書いたが、SeExprは必要な関数が
一通り揃ってるため使いやすかった。
(以前ブログにも書いたがSeExprはWalt Disney Animation Studiosが策定した
エクスプレッション言語)
http://wdas.github.io/SeExpr/doxygen/userdoc.html

シェーダ内でSeExpr関数を使う際には以下の本が役に立った。
REYESが終わってもこの本はまだまだ活躍できる。

 

RenderMan for Houdini

RenderMan for Houdini その2