UI Binding
AutoConfig offers two ways to connect your Settings UI to the quality system. Both work simultaneously.
Method A: UI Binding Configurator (RECOMMENDED FOR CANVAS)
The standard and most reliable way to connect your UI is via the UI Binding Configurator (Window > AGS > UI Binding Configurator).
Why this is the professional choice:
- Visual Control: You can see exactly which parameter is bound to which element in the Inspector via the ACBinding component.
- Global Settings & Auto-Fixes: The Configurator includes global overrides for "Auto Populate Labels" (i18n safe), "Invert Dropdown Order", and "Auto Rename Objects".
- One-Click Apply: Clicking "Apply & Auto-Fix Settings" automatically corrects Slider ranges, sets up dropdown option counts, and renames GameObjects to match your PerformanceSettings.
- Visualizer Text: If you want a Text component to display a Slider's exact formatted value (like '85%' or '150m') in real-time, just drop the Text object into the
Value Text Displayfield of the ACBinding.
Usage:
- Open the Configurator.
- It automatically scans your scene, but you can click "Scan Scene" again after creating new elements.
- Select parameters using the dropdown menus.
- Review the Global Binding Overrides at the top.
- Click "Apply & Auto-Fix Settings" to finalize everything.
Method B: Name Convention (Fallback for Canvas / Primary for UI Toolkit)
If you prefer a "zero-config" approach, or if you are using UI Toolkit (Unity 6+), use the AC_ prefix followed by the parameter name (e.g., AC_bloom, AC_quality).
For UI Toolkit (UXML/UI Builder):
Since UI Toolkit elements are not GameObjects, you cannot use the Configurator or ACBinding components on them.
- How to bind: Set the Name property of your
VisualElement(Button, Toggle, Slider, Dropdown) toAC_+ parameter (e.g.,AC_quality,AC_bloom). - Discovery: The
UIAutoScannerwill automatically find anyUIDocumentin your scene and bind its interior elements.
For uGUI (Canvas):
- How to bind: Rename your GameObject to start with
AC_(e.g.,AC_shadow_dist). - Priority: If a GameObject has both an
ACBindingcomponent AND anAC_name, the component takes priority.
How the Hierarchy Works
When the UIAutoScanner runs, it follows this logic:
- Search for Components: Finds all
ACBindingcomponents in the scene and wires them up. - Search for Names: Finds any GameObject starting with
AC_that doesn't already have anACBindingcomponent and binds it using default settings.
[!TIP] Always use the Configurator. It's faster, safer, and allows you to use the "Check & Fix" tools to prevent runtime errors.
ACBinding Component
The ACBinding component is a lightweight marker that UIAutoScanner reads at runtime:
| Property | Description |
|---|---|
parameter | The AutoConfig parameter name (e.g., bloom, shadow_dist) |
targetValue | Value for Button-triggered parameters |
autoPopulateLabels | Auto-fill Dropdown options with tier names from PerformanceSettings |
invertOrder | Invert index mapping (useful when "High" is at Dropdown index 0 but tier index 2) |
valueTextDisplay | (Sliders only) A Text component that automatically displays the formatted value |
UIAutoScanner Component
Add this to any persistent GameObject. It works in two modes:
| Mode | Behavior |
|---|---|
| Auto (default) | Scans ALL Canvas and UIDocument in the scene |
| Manual | Scans only assigned containers |
Key features:
- Supports both uGUI (Canvas) and UI Toolkit (UIDocument, Unity 6+).
- Auto-populates quality tier Dropdowns with tier names.
- Auto-populates resolution Dropdowns with available screen resolutions.
- Syncs all UI elements when the active tier changes.
- Health-checks Slider ranges and logs warnings for misconfigured elements.
