izhoudiniTweetこんにちは、篠島です。Positionパスはデフォルトでカメラスペースでの位置を記録したものですが、これをワールド座標で吐き出すことが可能です。コンポジットで何をしたいのかによって、ワールド座標のPositonパスが必要になってきたりします。今回はワールド座標のPositonパスを使って簡単にマスクを作って見ます。今回のサンプルファイルです。pass3.zipまずはワールド座標とカメラ座標の二つの違いを見てみましょう。カメラ座標でレンダリングされた物はスクリーンの位置に対して常に同じ色になっていますが、ワールド座標でレンダリングされた物はスクリーンの位置に関係なく、3Dシーン内の位置によって色が決まります。Max用のプラグインの説明ビデオにPositionパスを使ったコンポジットを説明しています。英語が分からなくても映像を見ればこの凄さが分かるはず。Houdiniでワールド座標でパスを吐き出すにはシェーダーを変更する必要があります。前回の記事でカスタムアトリビュートをエキスポートするのと同じ方法でPアトリビュートを吐き出します。VariablesのPからTransformノードによってカメラ座標からWorld座標に変換します。Spaceがspace:currentとなっていますが、これは現在のスペース、すなわちカメラスペースを意味します。Spaceパラメーターでspace:worldを指定してワールド座標に変換しています。Exportでエキスポートします。Nameパラメーターは分かりやすい名前を適当につけます。ここではWorld_Pと名づけました。Planesのところで、先ほど設定したワールド座標のPの名前を指定します。Mplayにレンダリングしてみると、パスがきちんとレンダリングされているのが分かります。ワールド座標でレンダリングされたポジションパスをどう使うのかを説明します。DesignのFusionを使います。Fusionは無料で使え、しかも商用利用可能なので是非ともダウンロードして遊んで見ましょう。いうプラグインが必要になります。HoudiniのCOPで出来るのか・・・というと標準のノードを使っては出来ませんが、VOPネットワークでいろいろと複雑な事をすれば出来ます。機会があるときにHoudiniのCOPの記事を書こうと思います。FusionのVolumeMaskというノードでPositionパスからマスクを作ることが出来ます。そのマスクを元にカラコレ等の処理を加えるわけです。カメラ座標で作られたマスクはスクリーンの同じ位置にしかマスクが作られないのに対し、ワールド座標で作ったマスクは綺麗に3Dシーンの中でマスクが作られています。試しに色を赤にカラコレした結果が下です。Inc.の商標または登録商標です。他のすべてのブランド名、製品名、および商標はそれぞれの所有者に帰属します。当サイトは株式会社インディゾーンが運営しています。