概要
特定の材質に対して影の抑制を行います。
生成規則
shadow-inhibitor ::=
( NoCastShadow | NoReceiveShadow | NoShadow | Transparent ) = integer (, integer )* ;
解説
NoCastShadow
指定された材質番号のポリゴンは、影を受けますが影を落としません。複雑な形状で小さなポリゴンなど、影を描画するには負荷が高く、影を受けることには問題がないものに対して指定します。
NoReceiveShadow
指定された材質番号のポリゴンは、影を落としますが影を受けません。自己照明属性を持ったポリゴンなどに対して指定します。
NoShadow
指定された材質番号のポリゴンは、影を受けず、影を落としません。夜間発光などのために重複して張られたポリゴンなどに対して指定します。
Transparent
影の投影に関する条件は NoShadow と同じですが、Transparent に指定されたポリゴンは他の全てのポリゴンの後にレンダリングされるという点が異なります。これは、透過属性を持つポリゴンを描画するために使用するためのもので、描画順により透過ポリゴンが他の不透明ポリゴンを見えなくしてしまうことを防止します。また、NoShadow 指定のポリゴンはシステムの影の設定が OFF であれば描画順に影響を与えませんが、Transparent 指定のポリゴンは影の設定に関わらず描画順を後に回します。
材質番号は、*.x ファイルに定義されている材質を 0 から数えたものです。例えば、3 個目の材質は 2 番になります。1 から数えるのではないので気をつけてください。影を受けないように設定したポリゴンは、他のあらゆるオブジェクトも込めて影を受けるように設定されたポリゴンより後に描画されます。