はじめに
ShaderGraphを使いモザイクエフェクトを作ってみます。
環境
Unity6
URP
こんな感じのを作ります
ShaderGraphを作成

Create → ShaderGraph → URP → UnlitShaderGraph
| 名前 | 説明 |
|---|---|
| Lit Shader Graph | ライトの影響を受けるシェーダーです。Unityが自動でライトの計算をしてくれます。 |
| Unlit Shader Graph | ライトの影響を受けないシェーダーです。最終的な色を自分で完全に制御します。 |
ノード
解説
最初にGraph InspectorにあるSurface TypeをTransparentにします。あと左上のpropertyからFloatで変数を作っておきましょう。マテリアルから調節できるようになります。

後は右クリックのCreate Nodeからそれぞれ探して設定していきます。
| 名前 | 説明 |
|---|---|
| Screen Position | 画面上の位置 |
| Posterize | 入力値を荒くする |
| Scene Color | 背景の色を取ってくる |
マテリアル作成
新しくマテリアルを作って
作成したShaderをドラッグアンドドロップします

↓

なんでもいいのでオブジェクトを作成します。

そしてマテリアルを適応

もっと荒くしたい場合マテリアルのStepsを増やします。
100ぐらいにしたもの

今のままだとモザイクの形状が正方形にならずちょっと気持ち悪いです。
直し方はあるのでまた気が向いたときに追記します。





