
Pixelize 3D scene based on depth in URP. Adjust custom pixel sizes for each depth range using flexible, per-level resolution control.Try the demo first before purchasing!Come to our discord server if you have any questions.Link to the documentation also.--- Introduction ---Depth-Based Pixelation is a customizable fullscreen effect for Unity URP, implemented as a Renderer Feature. It dynamically pixelates the scene based on depth.Built specifically for perspective cameras, and supports multiple resolution levels based on distance and custom depth thresholds.--- Key Features ---Depth-Based PixelationThis effect applies pixelation that changes based on the depth of each pixel. Allowing you to have full control over in which depth range the resolution should be.Perspective Camera SupportUnlike many pixelation shaders/cameras that work best with orthographic projection, this system is designed specifically for perspective cameras. It pixelates the screen based on depth, making it suitable for immersive 3D games.Customizable Depth MappingYou have full control over how the scene is divided into resolution levels. Adjust depth thresholds to define where the pixelation changes, and specify how many levels you want. This makes the system flexible and easy to adapt to any kind of scene or scale.Per-Level Resolution ControlEach depth level can have its own assigned pixel size. You can fine-tune how coarse or fine the pixelation is at each range.Resolution Multiply FactorThis variable serves as a global multiplier, allowing you to control the overall scale more conveniently and achieve quick adjustments across all levels.Shader FreeRequires no special shaders so you can keep your existing materials.--- Supported Versions ---- 2022+- Unity6 ~ 6.2 (Not recommanded) (🚨 only works when Compatibility Mode is enabled, Render Graph not implemented yet)--- Contact ---If you have any questions or feedback, please contact me at- Gmail: greed.jesse.business@gmail.com.- ForumPerformanceUsing a Render Texture with a Raw Image can significantly improve performance. When the Render Texture size is set to 2/3 the target resolution, the FPS is slightly larger than running without the effect.This setup doesn’t noticeably affect visual quality because a normalization-like adjustment applied to maintain consistency across resolutions.Thin ObjectsVery thin geometry — such as wires, grass, or fence poles — may not pixelate cleanly and loss detail.Transparent MaterialsAvoid using transparent materials, as they don’t write to the depth buffer. As a result, the pixelation resolution will be determined by the depth of whatever is behind the transparent object. This isn’t usually an issue if the background has a similar pixelation level (e.g. shallow water), but it can produce unexpected results in scenes with large depth differences.Subpixel Limitation (Perspective Cameras)Subpixel stability — where pixelation “locks” perfectly to world space — is generally not possible with perspective cameras. This is because, in a perspective projection, objects at different depths move at different speeds relative to the camera (parallax). As a result, a single world-space-aligned pixel grid can't be consistently applied across the entire scene.While orthographic projections can maintain subpixel-perfect alignment (since all objects move uniformly), perspective projection inherently breaks that possibility.However, you can reduce the visual impact of this effect by:- Using a higher resolution (smaller pixels), which makes snapping less noticeable- Applying less gliding camera movement, which hides jitter more effectively than slow, precise movement.