mip_motion_vector
 
 
 

カテゴリ: mental ray > 出力

シェーダ ファミリ: アウトプット

出力: カラー

[関連 Softimage シェーダ](Related Softimage shader): モーション ベクトル(mip)

モーション ブラーを適用する前に合成処理をしたり、特定の他社製品のモーション ブラー シェーダを使用したりすることがあります。このため、mental images 製品の Motion Vector(mip_motion_vector)シェーダを使用して、ピクセル空間(mental ray の標準的なベクトルのフォーマットはワールド空間)のモーションを書き出し、カラーとしてエンコードすることができます。

他社製品のツールの大部分が、モーション ベクトルをカラーとしてエンコードするときに、赤を X 軸、緑を Y 軸としています。カラーの制限に合わせるため(特に浮動小数点を使用せず、カラーが黒から白にのみ変化する場合)、モーションは係数([最大動き])でスケーリングされ、-1 ~ 1 の範囲がカラー チャンネル 0 ~ 1 にマッピングされます。

名前(Name)

Render Tree に表示されるシェーダ ノードの名前。任意の名前を入力するか、デフォルト名を使用します。

max_displace

エンコードされたモーション ベクトルの最大長を設定し、このピクセル数(またはそれ以上)のモーション ベクトルはカラーの制限範囲内で表現できる最大値(たとえば、白または黒)としてエンコードされます。

選択したイメージ フォーマットの解像度を最大限に活用するには、一般的には、8 ビットイメージの場合は[max_displace]を 50 に(実際にはこの目的では非推奨)、16 ビットイメージの場合は 2000 に設定します。シェーダはフレームに存在する最大モーション ベクトルの情報を出力するため、参照してこのパラメータを調整できます。

[max_displace]が 0 の場合は、モーション ベクトルがイメージの解像度を基準にエンコードされます。たとえば、幅 600 ピクセル、高さ 400 ピクセルのイメージの場合、正の X 方向への 600 ピクセルの動きは赤チャンネルの 1.0 としてエンコードされ、負の X 方向への 600 ピクセルの動きは 0.0 としてエンコードされます。正の Y 方向への 400 ピクセルの動きは、青チャンネルの 1.0 などとしてエンコードされます。

blue_is_magnitude

オンにすると、青のカラー チャンネルはブラーの大きさを示し、赤と緑のカラー チャンネルは 2D 方向のみエンコードします。オフにすると、青のチャンネルが使用されず、赤と緑のチャンネルが方向と大きさの両方をエンコードします。

floating_point_format

  • [OFF]: シェーダは真の浮動小数のモーションベクトルを赤および緑のカラー チャンネルに書き出します。[最大動き]に正規化されていない、またクリップもされていないことから、正の値も負の値も含まれます。[最大動き]および[青は大きさ]のオプションはともに無効になります。

  • [ロー データ](Raw): 実際のピクセル数がそのまま浮動小数点に書き出されます。

  • [Toxik]: ピクセルのアスペクト比が考慮され、ピクセルが移動した距離の測定は Y 方向のピクセル値で表され、X コンポーネントはピクセル アスペクト比によってスケーリングされます。このオプションは Autodesk Toxik に対応しています。

blur_environment

カメラ環境(たとえば背景)にカメラの動きによるブラーをかけるかどうかを指定します。オンにすると、環境からのピクセルにブラーがかけられ、オフにするとかけられません。

背景がシーンのジオメトリによって作成された場合は、この設定は適用されず、背景のブラーはそのジオメトリのモーション ブラーになります。

スキャンライン レンダラを使用する場合は、このオプションは無効です。

pixel_threshold

ブラーを追加する前に、オブジェクトを移動させる必要のある、最小のモーション ベクトル長(ピクセル単位)。実際には、書き出す前にこの長さがモーション ベクトルから単純に減算されます。

[代替チャンネル](Alternative Channels): 以下のオプションでは、モーション ベクトルおよび深度データに代替のレンダ チャンネルを設定します。このアウトプット シェーダを使用できるようにするには、リファレンス チャンネルを定義してレンダリングするパスに対して有効にする必要があります。

レンダ チャンネルの一般的な操作方法については、「レンダ チャンネルとフレーム バッファ」(「レンダリング」)を参照してください。

使用できるレンダ チャンネルとデータ タイプについては、「[Scene Render Options]プロパティエディタ」(「プロパティ リファレンス」)を参照してください。

result_fb

結果を書き出すレンダ チャンネルを指定します。

[<None>]は、組み込みの mental ray の Main レンダ チャンネルを使用することを示しています。ここで指定するレンダ チャンネルは、カラーのデータ タイプを持つものとして定義する必要があります。

depth_fb

深度情報を取得するレンダ チャンネルを設定します。

[<None>]は、組み込みの mental ray の Depth レンダ チャンネルを使用することを示しています。ここで指定するレンダ チャンネルは、深度のデータ タイプを持つものとして定義する必要があります。

motion_fb

モーション ベクトル情報を取得するレンダ チャンネルを設定します。

[<None>]は、組み込みの mental ray の Raster Motion レンダ チャンネルを使用することを示しています。ここで指定するレンダ チャンネルは、ベクトルのデータ タイプを持つものとして定義する必要があります。

use_coverage

オンにすると、アルファ チャンネルではなく[ピクセル範囲]レンダ チャンネルの情報を使用して、移動する 2 つのオブジェクトのミックスにアンチエイリアスをかけたものを含むエッジ ピクセルを使用する方法が決定されます。

Render Tree の使い方

この出力シェーダは、パス シェーダ スタックを使用して適用されます。詳細については、「パーティションへのシェーダーの適用」(「レンダリング」)を参照してください。