Subsurface Scattering
Subsurface Scattering (サブサーフェススキャタリング) は、サーフェスの下のエリアに入り込み動く光を扱います。肌などのオーガニックマテリアルが、粗くプラスチックのようではなく、滑らかで自然に見えるようにします。HDRP は、スクリーンスペースブラー技法を使ってサブサーフェススキャタリングを実装します。
サブサーフェススキャタリングはまた、背後からゲームオブジェクトに浸透する光にも対応し、これらのゲームオブジェクトを透明にします。特定の種類のオブジェクトに関しては、スクリーンスペースブラーエフェクトが大きなビジュアル差を生むことはないかもしれません。そこで、HDRP は 2 種類のマテリアルを実装します。
- Subsurface Scattering はスクリーンスペースブラーエフェクトと透過の両方を実装します (透過は無効にできます)。
- Translucent は透過を模倣するだけです。
サブサーフェススキャタリングの有効化
HDRP Asset でサブサーフェススキャタリングを有効にする手順は以下の通りです。
- HDRP Asset の Inspector ウィンドウで、Material セクションへ移動し、Subsurface Scattering チェックボックスを有効にします。
- Subsurface Scattering チェックボックスを有効にすると、HDRP は High Quality オプションを表示します。このオプションを Enable にして、サンプル数を増やしたり、サンプリングが少ないためにブラーパスが生じる、ビジュアルノイズ量を減少させます。これはデフォルト品質よりも約 2.5 倍のリソース負荷がかかるので、注意してください。
- Edit > Project Settings > HDRP Default Settings へ移動し、Default Frame Settings セクションの Lighting サブセクションの下で、Subsurface Scattering と Transmission を有効にします。
HDRP はサブサーフェススキャタリング設定のほとんどを、Diffusion Profile に格納します。HDRP は一度に最大 15 までカスタム Diffusion Profiles をサポートしますが、HDRP がどの Diffusion Profiles を使うかはオーバーライドできるため、プロジェクトを通して好きなだけ Diffusion Profile を使ってください。そのためには Volume システムで Diffusion Profile Override を使います。この オーバーライド を使うと、HDRP がオーバーライドの Volume 内にあるカメラに使う 15 のカスタム Diffusion Profile を特定することができます。
Diffusion Profile の作成および使用方法に関する情報は、Diffusion Profile ドキュメント を参照してください。
サブサーフェススキャタリングをマテリアルに追加する
まず最初に、希望するエフェクトに応じて、Material の Material Type を Subsurface Scattering または Transmission に変更します。
Subsurface Scattering マテリアルタイプには、Transmission チェックボックスからチェックを外して、透過を無効にします。
サブサーフェススキャタリングの動作のカスタマイズ
Subsurface Scattering または Translucent を Material Type ドロップダウンから選択すると、Unity は Material UI で新しいプロパティーをいくつか展開します。これらのプロパティーを用いてサブサーフェススキャタリングのエフェクトをカスタマイズする方法については、Material Type ドキュメント を参照してください。
HDRP の実装に関する詳細は、効果的なスクリーンスペースサブサーフェススキャタリング プレゼンテーションを参照してください。