Behaviour changes that landed in PR
#335 for the options window
and the config.ini it writes to.
For the camera architecture see camera-system.md.
The options window is now the same window in every scene (login, character select, gameplay) - it shares one layout, one apply path, and one backing config object. There is no separate per-scene options dialog.
What was added on top of that:
- Resolution and windowed/fullscreen toggle apply without restarting. Switch them at any time from the options window.
- Volume and render-level sliders round to the nearest level instead of truncating, so the slider endpoints actually reach 0 (mute) and the configured maximum.
- Resolution combo-box clicks no longer leak through to the checkboxes behind the dropdown.
Settings are written next to the executable as config.ini. The options
window writes to these sections:
[Window]- width, height, windowed flag.[Graphics]- render levels, vsync, fps limit.[Audio]- volumes.[Login][ConnectionSettings][Camera]- orbital wheel-zoom radius (Zoom). New in this PR, the only key the camera rework added.
Missing keys fall back to compile-time defaults from
src/source/Data/GameConfig/GameConfigConstants.h. If config.ini doesn't exist,
it's created the first time anything calls Save().