# requiresCompatibleRenderPipelineGlobalSettings

> Controls whether Unity validates that a compatible RenderPipelineGlobalSettings asset is active when this Render Pipeline Asset gets assigned.

## Definition

* **Type:** Property
* **Namespace:** [UnityEngine.Rendering](/engine/6000.3/script-reference/unityengine/rendering.md)
* **Assembly:** UnityEngine.CoreModule

```csharp
protected virtual bool requiresCompatibleRenderPipelineGlobalSettings { get; }
```

### Remarks

URP and HDRP override this property to return `true` by default so that Unity validates the active [RenderPipelineGlobalSettings](/engine/6000.3/script-reference/unityengine/rendering/renderpipelineglobalsettings.md) asset whenever you assign the [RenderPipelineAsset](/engine/6000.3/script-reference/unityengine/rendering/renderpipelineasset.md) at runtime. Custom render pipelines can override this property to change that behavior.

When this property returns `true`, assigning an asset to [GraphicsSettings.defaultRenderPipeline](/engine/6000.3/script-reference/unityengine/rendering/graphicssettings/defaultrenderpipeline.md) or [QualitySettings.renderPipeline](/engine/6000.3/script-reference/unityengine/qualitysettings/renderpipeline.md) at runtime throws an `InvalidOperationException` if a compatible [RenderPipelineGlobalSettings](/engine/6000.3/script-reference/unityengine/rendering/renderpipelineglobalsettings.md) asset is not currently active.

Additional Resources: [GraphicsSettings.TrySetCurrentRenderPipelineGlobalSettings](/engine/6000.3/script-reference/unityengine/rendering/graphicssettings/trysetcurrentrenderpipelineglobalsettings.md).
