# URP Shader Feature Configuration

## URP Shader Feature Configuration

The URP Shader Feature Configuration panel optimizes shader compilation times and editor performance by letting you enable or disable individual shader features. Disable any features your project doesn't use to significantly reduce build times.\
\
This tool is URP-specific and comes with sensible defaults: Entities Graphics, Reflection Probes Blending, and Light Layers are disabled out of the box. If you need to enable any of these specialized features, make sure to enable them and then disable some other feature you're not using to maintain optimal performance.

<figure><img src="https://3533733148-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FnhtXOmYCoI177vSx8mBn%2Fuploads%2FMQBzpQV2A9hxFZjpYt1o%2Fimage.png?alt=media&#x26;token=85ab0ccd-4b5f-48bb-97fe-da6a81fb2f4c" alt=""><figcaption></figcaption></figure>

### Accessing the Configuration Panel

1. Open the[ AllIn1 3D Shader Window](asset-window) via **Tools → AllIn1 → 3DShaderWindow**
2. Navigate to the **URP Settings** tab
3. Scroll to the **Shader Feature Configuration** section

<figure><img src="https://3533733148-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FnhtXOmYCoI177vSx8mBn%2Fuploads%2FQTJRebFlPsCJrisWGmK1%2Fimage.png?alt=media&#x26;token=58af0022-56ff-444a-a6ff-50d9ead019a7" alt=""><figcaption></figcaption></figure>

### Using the Feature Configuration

#### Basic Usage

Each shader feature is represented by a toggle with a descriptive name. Simply check or uncheck features based on your project's needs:

* **Checked** = Feature enabled (adds #define to shader)
* **Unchecked** = Feature disabled (comments out #define)

Hover over any feature name to see a detailed tooltip.

<figure><img src="https://3533733148-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FnhtXOmYCoI177vSx8mBn%2Fuploads%2Fsw58bcCsBafPKWWqdwlU%2Fimage.png?alt=media&#x26;token=98f29097-c334-464d-b9d4-97d7b80fbba7" alt=""><figcaption></figcaption></figure>

#### Applying Changes

After adjusting your feature selection:

1. Click **Apply Changes** to write the configuration to your shader files
2. Unity will automatically recompile affected shaders
3. Check the Console for confirmation: "Shader feature configuration applied successfully!"

#### Reset to Defaults

The **Reset to Defaults** button restores the recommended configuration for most projects:

* **Enabled by default**: GPU Instancing, Fog, Lightmaps, Additional Lights, Cast Shadows, Shadow Mask, Forward+ (Unity 6+), SSAO
* **Disabled by default**: DOTS Instancing, Reflection Probe Blending, Light Layers

### Feature Reference

#### Core Rendering Features

**-GPU Instancing Support** - Enables efficient rendering of multiple identical objects for better performance.

**-DOTS Instancing Support** - Supports Unity's Entity Component System (ECS) instancing for DOTS-based projects.

**-Fog Support** - Integrates with Unity's built-in fog system for atmospheric effects.

#### Lighting and Shadows

**-Lightmaps Support** - Enables baked lighting from lightmaps for static lighting workflows.

**-Additional Lights Support** - Supports real-time lights beyond the main directional light.

**-Cast Shadows Support** - Allows materials to cast shadows from light sources.

**-Shadow Mask Support** - Enables mixed lighting with shadowmask baking for optimized static shadows.

#### Advanced Rendering (Unity 6+)

**-Forward+ Support** - Enables Forward+ rendering path in Unity 6+ for improved many-light performance.

**-Reflection Probes Blending Support** - Advanced reflection probe blending functionality in Unity 6+.

#### Screen-Space Effects

**-Screen Space Ambient Occlusion** - Integrates with URP's built-in SSAO post-processing effects.

#### Specialized Features

**-Light Layers Support** - Enables selective lighting using Unity's light layer system.
