make adaptive menu fps optional ('display.adaptive-menu-fps' flag)
This commit is contained in:
parent
7a4eb87195
commit
630e75c7d9
@ -18,6 +18,7 @@ Mainloop::Mainloop(Engine& engine) : engine(engine) {
|
|||||||
void Mainloop::run() {
|
void Mainloop::run() {
|
||||||
auto& time = engine.getTime();
|
auto& time = engine.getTime();
|
||||||
auto& window = engine.getWindow();
|
auto& window = engine.getWindow();
|
||||||
|
auto& settings = engine.getSettings();
|
||||||
|
|
||||||
engine.setLevelConsumer([this](auto level, int64_t localPlayer) {
|
engine.setLevelConsumer([this](auto level, int64_t localPlayer) {
|
||||||
if (level == nullptr) {
|
if (level == nullptr) {
|
||||||
@ -46,6 +47,7 @@ void Mainloop::run() {
|
|||||||
}
|
}
|
||||||
engine.postUpdate();
|
engine.postUpdate();
|
||||||
engine.nextFrame(
|
engine.nextFrame(
|
||||||
|
settings.display.adaptiveFpsInMenu.get() &&
|
||||||
dynamic_cast<const MenuScreen*>(engine.getScreen().get()) != nullptr
|
dynamic_cast<const MenuScreen*>(engine.getScreen().get()) != nullptr
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -51,6 +51,7 @@ SettingsHandler::SettingsHandler(EngineSettings& settings) {
|
|||||||
builder.add("framerate", &settings.display.framerate);
|
builder.add("framerate", &settings.display.framerate);
|
||||||
builder.add("limit-fps-iconified", &settings.display.limitFpsIconified);
|
builder.add("limit-fps-iconified", &settings.display.limitFpsIconified);
|
||||||
builder.add("window-mode", &settings.display.windowMode);
|
builder.add("window-mode", &settings.display.windowMode);
|
||||||
|
builder.add("adaptive-menu-fps", &settings.display.adaptiveFpsInMenu);
|
||||||
|
|
||||||
builder.section("camera");
|
builder.section("camera");
|
||||||
builder.add("sensitivity", &settings.camera.sensitivity);
|
builder.add("sensitivity", &settings.camera.sensitivity);
|
||||||
|
|||||||
@ -31,6 +31,8 @@ struct DisplaySettings {
|
|||||||
IntegerSetting framerate {-1, -1, 120};
|
IntegerSetting framerate {-1, -1, 120};
|
||||||
/// @brief Limit framerate when window is iconified
|
/// @brief Limit framerate when window is iconified
|
||||||
FlagSetting limitFpsIconified {false};
|
FlagSetting limitFpsIconified {false};
|
||||||
|
/// @brief Adaptive framerate in menu (experimental)
|
||||||
|
FlagSetting adaptiveFpsInMenu {false};
|
||||||
};
|
};
|
||||||
|
|
||||||
struct ChunksSettings {
|
struct ChunksSettings {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user