うにてぃブログ

主にUnityとC#に関する記事を書いていきます

ShaderGraph

【Unity】URPにおける背景画像の取得方法:Shader GraphのSceneColorノードの活用

以前は背景画像を描画する際にGrabtextureを使用していましたが、 URP(Universal Render Pipeline)ではその機能が削除されたため、代替手段が必要です。 今回は、その代替手段の1つであるShader GraphのSceneColorノードを使用した方法を説明します。 Scen…

【Unity】Vignette ImageEffect【ShaderGraph】

Unity PostProcessing の Vegnette Shader を参考に ImageEffect で利用できる ShaderGraph を作成しました パラメータは以下になります こちらからDLして利用してください

【Unity】FullScreenShaderGraph で GBuffer を参照する

環境: Unity2022.2.b16, URP14.0.3 Exposed を false にした _GBuffer0, _GBuffer1, _GBuffer2 を Properties に定義する ことにより ShaderGraph で GBuffer を参照できるようになります Texture を参照する際も SampleTexture2D ノードを利用するだけで問…

【Unity】ShaderGraph を利用した FullScreen ソナー表現

qiita.com 上記の記事を参考に RendererFeature で利用できるソナー表現を作成しました ※ Unity2022 URP14 RendererFeature を利用することで特定の Material を利用する必要がなく画面全体に効果を適応することができます アセットはこちらからDLできます S…

【Unity】ShaderGraph を利用したソナー表現

qiita.com 上記の記事を参考に ShaderGraph でソナー表現ができるようにしてみました 詳しい説明は記事の方でご確認ください アセットはこちらからDLできます

【Unity】ShaderGraph の ShaderName を変更する

Shader 名の下部分をダブルクリックすることでShaderName を変更できるようになります / で区切ることで、階層を切ることも可能になっています

【Unity】ShaderGraph のグローバルパラメータを利用する

Shader.SetGlobalColor などを利用することで、Shader にグローバルなパラメータを渡すことができる しかし、ShaderGraph の場合どうやればいいのか分からなかったので調査してみたところ Exposed が false であればグローバルパラメータが適応されることが…

【Unity】ShaderGraph を利用した HeightFog

ShaderGraph の全貌 UnityShaderGraphLibrary/HeightFog.shadergraph at main · yayorozu/UnityShaderGraphLibrary · GitHub 各処理をちょっとだけ分割してまとめる UV と Depth から ワールド座標を求めてY のみを出力 float getWorldPosY() { float3 world…

【Unity】URP の FullScreen ShaderGraph を試す

2022.2.0b1 から利用できるようになった FullScreen ShaderGraph を使ってグレースケールのポストエフェクトでも作成してみます まずは Create / Shader Graph / URP / FullScreen ShaderGraph から Shader Graph を作成 そのまま出力するものを作成してみま…

【Unity】ShaderGraph で ディザ をする

Alpha Clip を有効にして、Alpha Clip Threshold を 0 に変更する そして以下のようにノードを組むことで、ディザが可能になる 上記の ShaderGraph を利用したものがこちら また、DitherSize を大きくすることで抜け具合を調整できる (100)

【Unity】Shader Graph でフォグを無効にする

Fog は以下の Define により制御されており、これを ShaderGraph のパラメータに追加して有効無効にすることで、ShaderGraph でも Fog を無効にできます * FOG_LINEAR * FOG_EXP * FOG_EXP2 Shader Graph の設定 Keyword -> Boolean から 以下の3つを定義す…

【Unity】ShaderGraph で Material 側で Surface Options を編集する

通常 Shader Graph 側で Surface Options は編集するため、Material 側では何も表示されない しかし、Graph Inspector で Allow Material Override を有効にすることで Material 側で Surface Options を編集することができる