【Unity】屈折マテリアルを使う

投稿者: | 2020-10-29

HDRPでマテリアルの屈折率を設定して、ガラスのようにしてみます。

まず新しいマテリアルを作ってSurface TypeをTransparentにします。

下の方にTransparency Inputsが現れるので、Refraction ModelをNone以外に設定すると、屈折率(Index Of Refraction)などを設定できるようになります。

屈折の効果を見るには、Surface InputsのBase MapのカラーピッカーでAlphaを1より小さくします。

Smoothnessを下げると、透けて見えるものがぼやけます。

Refraction ModeがNoneだとこの効果はでません。

Refraction Model:None Smoothness : 0
Refraction Model:None Smoothness : 1

Refraction ModeのThinは、厚さが5センチのBoxと同じです。ノーマルマップを設定して表面を凸凹にすると、お風呂のドアガラスのようなものができました。

Refraction ModeをSphereにすると、像が歪みます。

Thicknessは屈折率を設定するオブジェクトの厚さで、厚いほうが効果がよく見えるそうですが、あまり屈折効果の違いを感じませんでした。

Transmittance Colorで通り抜ける光に色付けできます。

その下のTransmittance Absorption Distanceで、この色の強さが最大になるときの厚みを設定できます。大きい値にすると、Thicknessを1にしても色の強さが最大になりません。

Transmittance Absorption Distanceの単位はメートルですが、Thicknessは違うようです。

この猿にThicknessマップを付けて、Transmittance Absorption Distanceを調節すると、厚さによって色の強さが変わります。

コメントを残す

メールアドレスが公開されることはありません。