mip_card_opacity
 
 
 

カテゴリ: mental ray > マテリアル

シェーダ ファミリ: サーフェイス マテリアル

出力: カラー

[関連 Softimage シェーダ](Related Softimage shader): Card/Opacity(mip)(カード/不透明度(mip))

ポスト プロダクションの形成を必要としないレンダリングを実行するときは、透明度に特別な配慮は必要ありません。何らかの透明度シェーダを追加するだけで、mental ray によって正しくレンダリングされます。

ただし、イメージのポスト プロダクション作業を開始し、複数のフレームバッファにレンダリングする際は、mental ray の組み込み深度およびモーション ベクトル フレームバッファを使用している場合でも、透明度の処理方法を特別に考える必要があります。

一般に、mental ray はそのフレーム バッファのデータを視線レイから収集します。視線レイとは、カメラで撮影される最初のオブジェクトにヒットするレイです。そのため、Z 深度やモーション ベクトルなどはこの最初のオブジェクトから得ることになります。

ここで、ヒットした最初のオブジェクトが完全に透明だった場合はどうなるでしょうか。または、オブジェクトの一部が透明の場合もあるでしょう。たとえば、平面にマップされた木のイメージなどが不透明度マスクで切り取られ、家の正面に立っているような場合です 平面イメージを使用して複雑なオブジェクトを表現することは、「カード」に物を重ねることにたとえられ、このシェーダの名前の由来になっています。

透明度に関連する他のシェーダを使用するときは、最終レンダリングでは木が正しく見え、枝の間から家が見える状態であったとしても、ほとんどの場合 Z 深度(および他のフレームバッファ)は平面の深度を含むことになります。たいていの後工程の作業では、これは望ましくありません。

この問題を解決するために、mental ray API には mi_trace_continue という機能が備わっています。この機能は最初のオブジェクトにヒットしたときの交差がなかったかのように、レイを継続します。[mip_card_opacity]シェーダはこの機能を内部的に使用し、「標準」の透明度と[mi_trace_continue]の使用を切り替えて、与えられたしきい値で透明オブジェクトを作成します。

名前(Name)

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

入力(input)

このシェーダの[input]パラメータ ポートはオブジェクトのカラーです。

opacity_in_alpha

有効の場合は、入力カラーのアルファ コンポーネントを不透明度として使用します。

無効の場合は、不透明度パラメータを不透明度として使用します。

不透明度(opacity)

不透明度の値です。

opacity_is_premultiplied

有効の場合は、入力カラーがすでに不透明度の値で乗算されているとみなします。無効の場合は、入力カラーが使用される前に不透明度の値で減衰(乗算)されます。

opacity_threshold

シェーダが標準の透明度を使用する状態から「完全な透明」に切り替わる時点の不透明度レベルを設定します。一般に、この値は 0.0 に設定しておきます。これは本来完全に透明なピクセルだけが「そこに存在しない」として処理されるのに、この値を高くするとフレーム バッファでは「不透明」なピクセルが「そこに存在しない」とみなされるようになるためです。実際に目に見えるレンダリングされた結果は同じになります。この影響を受けるのは、メイン カラー フレームバッファ以外のフレームバッファの内容のみです。