Octane Render for modo の AOV 出力について書いてみます。
modo 17 からGPUレンダラー「Octane Render Prime」がバンドルされるようになりました。modo の「レンダー出力」に該当する「AOVs (Arbitrary Output Variables)」機能の使い方を調べたので、メモしておきます。
Octane Render for modo のマニュアルにはAOVに関する情報がまったく無いので、正式な使用方法はわからないけど、こうやったらAOVが使えたよという記事になります。
Octane Render の AOV
Octane Render の AOV は2種類の出力方法があります。
- 「Render Passes」を使用する方法
- 「Render AOV」を使用する方法
「Render Passes」はあらかじめ決められたレンダリングパスを出力する機能です。設定が簡単です。
「Render AOV」はノードを使用してレンダリングパスを出力する機能です。「Render AOV」の「Custom AOV」を使用すると、アイテムやマテリアルの AOV 番号を使用して、任意の組み合わせで画像を出力できます。「Custom AOV」はmodo標準機能の「レンダー出力」や「アイテムシェーダ」を使用したときのように、特定のアイテムやマテリアルの画像を出力できます。
「Render Passes」と「Custom AOV」は排他の関係で、どちらか一方しか出力できないようです。OctaneにはAOVをコンポジットする機能もあるようですが、今回は調べませんでした。
「Render Passes」を使用する方法
「Render Passes」を使用すると、よく使用されるレンダリングパスを簡単に出力できます。
-
- Render Toolbar Controls で「Render Passes」ボタンを押します。
- 出力したいパスをONにします。
「Render AOV」を使用する方法
「Render AOV」を使用すると、アイテムやマテリアルの AOV 番号を使用して、任意の組み合わせで画像を出力できます。
スケマティックはこんな感じです。
「Render AOV」は、「Render AOV Group」の出力を Render アイテムの「Render AOV」に接続すると動作するようになります。
「Custom AOV」を使用するとアイテムとマテリアルを組み合わせてマスクを作成できますが、基本的には「Render Passes」でCryptomatteや「Render Layer ID」を使用すれば同じことができます。
「Custom AOV」は「Capture To Custom AOV」を使用して特定のテクスチャのマスクを出力したい場合に必要になりそうです。
画像の保存設定
おまけ。Cryptomatteを使用するときの画像保存設定を書いておきます。
- 「Save Format」を「EXR」に設定
- 「Layers」を「Multi-Layer」に設定
「Multi-Layer」を使用すると1つのEXR内に複数のパスを保存できます。「Multi-Layer Discrere Files」を使用するとパスを個別のファイルで保存します。
アニメーションのレンダリング範囲
アニメーションのレンダリング範囲は、シーンアイテムの「カレント範囲」を使用します。
シェーダーツリーのRenderアイテムの「開始フレーム」はmodo標準のレンダラー用の設定なので、Octaneは他の設定を参照する仕様なのだと思いますが...設定が遠いので使いにくい。
AOVの使い方がわかれば、とりあえずOctaneを使用できそうですね。
Octaneは完全なGPUレンダラーのため、VRAMにシーンのデータを送信する必要があります。サンプルファイルでは Octane Kernel の Settings で「Use Modo Render Cache」をONにすることで、ファーマテリアルをレンダリングできるようにしています。
しかし、ファーの密度を上げるとエラーが出てレンダリングされなくなります。Octaneでファーのような表現がしたい場合はインスタンスやReplicatorを使用したり、大きなテクスチャを使用する場合は「Out of Core」を使うなど、Octane向けにシーンを最適化する必要がありそうです。