UE4でのバンプオフセット
マテリアルシェーダーの組み方をメモしておきます。
(Unreal Engine 4 Ver4.26.0)
BumpOffset とは
BumpOffsetとはアンリアル エンジン用語であり、
一般的に知られている「視差マッピング」のことを指します。
BumpOffsetマテリアルでは、3Dジオメトリを追加することなく
グレースケールの高さマップ を使用して深度情報をマテリアルに追加し視差を与えます。
高さマップの値が明るいほどマテリアルが「飛び出し」
カメラが移動するとその領域は視差が生まれます。
高さマップの暗い領域は「遠く離れた」部分では、ほとんど視差は現れません。
パララックス オクルージョン マッピング(POM)と比べて、
負荷が低い効率的な手段ですが、デプス情報を元に擬似的に高さを表現しているだけなので、
ユーザーが自由にカメラを動かすことができる状況では見た目が破綻する可能性があります。
シェーダー組み方例
HeightRatio
高さマップ から渡された深度の乗数です。値が大きければ大きいほど、極端な深度になります。通常は 0.02 から 0.1 の範囲です
ReferencePlane
エフェクトを与えるために、テクスチャ領域の高さの概算を指定します。値を 0 にするとテクスチャが完全に表面から離れて歪んだ表示となり、 0.5 (デフォルト値) にすると表面に部分的な凹凸が発生します
Coordinate (座標)
表現式で変更するベースのテクスチャ座標を受け取ります
Height (高さ)
高さマップとして使用するテクスチャ (または値) を受け取ります
HeightRatioInput
高さマップ から渡された深度の乗数です。値が大きければ大きいほど、深度が激しくなります。通常は 0.02 から 0.1 の範囲です。この入力を使用すると、Height Ratio プロパティのすべての値に置き換わります
以上 [UnrealEngine4] BumpOffset シェーダー でした。
コメント