retrohub-org / retrohub

Retrogaming library frontend, built to be a highly customizable platform.
https://retrohub-org.github.io/
MIT License
110 stars 6 forks source link

Implement internal Godot settings #351

Closed rsubtil closed 4 months ago

rsubtil commented 4 months ago

Closes #339

Godot can override engine settings through a settings file, which can be in a user-writable directory like user://. This is needed to properly override some core settings before launching, most notable fullscreen.

RetroHub now replicates such settings and writes them to an internal file (user://engine_settings.cfg). Currently this applies only to window mode and V-Sync. In the future, this will also allow, for instance, to change the graphics backend (Vulkan or OpenGL)

Additionally this fixes the new UI volume setting causing a needless save operation every time.