Quality Tiers & PerformanceSettings
The ScriptableObject
PerformanceSettings is the central configuration asset. It contains:
- Tiers - an ordered list of
QualityTier (index 0 = highest quality).
- Dynamic Performance - settings for the automatic FPS monitor.
- Persistence - save file name for player preferences.
QualityTier Fields
Each tier controls the following parameters:
Pipeline & Performance
| Field | Type | Default | Description |
|---|
tierName | string | "Medium" | Display name for this tier |
renderPipelineAsset | RPA | null | Optional: swap the entire pipeline asset |
renderScale | float | 1.0 | Internal render scale (0.1 – 2.0) |
lodBias | float | 1.0 | LOD distance multiplier |
vSyncCount | int | 1 | 0=Off, 1=60Hz, 2=30Hz |
targetFrameRate | int | -1 | -1 = unlimited |
Shadows
| Field | Type | Default | Description |
|---|
shadowDistance | float | 150 | Maximum shadow distance |
shadowCascades | int | 4 | 0, 1, 2, or 4 cascades |
shadowResolution | enum | High | Low / Medium / High / VeryHigh |
softShadows | bool | true | Soft shadow edges |
Textures & Streaming
| Field | Type | Default | Description |
|---|
globalTextureMipMapLimit | int | 0 | 0=Full, 1=Half, 2=Quarter |
textureStreamingBudget | int | 4096 | Budget in MB. Set to 0 to use Global Settings. |
anisotropicFiltering | enum | Enable | Disable / Enable / ForceEnable |
realtimeReflectionProbes | bool | true | Realtime reflection probes |
softParticles | bool | true | Soft Particles (Fades near geometry) |
Post-Processing
| Field | Type | Default | Description |
|---|
enableBloom | bool | true | Toggle Bloom |
enableAO | bool | true | Ambient Occlusion |
enableDepthOfField | bool | false | Depth of Field |
enableMotionBlur | bool | false | Motion Blur |
enableChromaticAberration | bool | false | Chromatic Aberration |
enableVignette | bool | false | Vignette |
enableTonemapping | bool | true | Tonemapping / Color Grading |
enableSSR | bool | false | Screen Space Reflections |
enableLensDistortion | bool | false | Lens Distortion |
enableSSGI | bool | false | Screen Space GI |
enableVolumetricClouds | bool | false | Volumetric Clouds |
URP-Specific
| Field | Type | Default | Description |
|---|
mainLightShadows | bool | true | Main light shadows |
msaaLevel | enum | 4x | Off / 2x / 4x / 8x |
enableDecals | bool | true | Toggle Decals (works for HDRP too) |
Note: These fields only appear and function when URP is installed.
HDRP-Specific
| Field | Type | Default | Description |
|---|
enableRayTracing | bool | false | Global RT toggle |
rtGlobalIllumination | enum | Off | Off / Performance / Quality |
rtReflections | enum | Off | Off / Performance / Quality |
rtAmbientOcclusion | enum | Off | Off / Performance / Quality |
rtShadows | bool | false | Ray-traced shadows |
enableVolumetricFog | bool | true | Volumetric fog |
Note: These fields only appear and function when HDRP is installed. The RayTracingTier enum provides three modes:
- Off - Ray tracing disabled for this effect.
- Performance - Fewer samples/bounces, suitable for real-time games.
- Quality - Maximum fidelity, higher GPU cost.
Upscaling (Unity 6+)
| Field | Type | Default | Description |
|---|
upscalingFilter | enum | None | None / Bilinear / FSR / DLSS / XeSS / TAA Upscale |
fsrSharpness | float | 0.5 | FSR sharpness (0=soft, 1=sharp) |
enableDynamicResolution | bool | false | Hardware dynamic resolution |
Extensions (Advanced)
| Field | Type | Default | Description |
|---|
contactShadows | bool | false | Contact Shadows (SSCS) |
grassDistance | float | 50 | Terrain grass/detail draw distance |
aaMethod | int | 1 | 0=Off, 1=FXAA, 2=SMAA, 3=TAA |
enableVRS | bool | false | Variable Rate Shading |