From d240a6d33fd969b406b6321c963664b74342b86b Mon Sep 17 00:00:00 2001 From: Josh Pearson Date: Fri, 14 Mar 2025 11:13:01 -0600 Subject: [PATCH] Allow Draw Distance Slider to Go Lower than Default Limit Will allow users to opt for better performance with reduced draw distance, if desired --- src/miami/core/Frontend.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/miami/core/Frontend.cpp b/src/miami/core/Frontend.cpp index 18dfce7e..9d8ee61b 100644 --- a/src/miami/core/Frontend.cpp +++ b/src/miami/core/Frontend.cpp @@ -68,6 +68,9 @@ const CRGBA SCROLLBAR_COLOR = LABEL_COLOR; #define MAX_VISIBLE_OPTION_ON_SCREEN (hasNativeList(m_nCurrScreen) ? MAX_VISIBLE_LIST_ROW : MAX_VISIBLE_OPTION) #define SCREEN_HAS_AUTO_SCROLLBAR (m_nTotalListRow > MAX_VISIBLE_OPTION && !hasNativeList(m_nCurrScreen)) +#define MIN_DRAWDIST 0.5f // default was 0.925f +#define MAX_DRAWDIST 1.8f + int GetOptionCount(int screen) { int i = 0; @@ -729,10 +732,10 @@ CMenuManager::CheckSliderMovement(int value) break; case MENUACTION_DRAWDIST: if(value > 0) - m_PrefsLOD += ((1.8f - 0.925f) / MENUSLIDER_LOGICAL_BARS); + m_PrefsLOD += ((MAX_DRAWDIST - MIN_DRAWDIST) / MENUSLIDER_LOGICAL_BARS); else - m_PrefsLOD -= ((1.8f - 0.925f) / MENUSLIDER_LOGICAL_BARS); - m_PrefsLOD = Clamp(m_PrefsLOD, 0.925f, 1.8f); + m_PrefsLOD -= ((MAX_DRAWDIST - MIN_DRAWDIST) / MENUSLIDER_LOGICAL_BARS); + m_PrefsLOD = Clamp(m_PrefsLOD, MIN_DRAWDIST, MAX_DRAWDIST); CRenderer::ms_lodDistScale = m_PrefsLOD; break; @@ -1562,7 +1565,7 @@ CMenuManager::DrawStandardMenus(bool activeScreen) ProcessSlider(m_PrefsBrightness / 384.0f, SLIDER_Y(70.0f), HOVEROPTION_INCREASE_BRIGHTNESS, HOVEROPTION_DECREASE_BRIGHTNESS, SCREEN_WIDTH, true); break; case MENUACTION_DRAWDIST: - ProcessSlider((m_PrefsLOD - 0.925f) / 0.875f, SLIDER_Y(99.0f), HOVEROPTION_INCREASE_DRAWDIST, HOVEROPTION_DECREASE_DRAWDIST, SCREEN_WIDTH, true); + ProcessSlider((m_PrefsLOD - MIN_DRAWDIST) / (MAX_DRAWDIST - MIN_DRAWDIST), SLIDER_Y(99.0f), HOVEROPTION_INCREASE_DRAWDIST, HOVEROPTION_DECREASE_DRAWDIST, SCREEN_WIDTH, true); break; case MENUACTION_MUSICVOLUME: if(m_nPrefsAudio3DProviderIndex != NO_AUDIO_PROVIDER)