From cf3e56e2753e629137e438de1fe331c46a3167ed Mon Sep 17 00:00:00 2001 From: Alibek Omarov Date: Wed, 5 Feb 2025 19:47:59 +0300 Subject: [PATCH] engine: client: add alternative mode for hud_scale, where it scales HUD down to selected resolution with preserving aspect ratio --- engine/client/cl_game.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/engine/client/cl_game.c b/engine/client/cl_game.c index a7659fd7..75e7d4dc 100644 --- a/engine/client/cl_game.c +++ b/engine/client/cl_game.c @@ -1698,7 +1698,12 @@ int GAME_EXPORT CL_GetScreenInfo( SCREENINFO *pscrinfo ) clgame.scrInfo.iSize = sizeof( clgame.scrInfo ); clgame.scrInfo.iFlags = SCRINFO_SCREENFLASH; - if( scale_factor && scale_factor != 1.0f ) + if( hud_scale.value >= 320.0f && hud_scale.value >= hud_scale_minimal_width.value ) + { + scale_factor = refState.width / hud_scale.value; + apply_scale_factor = true; + } + else if( scale_factor && scale_factor != 1.0f ) { float scaled_width = (float)refState.width / scale_factor; if( scaled_width >= hud_scale_minimal_width.value )