(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

(:3[kanのメモ帳]


本ブログの運営者kan.kikuchiが個人で開発したゲームです!

    

URPでリアルな反射を表示するエフェクトSSR(Screen Space Reflections)を使う方法【Unity】【URP】【ポストプロセス】


このエントリーをはてなブックマークに追加

この記事でのバージョン
Unity 2022.3.21f1



はじめに

UnityはSSR(Screen Space Reflections)と呼ばれる、

リアルタイムに反射を計算して表示するエフェクトが使えます。

Japanese School Gymnasium - Unity Asset Store


しかし、このSSRはビルドインではポストプロセスとして設定出来たのですが、


URPはサポートしておらず使えません。(HDRPは使える)

Universal Render Pipeline (URP) do not support Screen Space Reflections.


ということで今回はSSRをURPでも使える無料(MITライセンス)アセット

UnitySSReflectionURPの紹介です!


なお、先ほどのアセットはURP対応していないので、ここからは以下のアセットを使います。

Night Club (SRP) - Unity Asset Store



UnitySSReflectionURPの使い方

まずは導入ですが、GitHubからZIPをダウンロードしてきて、

GitHub - jiaozi158/UnitySSReflectionURP: Screen Space Reflection for Unity URP (Universal Render Pipeline).


解凍し、Assetsフォルダを好きな名前にリネームし、プロジェクトに丸ごと入れます。


次にEdit/Project Settings…を開き、


Graphicsの項目で設定されているUniversal Render Pipeline Assetを選択、


さらにそのアセットに設定されているUniversal Renderer Dataを選択し、


Add Renderer FeatureからScreen Space Reflection URPを追加します。


さらにポストプロセスのVolumeAdd OverrideからLighting/Screen Space Reflection(URP)を追加し、


State(Opaque)Enabledにすれば設定完了です。


実際に使ってみると以下のような感じで、床などに反射が追加され、リアルさが増します。


なお、同様の無料(MITライセンス)アセットにUnity-ScreenSpaceReflections-URPというものあります。

(自分の環境だとあまり綺麗に反射が出せなかったの紹介は割愛)