Customizable screen-space outline Volume effect for Unity 6 URP, using depth and normals with adjustable thickness, color, softness, distance fade, quality modes, and debug views.DescriptionScreen Space Outline is a customizable fullscreen outline effect designed for Unity 6 and the Universal Render Pipeline.The effect analyzes the camera depth and normal textures to detect object silhouettes, depth discontinuities, and visible surface edges in real time. It can be used to improve scene readability or create stylized, cartoon, technical, and illustrative visuals without modifying existing materials.Screen Space Outline integrates directly with Unity’s Volume system and supports both Global and Local Volumes. Depth-based and normal-based outlines can be enabled and adjusted independently, giving you precise control over which details appear in the final image.Customize the outline color, opacity, thickness, sensitivity, softness, contrast, and camera-distance fading directly from the Volume Inspector. Several quality modes and diagnostic views are included to simplify optimization and visual tuning.Key featuresScreen-space silhouette and surface outlinesDepth-based edge detectionNormal-based edge detectionIndependent depth and normal controlsAdjustable outline color and opacityPixel-based outline thicknessThreshold and sensitivity controlsAdjustable softness and contrastCamera-distance fadingLow, Medium, and High quality modesGlobal and Local Volume supportScene View preview supportMultiple debug visualization modesUnity 6 RenderGraph supportURP Compatibility Mode supportFull C# and shader source code includedThe effect is suitable for stylized games, environment presentation, product visualization, architectural scenes, technical rendering, and any project requiring stronger visual separation between objects and surfaces.Models and environments shown in screenshots are for demonstration purposes only and are not included.CompatibilityUnity version: Unity 6 or newerRender pipeline: Universal Render PipelineRendering paths: Forward and DeferredRendering architecture: RenderGraph and Compatibility ModeVolume support: Global and Local VolumesCamera support: Game View and optional Scene View renderingCamera stacking: Optional Overlay Camera supportThe Built-in Render Pipeline and High Definition Render Pipeline are not supported.Required rendering dataThe effect requests and samples:Camera depth textureCamera normal textureCamera color textureCamera post-processing must be enabled for the effect to run.Custom shaders should contain a compatible URP DepthNormals or DepthNormalsOnly pass to produce correct normal-based outlines. Transparent objects may not contribute unless they write compatible depth and normal information.Quality modesLow: 4 surrounding samples per pixelMedium: 8 surrounding samples per pixelHigh: 12 surrounding samples per pixelLow quality is recommended for performance-sensitive applications. Medium is suitable for most gameplay scenarios, while High provides more complete edge sampling for desktop presentation and screenshots.Volume parametersEnabled EffectIntensityOutline ColorOpacityThicknessQualityUse DepthDepth ThresholdDepth SensitivityUse NormalsNormal ThresholdNormal SensitivitySoftnessContrastFade StartFade EndDebug ModeDebug modesCombinedEdge MaskDepth EdgesNormal EdgesNormalsRenderer Feature settingsFullscreen outline shader assignmentConfigurable render-pass injection pointScene View rendering toggleOverlay Camera support toggleBy default, the effect runs before URP post-processing so anti-aliasing and color grading can process the generated outlines.LimitationsScreen Space Outline is a screen-space effect and only evaluates geometry visible to the active camera. Hidden, occluded, and off-screen geometry cannot contribute.Very large thickness values or low edge thresholds may generate unwanted outlines around distant or closely overlapping surfaces. These artifacts can be reduced by adjusting the depth threshold, normal threshold, sensitivity, or distance-fade settings.




