シャドウ
シャドウ シェーダは material ステートメント内の shadow ステートメントに直接、または Phenomenon から間接的に、アタッチすることしかできません。シャドウ シェーダは、シャドウ レイが遮蔽オブジェクトに衝突したときにのみ呼び出され、透過される光の量は、遮蔽オブジェクトのシャドウ シェーダによってコントロールされます。シャドウ シェーダは、作成されるカラーが入力カラーでもあり、出力を別のシェーダ パラメータにアタッチできないという点が特殊です。これは、このようなアタッチメントは一方向で、出力からパラメータへと行われるからです。Phenomenon では、シャドウ シェーダは Phenomenon 内のマテリアルにのみアタッチすることができます。あるいは、Phenomenon がマテリアルのシャドウシェーダにアタッチされている場合には Phenomenon ルートにアタッチします。
透明度
透明度シャドウ シェーダは、オブジェクトにカラー(透明も可)を割り当てたり、シャドウ レイに対してオブジェクトを透明にしたりする場合に使用します。カラー アルファ < 1 またはゼロ以外にすると、透明度に応じてシャドウレイがオブジェクトを通過して透過されます。
mib_shadow_transparency
color "mib_shadow_transparency" (
color "color",
color "transp",
integer "mode",
array light "light")
- color
- オブジェクトの RGBA カラーであり、このカラーは透過されるライト カラーの乗数になります。
- transp
- RGB 透明度です。値 0 は不透明、値 1 は完全な透明です。内部的には、透明性のある RGB 成分には、使用前にカラーのアルファ値が乗算されます。
- mode
- ライトのリストの意味(すべて(0)、包括的(1)、排他(2)、またはライト依存なし(3))をコントロールします。
- light
- 現在のライト(シャドウの評価の対象となっているライト)によって、このオブジェクトからシャドウが投影されているかどうかを検出するためにループするライトのインスタンスのリストです。これにより、どのライトからマテリアルにシャドウを投影するかを、マテリアルからコントロールすることができます。mode が 0 の場合は、ライト リスト パラメータに記載されているすべてのライトを対象とします。mode が 1 の場合は、ライト リスト パラメータに記載されているライトに対応するグローバル ライト リストに記載されているすべてのライトを対象とします(包括モード)。mode が 2 の場合は、ライト リスト パラメータに記載されているライトに対応しないグローバル ライト リストに記載されているすべてのライトを対象とします(排他モード)。mode が 3 の場合は、ライト リストは無視され、常にシャドウが投影されます(mode 2 で空のライトのリストを使用するよりも効率的です)。