多種多様なタイプのシーン エレメントに、さまざまな方法でシェーダを適用できます。どの方法でシェーダを適用しても、パラメータを修正するときはシェーダのプロパティ エディタを使用します。
オブジェクトに適用されたシェーダは、ローカル シェーダと呼ばれます。ほとんどのシェーダがこのセクションで説明する方法を使用してローカルに適用されます。ただし、カメラ オブジェクトの場合は、シェーダ スタックを使用してカメラにレンズ シェーダをアタッチするため例外です。詳細については、「カメラへレンズ シェーダを適用する」(「カメラとモーション ブラー」)を参照してください。
シーンに適用されたシェーダは、グローバル シェーダと呼ばれます。グローバル シェーダはレンダ パス レベルでシーンに適用され、グローバル レンダリング属性をコントロールします。この属性には、レンダリングの完了後にアウトプット シェーダとしてシーンに適用される環境シェーディング、ボリューム エフェクト、レンズ エフェクト、ポストプロセス エフェクトなどが含まれます。詳細については、「シェーダのパスへの適用」(「レンダリング」)を参照してください。
また、シェーダをレンダ パス パーティションに適用して、シーンのオブジェクトにローカルに適用されたシェーダをオーバーライドすることもできます(そのパスについてのみ)。詳細については、「パーティションへのシェーダーの適用」(「レンダリング」)を参照してください。
Render Tree を使用してシェーダを接続すると、シェーダの接続時に細かい調整が可能になります。Render Tree を使用したエフェクトの使用方法と作成方法については、「The Render Tree(レンダ ツリー)」を参照してください。
[取得](Get) [マテリアル](Material)メニューからオブジェクトにシェーダを適用することができます。この方法で適用されたシェーダは、マテリアルノードのすべてのポートにある既存のシェーダを完全に置き換えます。基本的に、このコマンドはオブジェクトの「マテリアル」の定義全体を置き換えます。
また、Material Managerを使用してシェーダを適用することもできます。詳細については、「Creating and Assigning Materials(マテリアルの作成と割り当て)」を参照してください。
ほぼすべてのシェーダをマテリアル ノードの任意のパラメータに接続することができます。
[Render]ツールバーから[取得](Get) [シェーダ](Shader)を選択します。表示されるメニューには、オブジェクトの[Material]ノードの全入力(ポート)が一覧表示されます。
A |
各サブメニューは、マテリアル ノードのポートのいずれかにシェーダを接続します。ポートの詳細については、「[Material]ノード」を参照してください。 |
B |
等号(=)が付加されているパラメータはすでにシェーダに接続されています。 |
[Material]のポートのいずれかにシェーダを接続するには、ポートのサブメニューを開き、以下のいずれかのオプションを選択します。
オプション |
結果 |
---|---|
編集 |
シェーダがポートに接続されている場合に、シェーダのプロパティ エディタを開きます。 接続されているシェーダが変換シェーダである場合は、接続されている次の非変換シェーダのプロパティ エディタが開きます。詳細については、「Methods for Editing Shaders(シェーダの編集方法)」を参照してください。 |
接続解除 |
ポートと、アタッチされたシェーダとの接続が切断されます。 |
挿入 |
変換シェーダ([Invert]、[Color Correction]など)を選択してポートに接続するためのサブメニューを開きます。 すでにシェーダがポートに接続されている場合は、ポートと、接続済みのシェーダとの間に変換シェーダが挿入されます。 |
変換の編集 |
ポートに連続して接続されているすべての変換シェーダの統合プロパティ エディタが開きます。 たとえば、[Phong]シェーダの[diffuse]パラメータが[Color Correction]シェーダに接続され、この[Color Correction]シェーダが[Intensity]シェーダに接続されている上、この[Intensity]シェーダが[Image]テクスチャ シェーダに接続されている場合、[変換の編集](Edit Conversions)を選択すると、[Color Correction]シェーダと[Intensity]シェーダの統合プロパティ エディタが開きます。変換シェーダの詳細については、「Methods for Editing Shaders(シェーダの編集方法)」を参照してください。 |
各種シェーダ |
ポートに共通して関連付けられているシェーダの一覧が表示されます。これらのいずれかのシェーダを選択すると、そのシェーダがポートに接続されます。 シェーダがすでにポートに接続されている場合は、シェーダは切断され、新しいシェーダに置き換えられます。 |
クリップ |
そのシーンのイメージ クリップすべてを一覧表示するサブメニューを開きます。クリップを選択すると、クリップは[Image]シェーダを介してポートに接続されます。 |
ソース |
そのシーンのイメージ ソースすべてを一覧表示するサブメニューを開きます。ソースを選択すると、クリップがそのソースから作成され、[Image]シェーダを介してポートに接続されます。 |
その他... |
ブラウザが開きます。これにより、シェーダ ライブラリからシェーダを選択できるようになります。選択したシェーダがパラメータに接続されます。 シェーダが既にパラメータに接続されている場合は、その接続が解除され、新しいシェーダに置き換えられます。 注: ブラウザから選択したシェーダは、[その他](More...)オプションの下の「最近使用したシェーダ」の一覧に表示されます。 |
パラメータに接続するシェーダを選択すると、選択されたシェーダのプロパティ エディタが自動的に表示されます。これでパラメータを編集できます。
シェーダをオブジェクトに適用すると、シェーダのプロパティ エディタが開きます。各パラメータの右側にはプラグ型の接続アイコンがあります。接続アイコンをクリックすると、パラメータに直接アタッチできるシェーダのメニューが開きます。シェーダをパラメータに適用すると、単純なカラーや数値を調整する代わりに別のシェーダを使ってパラメータを調整できます。
シェーダをパラメータに接続した後は、接続アイコンを右クリックし、同メニューからシェーダの切断や別のシェーダへの接続を実行できる他、パラメータおよびその接続したシェーダとの間に変換シェーダを挿入できます。また、このメニューでは、テクスチャ レイヤを使用する特定のパラメータとシェーダをブレンドすることも可能です。
シェーダのプロパティ エディタから、別のシェーダに接続するパラメータに対応する接続アイコンをクリックします。
オプション |
結果 |
---|---|
編集 |
シェーダがすでにパラメータに接続されている状態でこのオプションを選択すると、そのシェーダのプロパティ エディタが開きます。 接続されているシェーダが変換シェーダである場合は、接続されている次の非変換シェーダのプロパティ エディタが開きます。詳細については、「Methods for Editing Shaders(シェーダの編集方法)」を参照してください。 |
接続解除 |
パラメータとアタッチされたシェーダとの接続が切断されます。 |
ブレンド |
テクスチャ シェーダを選択できるサブメニューが開きます。選択されたシェーダは、新しいテクスチャ レイヤを介してパラメータ値とブレンドされます。 テクスチャ レイヤの使用方法の詳細については、「テクスチャとテクスチャ レイヤをブレンドする」(「テクスチャリング」)を参照してください。 |
挿入 |
変換シェーダを選択するための別のメニュー([Invert]、[Color Correction]など)が開きます。 シェーダがすでにパラメータに接続されている場合は、このパラメータと接続済みのシェーダとの間に変換シェーダが挿入されます。 変換シェーダをパラメータに接続すると、小さい「c」マークが接続アイコンに表示されます。 |
変換の編集 |
パラメータに連結しているすべての変換シェーダの統合プロパティ エディタが開きます。 たとえば、[Phong]シェーダの[diffuse]パラメータが[Color Correction]シェーダに接続され、この[Color Correction]シェーダが[Intensity]シェーダに接続されている上、この[Intensity]シェーダが[Image]テクスチャ シェーダに接続されている場合、[変換の編集](Edit Conversions)を選択すると、[Color Correction]シェーダと[Intensity]シェーダの統合プロパティ エディタが開きます。変換シェーダの詳細については、「Methods for Editing Shaders(シェーダの編集方法)」を参照してください。 |
各種シェーダ |
そのパラメータに関連付けられているシェーダの一覧が表示されます。これらのシェーダのうち 1 つを選択すると、そのシェーダがパラメータに接続されます。 シェーダが既にパラメータに接続されている場合は、その接続が解除され、新しいシェーダに置き換えられます。 |
クリップ |
そのシーンのイメージ クリップすべてを一覧表示するサブメニューを開きます。クリップを選択すると、クリップは[Image]シェーダを介してパラメータに接続されます。 |
ソース |
そのシーンのイメージ ソースすべてを一覧表示するサブメニューを開きます。ソースを選択すると、そのソースからクリップが作成されます。作成されたクリップはイメージ シェーダを介してパラメータに接続されます。 |
その他... |
ブラウザが開きます。これにより、シェーダ ライブラリからシェーダを選択できるようになります。選択したシェーダがパラメータに接続されます。 シェーダが既にパラメータに接続されている場合は、その接続が解除され、新しいシェーダに置き換えられます。 注: ブラウザから選択したシェーダは、[その他](More...)オプションの下の「最近使用したシェーダ」の一覧に表示されます。 |
接続アイコンが変化し、シェーダがパラメータに接続(またはブレンド)されたことを示します。詳細については、「変換シェーダの操作」を参照してください。
シェーダのパラメータを制御する接続のタイプに応じて、接続アイコンの外観が変わります。
パラメータが別のシェーダに直接接続されていると、その[接続]アイコンは赤色で表示されます。このアイコンをクリックすると、接続されているシェーダのプロパティ エディタが開きます。 |
|
シェーダが 1 つまたは複数の変換シェーダを介してパラメータに接続されている場合(または、パラメータが変換シェーダに直接接続されている場合)、その接続アイコンは赤になり、「c」という小さな文字が付きます。例:
変換シェーダの詳細については、「Methods for Editing Shaders(シェーダの編集方法)」を参照してください。 |
|
パラメータが 1 つ以上のテクスチャ レイヤに追加されている場合は、青色の小さい「L」がパラメータの接続アイコンに表示されます。 接続アイコンをクリックすると、パラメータが接続されていない場合と同様に単にメニューが開きます。テクスチャ レイヤのプロパティ エディタがシェーダのプロパティ エディタに追加されているためです。プロパティ エディタで直接テクスチャ レイヤのプロパティを編集できます。「テクスチャとテクスチャ レイヤをブレンドする」(「テクスチャリング」)を参照してください。 |
|
パラメータは 1 つのシェーダに直接接続できる他、他のシェーダにブレンドすることができます。 |
|
接続されていないパラメータの接続アイコンは、灰色で「プラグを外した」状態です。 |
特定のパラメータに接続しているシェーダを確認するには、マウス ポインタをパラメータの接続アイコン上に置きます。接続されているシェーダの名前がツールチップに表示されます。
パラメータが別のシェーダに接続されている場合は、すべての変換シェーダと次の(または直接接続された)非変換シェーダがツールチップに表示されます。
ここに表示されるパラメータは、[Invert]シェーダと[Color Correction]シェーダの 2 つの変換シェーダを介して[Image]シェーダに接続されています。
シェーダのネットワークをオブジェクトにアタッチすると、一部のシェーダが変換シェーダに指定されていることがわかります。変換シェーダとは、他のシェーダのパラメータに接続される前にシェーダの出力を修正するユーティリティ シェーダです。
通常は変換シェーダは、データ タイプが一致しないパラメータで接続された 2 つのシェーダ間に自動的に挿入されます たとえば、カラー出力をスカラ入力パラメータに接続しようとすると、[Color to Scalar]シェーダが自動的に挿入され、適切なデータ タイプに変換されます。
操作を簡略化する場合は、簡易演算シェーダを変換シェーダに指定すると便利です。シェーダのプロパティ エディタ間で移動する際に、変換シェーダが無視されるためです(既定)。
[タイプ変換シェーダ](Type conversion shaders): シェーダの出力を別のタイプの情報に変換します。たとえば、[Color to Scalar]シェーダはシェーダのカラー出力をスカラ値に変換します。「 Conversion?> [Shader Reference(シェーダ リファレンス)]」を参照してください。
[カラー変換シェーダ](Color conversion shaders): 指定のシェーダから出力されるカラー情報を調整します。たとえば、[Color Correction]シェーダを使用すると、シェーダのカラー出力の色相、彩度、レベル、ガンマ、コントラストを調整できます。「Color Balance(カラー バランス)」(「Shader Reference(シェーダ リファレンス)」)を参照してください。
[簡易共有シェーダ](Simple share shaders): 指定のシェーダの出力について、複数のシェーダで共有できます。たとえば、[Scalar Share]シェーダを使用すると、複数の異なるシェーダ間で 1 つのスカラ値を共有できます。「Boolean Passthrough (ブール通過)」(「Shader Reference(シェーダ リファレンス)」)を参照してください。