HDRPのサンプルシーンでは、デカールプロジェクターで水たまりを表示しています。マテリアルには、背景が透明な白いテクスチャが設定されています。
このようなテクスチャをフリーソフトのGIMP2で作って再現してみました。
テクスチャを作る
まず、textures.comで「decal」で検索して、背景が透明な汚れや剥がれ等のテクスチャをダウンロードしました。
これをGIMP2で読み込んで、レイヤーを右クリックし、「レイヤーマスクの追加」を選択します。
「レイヤーのアルファチャンネル」で初期化すると、アルファチャンネルをレイヤーマスクにできます。
左側のサムネイルを選択して、真っ白で塗りつぶします。
これで、背景が透明な水たまり用テクスチャができました。
もとの画像をグレースケールにしてもいいかもしれません。
この画像にそのままぼかしを入れると、輪郭がぼやけて解像度が低い感じになりました。
そこで、右クリックからレイヤーマスクを適用して複製し、片方だけにぼかしを入れました。
ぼかしを入れる方は少しだけ拡大すると良い感じになりました。「中心点から」にチェックを入れると拡大しやすいです。
これで自然なぼかしが入ったと思います。
ぼかしが画像の端に到達すると、そこに線ができてしまうので、複製する前に縮小して余白を作りました。
デカールプロジェクターに設定
画像をエクスポートして、Unityでインポートし、マテリアルを作りました。シェーダーはデカールを選択し、インポートした画像をBase Mapにアタッチします。
画像のアルファチャンネルを不透明度に使うために、Mask Opacity Channelで「BaseColoMapAlpha」を選択します。
Affect Smoothnessのチェックを確認して、Smoothnessを大きくすることで水たまりの反射を表現できます。また、カラーピッカーで全体を黒くしました。
ヒエラルキービューでデカールプロジェクターを追加し、上のマテリアルをアタッチします。
Sizeは大きめに、Projection Depthは小さめにして、白枠に地面が含まれるように、シーンビューを見ながら配置しました。
これで、地面に水たまりが投影されました。水たまりが暗すぎるときは、デカールプロジェクターの「Fade Factor」を下げます。
サンプルシーンでは、水たまりに周りのオブジェクトを反射させるために、リフレクションプローブが使われています。このシーンにもリフレクションプローブを配置して、その範囲に水たまりを含めました。
さらにその上にCubeを置いて、リフレクションプローブのインスペクタで「Bake」ボタンを押すと、水たまりにCubeが映りました。
HDRP/DecalシェーダーはあるのですがヒエラルキーにDecalProjectorが見当たりません。ヒエラルキー→新規作成→Renderingがそもそもないのですがパッケージマネージャ等で何かをインポートしないとならないのでしょうか?
初歩的過ぎる質問で大変申し訳ないのですが、ご教授頂けると幸いです。
バージョンは2019.4.12です。
空のゲームオブジェクトに「Decal Projector Component」を付けると使えます。