【作品紹介(Unity)】Fresnel Shader(Unity Shader Graph)

Unity

はじめに

概要

作品名Fresnel Shader
制作期間2023.10.02
(1日)
制作形式自主制作

フレネル反射とは、元々は物理学の用語で、光を透過する物質の表面に生じる反射の事を指します。
窓ガラスに景色が映り込んだり、海やプールの水面で太陽がきらめいたりするのがフレネル反射です。

Blenderシェーダーノード辞典/フレネル(Fresnel)

機能

プロパティ名機能
BaseColorベースとなる色(通称「Albedo」)の設定
BaseTextureベースとなるテクスチャの設定
NormalMapノーマルマップ(法線マップ)の設定
Tiling「BaseTexture」のタイリング値の設定
Offset「BaseTexture」のオフセット値の設定
Tiling_Normal「NormalMap」のタイリング値の設定
Offset_Normal「NormalMap」のオフセット値の設定
IsFresnelActiveフレネルの有効化・無効化の設定
UseFresnelForNormalMapノーマルマップ(法線マップ)へのフレネルの適用の設定
DoNotReceiveShadows他のメッシュの影の描画設定(URP用)
NormalStrengthノーマルマップ(法線マップ)の影響力の設定
Smoothness滑らかさの設定
Metallic金属性の設定
EmissionStrength発光の強さの設定
FresnelStrengthフレネルの強さの設定
「FresnelShader」の機能一覧

リンク

内容

出来るようになった事

  • Tiling And Offset」を使用した、タイリング値とオフセット値のUVへの変換
  • Sample Texture 2D」を使用した、テクスチャのRGBAへの変換
  • Normal Strength」を使用した、ノーマルマップ(法線マップ)の強さの設定
  • Subtract」を使用した、値の減算
  • Fresnel Effect」を使用した、フレネル効果の取得
  • Branch」を使用した、分岐処理
  • Multiply」を使用した、値の乗算
  • Add」を使用した、値の加算
  • Vector 3」を使用した、3つの値を持つ要素の作成

工夫した点

  • タイリング値オフセット値を「BaseTexture」用と「NormalMap」用で2つずつ用意した事で、「BaseTexture」と「NormalMap」で別々の描画設定を出来る様にした
  • 「フレネルを有効化するかどうか(IsFresnelActive)」や「フレネルをノーマルマップ(法線マップ)に適用するかどうか(UseFresnelForNormalMap)」等のフレネルに関する様々なプロパティを用意する事で、フレネルの表現を最大限に発揮できる様にした
  • ノード間の距離を一定にしたり、全てのワイヤー(リンク)を平行にしたり、ワイヤー(リンク)の交わりを極力減らしたりする事で、グラフの視認性を上げた
グラフの全容

お問い合わせ

    タイトルとURLをコピーしました