人間の肌は鏡ではないので光の一部は肌に入り込む。そして毛細血管を照らすことで赤みがかって見える。この辺りの調整手順がUEでは簡易化されている。

手順は以下の通りだが、テクスチャのパラメータ化だけ考え事が色々あった。ここでは実際にやってみた様子を紹介する。

Unreal Engine マテリアルでサブサーフェス プロファイルを使用する | Unreal Engine 5.6 ドキュメンテーション | Epic Developer Community

肌用のマテリアルインスタンスを作る

設定を転用しやすいようにマテリアルインスタンスとして用意するところを目指す。

まずはマテリアルを作成する

コンテンツドロワー内で右クリックし、マテリアルを作成する。

マテリアルを開き、シェーディングモデルを「Subsurface Profile」に変更する。

image.png

ノードを以下のようにする。

【超重要】

公式のドキュメントと違い、今回はテクスチャを変更できるようにしたい。なので、ベースカラーにはTextureSampleParameter2Dを繋いでおく。

このとき重要なのはDefaultTextureだとSampleTypeがColorということ。

image.png

このテクスチャを目的の(雪花ラミィの)肌のテクスチャに変更してみる。すると、該当箇所がVirtualColorに変更される。このタイプが一致するものしかマテリアルインスタンスでは上書き指定できないので、デフォルトのテクスチャは目的の肌のテクスチャにしておいた方が良い。

何のことかよくわからなければ、この後のマテリアルインスタンスの解説でおそらく理解できる。

image.png

Subsurface Profileの作成と指定

コンテンツドロワー内で右クリックし、「Subsurface Profile」を作成。

image.png