両面シェーディングを行うと、サーフェスの一方の面をあるマテリアルで、もう一方の面を別のマテリアルでシェーディングできます。これは、NURBS サーフェスに複数のマテリアルを適用できる唯一の方法です。このエフェクトを作成するには、条件(Condition)ユーティリティとサンプラ情報(Sampler info)ユーティリティの両方を使用します。
両面シェーディングのサーフェスを作成するには
- ハイパーシェード(Hypershade)で、以下のものをそれぞれ 1 つずつ作成します。
- マテリアル(この手順では Phong シェーダ(Phong)マテリアルを使用します)。
- サンプラ情報(Sampler Info)ユーティリティ。サンプラ情報(Sampler Info)ユーティリティを使用すると、レンダリング中にシェーディング ネットワークへ伝達できるカメラとサーフェスの情報にアクセスできます。
- 条件(Condition)ユーティリティ。条件(Condition)ユーティリティでは、サーフェスの各面にマップするテクスチャを指定します。
- チェッカ(Checker)テクスチャ。
- クレータ(Crater)テクスチャ。
- サーフェスに Phong シェーダ(Phong)マテリアルを割り当てます。
- ハイパーシェード(Hypershade)で、チェッカ(Checker)の出力カラー(Out Color)アトリビュートを条件(Condition)の true の場合カラー(Color If True)アトリビュートに接続します。
- クレータ(Crater)の出力カラー(Out Color)アトリビュートを条件(Condition)の frue の場合カラー(Color If False)アトリビュートに接続します。
- SamplerInfo の反転された法線(Flipped Normal)アトリビュートを条件(Condition)の第 1 項(First Term)または第 2 項(Second Term)アトリビュートに接続します。
- 条件(Condition)の OutColor アトリビュートを Phong シェーダ(Phong)のカラー(Color)アトリビュートに接続します。
- テスト レンダーを行います。
サーフェスの各面が、異なるテクスチャでシェーディングされます。
ハイパーシェードで作成された接続のイメージ。
サーフェス上でテクスチャをスワップ(入れ替え)する
条件(Condition)ユーティリティを使用して、サーフェスの表面と裏面に適用するテクスチャを指定することができます。
両面シェーディングでテクスチャ マッピングをスワップするには
- 条件(Condition)ノードを選択します。プロパティ エディタ(Property Editor)で、条件アトリビュート(Condition Attributes)セクションにある操作(Operation)アトリビュートを不等(Not Equal)に変更します(不等(Not Equal)に設定されている場合は同等(Equal)に変更します)。
- テスト レンダーを行います。以下に、その結果を示します。
注:
ポリゴン モデルに対しては、フェース レベルで複数のマテリアルを適用することができます。