diff --git a/client/renderSDL/ScreenHandler.cpp b/client/renderSDL/ScreenHandler.cpp index f8ceb26f1..527b4ac75 100644 --- a/client/renderSDL/ScreenHandler.cpp +++ b/client/renderSDL/ScreenHandler.cpp @@ -294,7 +294,7 @@ void ScreenHandler::initializeWindow() SDL_RendererInfo info; SDL_GetRendererInfo(mainRenderer, &info); - SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "best"); + SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, settings["video"]["scalingMode"].String().c_str()); logGlobal->info("Created renderer %s", info.name); } diff --git a/config/schemas/settings.json b/config/schemas/settings.json index e5ecd4f04..dfb7501cf 100644 --- a/config/schemas/settings.json +++ b/config/schemas/settings.json @@ -160,7 +160,8 @@ "displayIndex", "showfps", "targetfps", - "vsync" + "vsync", + "scalingMode" ], "properties" : { "resolution" : { @@ -223,6 +224,11 @@ "vsync" : { "type" : "boolean", "default" : true + }, + "scalingMode" : { + "type" : "string", + "enum" : [ "nearest", "linear", "best" ], + "default" : "best" } } },