diff --git a/pcsx2-qt/Settings/AdvancedSettingsWidget.cpp b/pcsx2-qt/Settings/AdvancedSettingsWidget.cpp index 6fe70187a2..5f8c466414 100644 --- a/pcsx2-qt/Settings/AdvancedSettingsWidget.cpp +++ b/pcsx2-qt/Settings/AdvancedSettingsWidget.cpp @@ -53,9 +53,6 @@ AdvancedSettingsWidget::AdvancedSettingsWidget(SettingsWindow* dialog, QWidget* SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.gameFixes, "EmuCore", "EnableGameFixes", true); SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.patches, "EmuCore", "EnablePatches", true); - SettingWidgetBinder::BindWidgetToFloatSetting(sif, m_ui.ntscFrameRate, "EmuCore/GS", "FramerateNTSC", 59.94f); - SettingWidgetBinder::BindWidgetToFloatSetting(sif, m_ui.palFrameRate, "EmuCore/GS", "FrameratePAL", 50.00f); - dialog->registerWidgetHelp(m_ui.savestateSelector, tr("Use Save State Selector"), tr("Checked"), tr("Show a save state selector UI when switching slots instead of showing a notification bubble.")); diff --git a/pcsx2-qt/Settings/AdvancedSettingsWidget.ui b/pcsx2-qt/Settings/AdvancedSettingsWidget.ui index 1db2da7dab..a04747faf2 100644 --- a/pcsx2-qt/Settings/AdvancedSettingsWidget.ui +++ b/pcsx2-qt/Settings/AdvancedSettingsWidget.ui @@ -508,61 +508,6 @@ - - - - Frame Rate Control - - - - - - hz - - - 10.000000000000000 - - - 300.000000000000000 - - - 0.010000000000000 - - - - - - - hz - - - 10.000000000000000 - - - 300.000000000000000 - - - 0.010000000000000 - - - - - - - PAL Frame Rate: - - - - - - - NTSC Frame Rate: - - - - - - diff --git a/pcsx2-qt/Settings/GraphicsSettingsWidget.cpp b/pcsx2-qt/Settings/GraphicsSettingsWidget.cpp index 606ed869a6..7f98eccb7b 100644 --- a/pcsx2-qt/Settings/GraphicsSettingsWidget.cpp +++ b/pcsx2-qt/Settings/GraphicsSettingsWidget.cpp @@ -130,7 +130,7 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* dialog, QWidget* SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.osdShowHardwareInfo, "EmuCore/GS", "OsdShowHardwareInfo", false); SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.osdShowVideoCapture, "EmuCore/GS", "OsdShowVideoCapture", true); SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.osdShowInputRec, "EmuCore/GS", "OsdShowInputRec", true); - SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.osdWarnAboutUnsafeSettings, "EmuCore", "osdWarnAboutUnsafeSettings", true); + SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.osdWarnAboutUnsafeSettings, "EmuCore", "OsdWarnAboutUnsafeSettings", true); SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.fxaa, "EmuCore/GS", "fxaa", false); SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.shadeBoost, "EmuCore/GS", "ShadeBoost", false); SettingWidgetBinder::BindWidgetToIntSetting(sif, m_ui.shadeBoostBrightness, "EmuCore/GS", "ShadeBoost_Brightness", false); @@ -254,6 +254,8 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* dialog, QWidget* SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_ui.disableVertexShaderExpand, "EmuCore/GS", "DisableVertexShaderExpand", false); SettingWidgetBinder::BindWidgetToIntSetting( sif, m_ui.gsDownloadMode, "EmuCore/GS", "HWDownloadMode", static_cast(GSHardwareDownloadMode::Enabled)); + SettingWidgetBinder::BindWidgetToFloatSetting(sif, m_ui.ntscFrameRate, "EmuCore/GS", "FrameRateNTSC", 59.94f); + SettingWidgetBinder::BindWidgetToFloatSetting(sif, m_ui.palFrameRate, "EmuCore/GS", "FrameRatePAL", 50.00f); ////////////////////////////////////////////////////////////////////////// // SW Settings @@ -392,6 +394,8 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* dialog, QWidget* m_ui.useBlitSwapChain = nullptr; m_ui.disableMailboxPresentation = nullptr; m_ui.extendedUpscales = nullptr; + m_ui.ntscFrameRate = nullptr; + m_ui.palFrameRate = nullptr; m_ui.spinCPUDuringReadbacks = nullptr; m_ui.spinGPUDuringReadbacks = nullptr; m_ui.overrideTextureBarriers = nullptr; @@ -857,6 +861,12 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* dialog, QWidget* tr("Skips synchronizing with the GS thread and host GPU for GS downloads. " "Can result in a large speed boost on slower systems, at the cost of many broken graphical effects. " "If games are broken and you have this option enabled, please disable it first.")); + + dialog->registerWidgetHelp(m_ui.ntscFrameRate, tr("NTSC Frame Rate"), tr("59.94 Hz"), + tr("Determines what frame rate NTSC games run at.")); + + dialog->registerWidgetHelp(m_ui.palFrameRate, tr("PAL Frame Rate"), tr("50.00 Hz"), + tr("Determines what frame rate PAL games run at.")); } } diff --git a/pcsx2-qt/Settings/GraphicsSettingsWidget.ui b/pcsx2-qt/Settings/GraphicsSettingsWidget.ui index 3850d29eca..a0b3eae032 100644 --- a/pcsx2-qt/Settings/GraphicsSettingsWidget.ui +++ b/pcsx2-qt/Settings/GraphicsSettingsWidget.ui @@ -6,8 +6,8 @@ 0 0 - 720 - 588 + 722 + 626 @@ -55,12 +55,12 @@ - 0 + 9 true - + Display @@ -391,7 +391,7 @@ - + Rendering @@ -652,7 +652,7 @@ - + Hardware Fixes @@ -950,7 +950,7 @@ - + Upscaling Fixes @@ -1470,7 +1470,7 @@ - + OSD @@ -1837,7 +1837,7 @@ - + Media Capture @@ -2158,7 +2158,7 @@ - Qt::Orientation::Vertical + Qt::Vertical @@ -2170,248 +2170,394 @@ - + Advanced + + 0 + + + 0 + + + 0 + + + 0 + - - - Advanced Options + + + QFrame::NoFrame - - - - - Hardware Download Mode: - - - - - - - - Accurate (Recommended) + + Qt::ScrollBarAlwaysOff + + + true + + + + + 0 + 0 + 722 + 499 + + + + + 0 + 0 + + + + + 0 + 499 + + + + + + + + 0 + 0 + - - - - Disable Readbacks (Synchronize GS Thread) + + Advanced Options - - - - Unsynchronized (Non-Deterministic) + + + + + + 0 + 0 + + + + Hardware Download Mode: + + + + + + + + Accurate (Recommended) + + + + + Disable Readbacks (Synchronize GS Thread) + + + + + Unsynchronized (Non-Deterministic) + + + + + Disabled (Ignore Transfers) + + + + + + + + + 0 + 0 + + + + GS Dump Compression: + + + + + + + + Uncompressed + + + + + LZMA (xz) + + + + + Zstandard (zst) + + + + + + + + + + Extended Upscaling Multipliers + + + + + + + Disable Mailbox Presentation + + + + + + + Use Blit Swap Chain + + + + + + + Spin CPU During Readbacks + + + + + + + Spin GPU During Readbacks + + + + + + + + + + 0 + 0 + + + + Allow Exclusive Fullscreen: + + + + + + + + Automatic (Default) + + + + + Disallowed + + + + + Allowed + + + + + + + + + None + + + + + Partial + + + + + Full (Hash Cache) + + + + + + + + + 0 + 0 + + + + Texture Preloading: + + + + + + + + + + Frame Rate Options - - - - Disabled (Ignore Transfers) + + + + + NTSC Frame Rate: + + + + + + + Hz + + + 10.000000000000000 + + + 300.000000000000000 + + + 0.010000000000000 + + + + + + + PAL Frame Rate: + + + + + + + Hz + + + 10.000000000000000 + + + 300.000000000000000 + + + 0.010000000000000 + + + + + + + + + + + 0 + 0 + - - - - - - - GS Dump Compression: - - - - - - - - Uncompressed + + Debugging Options - - - - LZMA (xz) + + + + + + 0 + 0 + + + + Override Texture Barriers: + + + + + + + + Automatic (Default) + + + + + Force Disabled + + + + + Force Enabled + + + + + + + + + + Disable Framebuffer Fetch + + + + + + + Disable Shader Cache + + + + + + + Disable Vertex Shader Expand + + + + + + + Use Debug Device + + + + + + + + + + + + Qt::Vertical - - - - Zstandard (zst) + + + 20 + 40 + - - - - - - - - - Extended Upscaling Multipliers - - - - - - - Disable Mailbox Presentation - - - - - - - Use Blit Swap Chain - - - - - - - Spin CPU During Readbacks - - - - - - - Spin GPU During Readbacks - - - - - - - - - Allow Exclusive Fullscreen: - - - - - - - - Automatic (Default) - - - - - Disallowed - - - - - Allowed - - - - - - - - - None - - - - - Partial - - - - - Full (Hash Cache) - - - - - - - - Texture Preloading: - - - - + + + + - - - - Debugging Options - - - - - - Override Texture Barriers: - - - - - - - - Automatic (Default) - - - - - Force Disabled - - - - - Force Enabled - - - - - - - - - - Disable Framebuffer Fetch - - - - - - - Disable Shader Cache - - - - - - - Disable Vertex Shader Expand - - - - - - - Use Debug Device - - - - - - - - - - - - Qt::Orientation::Vertical - - - - 20 - 40 - - - - diff --git a/pcsx2/ImGui/FullscreenUI.cpp b/pcsx2/ImGui/FullscreenUI.cpp index 16175669a3..1d857020e7 100644 --- a/pcsx2/ImGui/FullscreenUI.cpp +++ b/pcsx2/ImGui/FullscreenUI.cpp @@ -367,12 +367,9 @@ namespace FullscreenUI static void DrawIntSpinBoxSetting(SettingsInterface* bsi, const char* title, const char* summary, const char* section, const char* key, int default_value, int min_value, int max_value, int step_value, const char* format = "%d", bool enabled = true, float height = ImGuiFullscreen::LAYOUT_MENU_BUTTON_HEIGHT, std::pair font = g_large_font, std::pair summary_font = g_medium_font); -#if 0 - // Unused as of now static void DrawFloatRangeSetting(SettingsInterface* bsi, const char* title, const char* summary, const char* section, const char* key, float default_value, float min_value, float max_value, const char* format = "%f", float multiplier = 1.0f, bool enabled = true, float height = ImGuiFullscreen::LAYOUT_MENU_BUTTON_HEIGHT, std::pair font = g_large_font, std::pair summary_font = g_medium_font); -#endif static void DrawFloatSpinBoxSetting(SettingsInterface* bsi, const char* title, const char* summary, const char* section, const char* key, float default_value, float min_value, float max_value, float step_value, float multiplier, const char* format = "%f", bool enabled = true, float height = ImGuiFullscreen::LAYOUT_MENU_BUTTON_HEIGHT, @@ -2217,8 +2214,6 @@ void FullscreenUI::DrawIntSpinBoxSetting(SettingsInterface* bsi, const char* tit ImGui::PopFont(); } -#if 0 -// Unused as of now void FullscreenUI::DrawFloatRangeSetting(SettingsInterface* bsi, const char* title, const char* summary, const char* section, const char* key, float default_value, float min_value, float max_value, const char* format, float multiplier, bool enabled, float height, std::pair font, std::pair summary_font) @@ -2275,7 +2270,6 @@ void FullscreenUI::DrawFloatRangeSetting(SettingsInterface* bsi, const char* tit ImGui::PopStyleVar(4); ImGui::PopFont(); } -#endif void FullscreenUI::DrawFloatSpinBoxSetting(SettingsInterface* bsi, const char* title, const char* summary, const char* section, const char* key, float default_value, float min_value, float max_value, float step_value, float multiplier, const char* format, @@ -4479,6 +4473,10 @@ void FullscreenUI::DrawGraphicsSettingsPage(SettingsInterface* bsi, bool show_ad "Uploads full textures to the GPU on use, rather than only the utilized regions. Can improve performance in some games."), "EmuCore/GS", "texture_preloading", static_cast(TexturePreloadingLevel::Off), s_preloading_options, std::size(s_preloading_options), true); + DrawFloatRangeSetting(bsi, FSUI_CSTR("NTSC Frame Rate"), FSUI_CSTR("Determines what frame rate NTSC games run at."), + "EmuCore/GS", "FrameRateNTSC", 59.94f, 10.0f, 300.0f, "%.2f Hz"); + DrawFloatRangeSetting(bsi, FSUI_CSTR("PAL Frame Rate"), FSUI_CSTR("Determines what frame rate PAL games run at."), + "EmuCore/GS", "FrameRatePAL", 50.0f, 10.0f, 300.0f, "%.2f Hz"); } EndMenuButtons();