すべてのオブジェクトの可視性プロパティは、オブジェクトが反射レイ、透明度レイ、または屈折レイ、あるいはこれらすべてのレイに対してどのように反応するかを制御します。これらのレイタイプそれぞれに対して、可視性プロパティでは次の 2 つのパラメータを用意しています。
[キャスタ](Caster)パラメータは、オブジェクトが特定のタイプのレイ(反射、透明度、または屈折)をキャストできるかどうかを制御します。
[可視](Visible)パラメータは、オブジェクトがそのタイプのレイに対して表示されるかどうかを制御します。
反射、透明度、屈折については、Softimage のキャスタの定義は、mental ray の逆です。これらの属性について、mental ray では、「イメージ キャスタ」の意味で「キャスタ」という用語を使用しています。つまり、たとえば反射キャスタは反射オブジェクトのサーフェイスに表示されます。これは、Softimage の[可視]パラメータに相当します。
同様に、Softimage で「キャスタ」と呼ばれるものは、mental ray ではイメージを受け取るため「レシーバ」と呼ばれます。そのため、mental ray の反射レシーバは、そのサーフェイス上で他のオブジェクトを反射します。
mental ray スタンドアロン(ray3.exe。詳細については、「mental ray スタンドアロン レンダリング」を参照)を使用してレンダリングを行わない限り、これは重要な違いではありません。
次の 3 つのセクションでは、各レイタイプでこれらのパラメータを切り替えた場合に、シーン内のオブジェクトにどのように影響を与えるかについて例を挙げています。これらのオプションの設定のの詳細については、「キャスティングオプションと可視性オプションの設定」を参照してください。
オブジェクトが反射キャスタである場合、そのオブジェクトはシーンをサンプリングする反射レイをキャストします。オブジェクトのサーフェイスでは周りのオブジェクトが反射されます(周りのオブジェクトが反射レイに対して可視の場合)。もちろん、そのためには、オブジェクトのマテリアルである程度の反射率が定義されている必要があります(詳細は「反射率」を参照)。
オブジェクトが透明度キャスタである場合、そのオブジェクトはシーンをサンプリングする透明度レイをキャストします。オブジェクトのサーフェイスを通して周りのオブジェクトを見ることができます(周りのオブジェクトが透明度レイに対して可視の場合)。もちろん、そのためには、オブジェクトのマテリアルである程度の透明度が定義されている必要があります(詳細は「透明度」を参照)。
透明なオブジェクトに 1 以外の屈折率値が設定されている場合(つまり、ある程度の屈折が定義されている場合)、透明度のキャスティングと可視性のオプションは無視されます。代わりに、屈折のキャスティングと可視性のオプション(「屈折のキャスティングと可視性」を参照)を調整する必要があります。
透明なオブジェクトに 1 以外の屈折率値が設定されている場合(つまり、ある程度の屈折が定義されている場合)、透明度のキャスティングと可視性のオプションは無視されます。代わりに、屈折のキャスティングと可視性のオプションを調整する必要があります。
オブジェクトが屈折キャスタである場合、そのオブジェクトはシーンをサンプリングする屈折レイをキャストします。オブジェクトのサーフェイスを通して周りのオブジェクトを見ることができます。周りのオブジェクトは屈折率に応じて適切に歪んでいます(周りのオブジェクトが屈折レイに対して可視の場合)。このように見えるようにするには、オブジェクトのマテリアルである程度の透明度が定義されている必要があります。また、オブジェクトの屈折率を 1 以外の値に設定する必要があります(詳細は、「透明度」を参照)。
オブジェクトを特定のレイ タイプ(反射、透明度、または屈折)に対して可視しない場合でも、そのオブジェクトは引き続きシャドウをキャストできます。キャストされたシャドウは、反射サーフェイスで、または透明なオブジェクトを通して表示されます。オブジェクトがシャドウをキャストできないようにするには、オブジェクトの[シャドウ](Shadow) [キャスタ](Caster)パラメータをオフにします。詳細については、「Shadow Casters and Receivers(シャドウ キャスタとレシーバ)」を参照してください。
デフォルトでは、すべてのオブジェクトが反射レイ、透明度レイ、および屈折レイのキャスタであると同時に、これらのレイに対して可視されています。必要に応じて、これらのパラメータのうち任意のパラメータを無効にして、シーンの反射、透明度、または屈折、あるいはこれらすべてをさらに細かく制御することができます。
反射のキャスティング/可視性の切り替えは、複数のパスでシーンをレンダリングする場合に便利です。たとえば、各パスに表示される反射を指定できます。または、レンダリングの速度を高めるために、遠くにあるオブジェクトを反射レイに表示しないようにすることによって、前景オブジェクトが遠くにあるオブジェクトを反射しないようにすることができます。
反射、屈折、透明度キャスタ、レシーバのパーティションを作成する
シーンに多くのオブジェクトが含まれる場合は、キャスティングと可視性をオブジェクトごとに管理するのが難しくなります。複雑なシーンでは、オブジェクトのパーティションを作成し、オーバーライドを使用して、1 つのパーティション内のすべてのオブジェクトごとに反射、透明度、および屈折のキャスティングと可視性を管理する方が簡単です。このプロセスの詳細については、「パーティションのオブジェクトに対するレンダリングの可視性をオーバーライドする」を参照してください。