ポリゴンの表裏でテクスチャを切り替える方法

板ポリゴンの表と裏で、テクスチャを切り替えたいっと思ったことございませんか!?

今回は、HyperShadeで、ノードをちょこっとコネコネしてやっていきたいと、、、

思います!(`・ω・´)ゞ

トランプの画像は、以下のサイトの画像を使用しました。
アイコン・イラストフリー素材画像-無料素材倶楽部

マテリアルの用意

マテリアルはなんでもOKですが、今回は「Lambert」を使いたいと思います。

Conditionの作成

Conditionノードは、状況に応じて、カラーAか、カラーBを出力するノードです。これをうまく使って、表と裏で読み込むテクスチャを切り替えて行きます!

Condition」の「outColor」とマテリアルのカラー(ここでは、LambertのoutColor)を接続します。

2枚のテクスチャの作成

つづいて、表のテクスチャ、裏のテクスチャを読み込むFileノードを作成します。

表のテクスチャは「Condition」の「Color If True」、裏のテクスチャは「Color If False」に接続します。

Sampler Infoの作成

何かと使う「Sampler Info」を作成します。Sampler Infoの「Flipped Normal」を使うと、表の場合は「0」、裏の場合は「1」という情報を提供してくれます!

これを「Condition」の「First Term」にコネクションします。

すると「Condition」は「First Term」と「Second Term」のデータを比較します。「Operation」が「Equal」になっていますので、「First Term」と「Second Term」の数値が同じなら、「Color If True」を出力します!

裏の場合は、「First Term」が「1」になるので、違う数値になりますので、「Color If False」を出力します!

マテリアルをアサインしてView Portで確認してみると、、、残念ながら表裏のテクスチャの表示は確認することができません(´・ω・`)

レンダリングすると、ちゃんと表裏でテクスチャが変わっていることが確認できます!(`・ω・´)ゞ