Arbitrary Output Variables

Arbitrary Output Variables(任意の出力変数)

Arbitrary Output Variables(AOVs)とは、レンダラーにより生成された副次的な画像のことです。 同時にいくつもの画像を生成することができ、各画像は異なるファイルや異なるディスプレイドライバへ送ったり、異なるピクセルフィルタの設定を使用することもできます。 いくつかの例では、特別なピクセルフィルタモードを使用して、別のサンプルからの値を無意味に混合させないようにすることができます。 通常、これらのモードは全体のピクセルを代表する単一のサンプルを選択します。

大まかにいえば、RISのAOVは大きく3つのカテゴリ:Built-in AOVs, Custom AOVs, Light Path Expressionsに分けることができます。

Built-in AOVs

Built-in AOVは、カメラで見える可視サーフェス上に、主にポイントに関するジオメトリック情報を表示します。 これらの値は、自動的にレンダラーから生成され、有効なインテグレータに関係なく、AOVとして使用することができます。 以下は、使用可能なBuilt-in AOVの現時点でのリストです:

point P
入射光線で当たったポイントの位置
images/outputs/alienP.png
float PRadius

当たったポイントでの光線の断面サイズ

(注: 右側の画像の露出は、この説明をするために多くしています。)

images/outputs/alienPRadius.png
normal Nn
正規化されたシェーディング法線
images/outputs/alienNn.png
normal Ngn

正規化されたジオメトリ法線

(注: この特定のサンプルでは、シェーディング法線とジオメトリ法線は同じです。)

images/outputs/alienNgn.png
vector Tn
正規化されたシェーディング接線
images/outputs/alienTn.png
vector Vn
正規化されたビューベクトル(光線方向の逆)
images/outputs/alienVn.png
float VLen
光線に沿った当たったポイントまでの距離

float curvature
ローカルのサーフェス曲率
images/outputs/alienCurvature.png
float incidentRaySpread
入射光線の広がりの割合

float mpSize
光線が当たったマイクロポリゴンのサイズ
images/outputs/alienMpSize.png
float u, float v, float w
プリミティブのパラメトリック座標
images/outputs/alienU.png

u

float du, float dv, float dw
隣接するマイクロポリゴンとのu,v,wの導関数
images/outputs/alienDu.png

du

vector dPdu, vector dPdv, vector dPdw
u, v, wでの最大変化の方向
images/outputs/alienDPdu.png

dPdu

float dufp, float dvfp, float dwfp
光線の微分に対するdPdu, dPdv, dPdwの乗数
images/outputs/alienDufp.png

dufp

float time
光線のTimeサンプル

vector dPdtime
モーションベクトル

float id

identifierアトリビュートで割り当てられた整数をピクセル値として返します

(注: 右側の画像の露出は、この説明をするために少なくしています。)

images/outputs/alienID.png
float outsideIOR
このサーフェスの外側の屈折指数


Custom AOVs

上記の他、いくつかのカスタムシェーディングプラグインが、AOVに対する他のリクエストを認識し、それぞれ独自の特定の方法でそのリクエストに応えることができます。 こららのAOVの名前と何が実際に表示されるかは、特定のプラグインにより異なります。


Examples

images/dino3Crop.png A Tale of Three Dinos(3頭の恐竜の話) - ここでは恐竜の例を取り上げ、PRManのRISモードでのいくつかのAOVサポートを紹介します。 尚、現時点では、この特定の.ribファイルは他のサンプルには含まれていません。