Default values
Default values are the baseline Auto Settings uses before a user has saved a value. They are also the value used by setting widgets when the user chooses Reset to Default.
Saved values take priority over defaults. Changing a default does not overwrite a value already saved by a user through a persistence strategy.
How defaults are selected
When a setting initializes, Auto Settings uses this order:
- Load a saved value from the setting's Persistence Strategy.
- If no saved value exists, apply the setting's current default value.
The current default can come from:
- A controlling parent setting that updates a child setting's default.
- A Setting Type Override Default Value or Default Providers entry.
- The current value of the bound target, such as a console variable after Unreal Engine has applied its own defaults.
Choose the right default source
Use the default source that owns the value you want to change.
| Goal | Use |
|---|---|
| Give one dedicated Setting Type a fixed default | Enable Override Default Value on that Setting Type. |
| Generate dynamic defaults or defaults for several settings | Add Default Providers to the Setting Type. |
| Change console variable defaults | Configure the console variable source; see Console Variables. |
Setting Type defaults
Use Override Default Value only when the Setting Type represents one specific setting. A reused Setting Type applies its configuration to every setting that uses it, so a type-level default is usually too broad for shared types like Setting_Global.
For reusable Setting Types, use Default Providers instead. A provider returns default values keyed by fragments relative to the Setting Type. Use providers for any dynamic default source, such as platform, user profile, project configuration, hardware benchmark results, or other custom logic. For example, a provider on a global console variable type can return separate defaults for sg.ShadowQuality, sg.TextureQuality, and game.MasterVolume.
Default Providers run during Auto Settings initialization. Multiple providers on the same Setting Type run in array order, and later providers can replace earlier defaults for the same resolved setting key.
Controlled defaults
Controlled settings can update child defaults when the parent setting changes. For example, a quality preset can update child graphics defaults so Reset to Default stays aligned with the currently selected preset instead of an outdated child value.
For defaults specific to console variables, choose the source-specific page from Console Variables. For Unreal scalability defaults, see Built-in engine console variables.