GS_Options

The configuration system — input profiles, input readers, and runtime settings management for gameplay and accessibility.

Overview

The Options system is the central pillar for handling background systemic configuration. At its simplest, it lets you set up user-facing options like volume, graphics settings, subtitles, and other standard configurable settings. Beyond that, it manages development-side functionality — language settings, current input device type, and other runtime-aware systems — providing that data to hook components throughout the game.

Currently, the Options system’s primary feature is the Input Profile system, which replaces O3DE’s raw input binding files with a more flexible, group-based approach that supports runtime rebinding and per-group enable/disable toggling.

Architecture

GS_OptionsManagerComponent (singleton, spawned by Game Manager)
  ├── Holds the active GS_InputProfile data asset
  ├── GS_InputProfile (data asset, created in Asset Editor)
  │     Contains InputBindingGroups
  │       Each group contains EventInputMappings
  │         Each mapping: eventName + bindings + deadzone + processUpdate
  └── GS_InputReaderComponent (on any entity)
        Reads input from the active profile
        Fires events based on matched bindings
        Can enable/disable input groups at runtime

Components

ComponentPurposeDocumentation
GS_OptionsManagerComponentSingleton manager. Holds the active Input Profile and provides it to Input Readers.Options Manager
GS_InputProfileData asset defining input groups, event mappings, and key bindings. Created in the Asset Editor.Input Profiles
GS_InputReaderComponentReads input through the active profile and fires gameplay events. Can be extended for specialized input handling.Input Options

Quick Start

  1. Create an Options Manager prefab with the GS_OptionsManagerComponent.
  2. Create a GS_InputProfile data asset in the Asset Editor.
  3. Add input groups and event mappings to the profile.
  4. Assign the Input Profile to the Options Manager.
  5. Add the Options Manager .spawnable to the Game Manager’s Startup Managers list.
  6. Attach GS_InputReaderComponents to entities that need to process input.

See Also


Options Manager

The singleton options controller — holds the active Input Profile and provides runtime configuration data to game systems.

GS_InputOptions

The input subsystem — Input Profiles for grouped event-to-binding mappings and Input Readers for processing input in gameplay.