GS_Options

The configuration system — player settings with profiles, presets and apply targets, plus input profiles, readers and reactors.

GS_Options is where a project’s configuration lives. It covers two related things:

  • Settings — the player-facing options a game exposes: graphics, audio, display, accessibility. Declared as data, applied to the engine, persisted between sessions.
  • Input — how input reaches gameplay: binding profiles, the readers that consume them, and the reactors that turn input into behaviour.

Both are owned by the Options Manager, which is why they share a home.

For usage guides and setup examples, see The Basics: GS_Core.

 

Contents


Settings

A project declares its options in profile assets. Each option carries a widget kind — toggle, slider, dropdown, colour — and an apply target describing what it does to the engine. The manager merges the profiles into a live value map, applies values, persists them, and restores them next launch.

The part worth knowing early: settings reach the engine by two paths. Anything expressible as a console command is written out and executed at boot, before the window is created, so the game opens at the right resolution rather than switching to it. Everything else applies at runtime.

PageCovers
SettingsProfiles, the four option types, apply targets, presets, persistence and the launch path.
Display & Window ModesWhat the window targets do, and the platform limits.

Settings API Display & Window


Input

Input binding is data. An Input Profile defines groups, event mappings and key bindings, replacing raw engine binding files with something that can be rebound at runtime and toggled per group. Input Readers consume the active profile and fire gameplay events; Input Reactors turn those events into behaviour.

PageCovers
Input OptionsReaders, profiles and the input pipeline.
Input ProfilesThe profile asset — groups, events and bindings.
Input ReactorsTurning named input events into gameplay, and writing your own reaction types.

Input Options API


Components

ComponentPurposeDocumentation
GS_OptionsManagerComponentSingleton manager. Merges option profiles, applies and persists values, and holds the active Input Profile.Options Manager
GS_InputProfileData asset defining input groups, event mappings and key bindings.Input Profiles
GS_InputReaderComponentReads input through the active profile and fires gameplay events.Input Options

Quick Start

  1. Create an Options Manager prefab with the GS_OptionsManagerComponent.
  2. Create an option profile asset and add the options your game exposes, giving each one an apply target.
  3. Create a GS_InputProfile asset with your input groups and event mappings.
  4. Assign both to the Options Manager.
  5. Add the Options Manager .spawnable to the Game Manager’s Startup Managers list.
  6. Attach Input Readers to entities that process input.

The fastest way to check an option works end to end is the ImGui debug menu — it renders the whole catalog live and writes through the same bus your menus will use.


See Also

For conceptual overviews and usage guides:

For component references:

For related resources:


Get GS_Core

GS_Core — Explore this gem on the product page and add it to your project.