From 0402fa4ab5ba20510351a1ea407cd8d2664267f2 Mon Sep 17 00:00:00 2001 From: FlightlessMango Date: Tue, 8 Mar 2022 17:51:06 +0100 Subject: [PATCH] mangoapp: fsr_steam_sharpness --- src/app/main.cpp | 3 ++- src/hud_elements.cpp | 42 ++++++++++++++++++++++-------------------- src/overlay_params.cpp | 1 + src/overlay_params.h | 1 + 4 files changed, 26 insertions(+), 21 deletions(-) diff --git a/src/app/main.cpp b/src/app/main.cpp index d9a44ee3..6fab90c1 100644 --- a/src/app/main.cpp +++ b/src/app/main.cpp @@ -135,7 +135,8 @@ void msg_read_thread(){ update_hud_info_with_frametime(sw_stats, *params, vendorID, mangoapp_v1->visible_frametime_ns); if (msg_size > offsetof(mangoapp_msg_v1, fsrUpscale)){ g_fsrUpscale = mangoapp_v1->fsrUpscale; - // g_fsrSharpness = mangoapp_v1->fsrSharpness; + if (params->fsr_steam_sharpness < 0) + g_fsrSharpness = mangoapp_v1->fsrSharpness; } if (msg_size > offsetof(mangoapp_msg_v1, latency_ns)){ gamescope_frametime(mangoapp_v1->app_frametime_ns, mangoapp_v1->latency_ns); diff --git a/src/hud_elements.cpp b/src/hud_elements.cpp index adec939d..89f7e2f3 100644 --- a/src/hud_elements.cpp +++ b/src/hud_elements.cpp @@ -768,27 +768,29 @@ void HudElements::battery(){ void HudElements::gamescope_fsr(){ #ifdef MANGOAPP - ImGui::TableNextRow(); ImGui::TableNextColumn(); - string FSR_TEXT; - ImVec4 FSR_COLOR; - if (g_fsrUpscale){ - FSR_TEXT = "ON"; - FSR_COLOR = HUDElements.colors.fps_value_high; - } else { - FSR_TEXT = "OFF"; - FSR_COLOR = HUDElements.colors.fps_value_low; - } + if (HUDElements.params->enabled[OVERLAY_PARAM_ENABLED_fsr]) { + ImGui::TableNextRow(); ImGui::TableNextColumn(); + string FSR_TEXT; + ImVec4 FSR_COLOR; + if (g_fsrUpscale){ + FSR_TEXT = "ON"; + FSR_COLOR = HUDElements.colors.fps_value_high; + } else { + FSR_TEXT = "OFF"; + FSR_COLOR = HUDElements.colors.fps_value_low; + } - ImGui::TextColored(HUDElements.colors.engine, "%s", "FSR"); - ImGui::TableNextColumn(); - right_aligned_text(FSR_COLOR, HUDElements.ralign_width, "%s", FSR_TEXT.c_str()); - ImGui::TableNextColumn(); - if (g_fsrUpscale){ - right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%i", g_fsrSharpness); - ImGui::SameLine(0,1.0f); - ImGui::PushFont(HUDElements.sw_stats->font1); - ImGui::Text("Sharp"); - ImGui::PopFont(); + ImGui::TextColored(HUDElements.colors.engine, "%s", "FSR"); + ImGui::TableNextColumn(); + right_aligned_text(FSR_COLOR, HUDElements.ralign_width, "%s", FSR_TEXT.c_str()); + ImGui::TableNextColumn(); + if (g_fsrUpscale){ + right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%i", g_fsrSharpness); + ImGui::SameLine(0,1.0f); + ImGui::PushFont(HUDElements.sw_stats->font1); + ImGui::Text("Sharp"); + ImGui::PopFont(); + } } #endif } diff --git a/src/overlay_params.cpp b/src/overlay_params.cpp index d7e2fee0..d70b6824 100644 --- a/src/overlay_params.cpp +++ b/src/overlay_params.cpp @@ -624,6 +624,7 @@ parse_overlay_config(struct overlay_params *params, params->fps_value = { 30, 60 }; params->round_corners = 0; params->battery_color =0xff9078; + params->fsr_steam_sharpness = -1; #ifdef HAVE_X11 params->toggle_hud = { XK_Shift_R, XK_F12 }; diff --git a/src/overlay_params.h b/src/overlay_params.h index ef475dad..21f2fe09 100644 --- a/src/overlay_params.h +++ b/src/overlay_params.h @@ -80,6 +80,7 @@ typedef unsigned long KeySym; OVERLAY_PARAM_BOOL(debug) \ OVERLAY_PARAM_BOOL(gamepad_battery) \ OVERLAY_PARAM_BOOL(gamepad_battery_icon) \ + OVERLAY_PARAM_BOOL(hide_fsr_sharpness) \ OVERLAY_PARAM_CUSTOM(fps_sampling_period) \ OVERLAY_PARAM_CUSTOM(output_folder) \ OVERLAY_PARAM_CUSTOM(output_file) \