Migrating the menu
This guide explains how to copy the example project settings menu into your own project.
This is optional. You can use Auto Settings to add settings to your existing menu without migrating the example menu at all.
The example menu depends on CommonUI and Common Input for navigation and button icons.
Because CommonUI is a project-wide UI architecture decision, this migration path is best for projects that already use CommonUI (or plan to adopt it).
If you already have your own menu flow, you can skip this guide and integrate Auto Settings widgets and logic into your existing UI instead.
Prerequisites
- The Example Project is downloaded and extracted.
- Auto Settings is installed and configured in the main project you are migrating into as described in the Installation guide.
- CommonUI Integration is completed in the main project you are migrating into, including CommonInput Key Icons.
Copy the example project files
Copy the AutoSettingsExample folder from the example project's Content folder to your own project's Content folder.
This migration step brings over the example menu widget, page widgets, input data, controller data, and the supporting assets referenced throughout the rest of this guide.
Do not use Unreal Engine's Migrate feature for this step. It has a tendency to cause lost references and load errors when moving this example content between projects.
Configure Common Input settings
After copying the example project files, verify the remaining Common Input settings match the example setup.
- Set Project Settings > Game > Common Input Settings > Enable Enhanced Input Support to
True. - Verify back handling is configured.
If not, set Project Settings > Game > Common Input Settings > Input Data to
BP_UIInputDatato use the copied example input actions. - Verify Project Settings > Engine > General Settings > Game Viewport Client Class is
CommonGameViewportClient(or a subclass). - Verify controller data is configured per target platform.
If not already configured, set Project Settings > Game > Common Input Settings > Platform Input > Windows (and other applicable platforms) so Controller Data includes the copied example controller data assets and button icons:
ControllerData_KeyboardMouseControllerData_Gamepad_XbControllerData_Gamepad_Ps
Add a menu entry point
Once the AutoSettingsExample content has been copied into your project, hook it into whatever menu flow your project already uses.
How the settings menu is opened is project specific.
Common approaches include:
- Opening the menu from a previous screen such as your main menu or pause menu.
- Recreating the example project's direct input flow with a key press or Enhanced Input action.
In the example project, the menu is opened directly from an Enhanced Input action bound to Escape on keyboard and the menu button on controller.
See BP_DemoPlayerController for the full Blueprint implementation.
If you use an Enhanced Input action as the entry point, make sure the action is included in an active Input Mapping Context. This is standard Enhanced Input behavior, but it is an easy setup detail to miss when copying the example flow.
The important part is that your project creates and displays the migrated settings menu from whatever entry point already fits your game's UI structure.
Configure input mappings
Follow the Input Mapping Setup guide, then edit WBP_ControllerPage and WBP_KeyboardMousePage to expose your project's player-mappable bindings.
Replace the example project's input mapping widgets with bindings that match the actions and mapping names used by your project.
Configure audio levels
If your project does not already have sound class mixing set up, either set it up in your project by following Sound Classes, or use the example project's sound classes in AutoSettingsExample/Audio.
If your project uses its own sound classes instead of the example project's, edit these audio console variable Blueprints in AutoSettingsExample/ConsoleVariables so they point to your own sound class and sound mix assets:
CVar_Volume_MasterCVar_Volume_MusicCVar_Volume_SFX
Create additional audio console variables for any other sound classes you want to expose in the menu, then add matching widgets for them in WBP_AudioPage.
Optional example menu settings
These example-project-specific settings are optional to migrate. Each one can be adapted independently based on your project.
Field of view
In the example project, Binding_FieldOfView applies the setting value to all camera components on the player's pawn. If your project needs different behavior, edit this binding to apply the value where your project expects it.
Look sensitivity
In the example project, AutoSettingsExample/Input/IMC_Standard includes Scale By Setting modifiers that scale IA_Look input using the look sensitivity settings. If applicable, copy those modifiers to your own Input Mapping Context and look action setup.