リアルタイム シェーダは、Render Tree の利点を最大限に活用するように設計されています。実際、リアルタイム シェーダを相互接続できる場所は Render Tree 内のみです。Render Tree における操作の詳細については、「The Render Tree(レンダ ツリー)」および「集約されているノード、ポートグループ、およびテクスチャレイヤへの接続」を参照してください。
ほとんどの場合、リアルタイム シェーダは Render Tree 内でその他のシェーダと同様に動作します。ただし、両者には、リアルタイム シェーダツリーを作成する際に考慮しなければならない重要な相違点があります。
Render Tree では、リアルタイム シェーダは、ノード カラーおよび入力/出力カラーにより簡単に判別できます。
マテリアル ノードの RealTime 入力は、リアルタイム シェーダ接続を可能にする唯一の入力です。Render Tree で作成するリアルタイム シェーダ エフェクトは、この入力を経由してオブジェクトに適用されます。
リアルタイム シェーダがコンパイルできなかった場合は、Render Tree に赤色のノードとして表示されるので、エラー状態にあることがわかります。
問題を解決するには、シェーダのコードを編集します(ファイルベースのシェーダで作業している場合)。ノードを右クリックし、[シェーダの編集](Edit Shader)を選択して、Shader Code Editor を開きます。編集が終わったら、[確認](Validate)をクリックしてコードを確認し、[適用](Apply)をクリックして変更を適用します。Preset Manager を更新するには、Softimage を再起動しなければならない場合があります。
リアルタイム シェーダと mental ray シェーダは、互換性を持ちません。しかし、同一オブジェクトに適用しても競合することなく共存します。
同一シーン内でリアルタイム シェーダと mental ray シェーダを使用する場合の注意点を以下に示します。
mental ray シェーダ ツリーは、他のマテリアル ノードのポートであればどれでも使用できますが、リアルタイム シェーダは、マテリアル ノードのリアルタイム入力に接続します。
[Modify] [Shader]コマンドを使用してリアルタイム シェーダを編集することはできません。このコマンドは、マテリアルの[Surface]入力にアタッチされたシェーダを呼び出すだけです。
リアルタイム エフェクトは、[リアルタイムシェーダ]表示モードに設定されているすべてのビューポートで表示されます mental ray シェーダは、[シェーディング]モード、[テクスチャ]モード、または[テクスチャデカール]モードに設定されているすべてのビューポートに加えて、レンダ領域でも表示されます。
[リアルタイムシェーダ]表示モードに設定されている任意のビューポートでレンダ領域を描画すると、mental ray シェーダの出力がレンダリングされます。
[OpenGL]表示モードでは[テクスチャ]表示モードと同様に、リアルタイム シェーダを使用していないオブジェクトが表示されますが、[DirectX9]表示モードではリアルタイム シェーダを使用していないオブジェクトは表示されません。