summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt2/Config/Graphics/GeneralWidget.cpp
diff options
context:
space:
mode:
authorPierre Bourdon <delroth@gmail.com>2018-03-10 08:22:28 +0100
committerGitHub <noreply@github.com>2018-03-10 08:22:28 +0100
commita4ef133456a18178f345d3c25195bf74c0e83750 (patch)
tree1564aa8e85c3800882466b953984a57be0bf0b0c /Source/Core/DolphinQt2/Config/Graphics/GeneralWidget.cpp
parent63838c013bde06ed13bfc1b5e24c53594934f641 (diff)
parent93ab50c55584c416d32b5bbdf39f37e9c67f4105 (diff)
Merge pull request #6399 from stenzek/videocommon-shader-cache
VideoCommon Shader (Pipeline) Cache
Diffstat (limited to 'Source/Core/DolphinQt2/Config/Graphics/GeneralWidget.cpp')
-rw-r--r--Source/Core/DolphinQt2/Config/Graphics/GeneralWidget.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/Source/Core/DolphinQt2/Config/Graphics/GeneralWidget.cpp b/Source/Core/DolphinQt2/Config/Graphics/GeneralWidget.cpp
index e76fc6a35c..21281488b8 100644
--- a/Source/Core/DolphinQt2/Config/Graphics/GeneralWidget.cpp
+++ b/Source/Core/DolphinQt2/Config/Graphics/GeneralWidget.cpp
@@ -87,6 +87,8 @@ void GeneralWidget::CreateWidgets()
m_keep_window_top = new QCheckBox(tr("Keep Window on Top"));
m_hide_cursor = new QCheckBox(tr("Hide Mouse Cursor"));
m_render_main_window = new QCheckBox(tr("Render to Main Window"));
+ m_wait_for_shaders = new GraphicsBool(tr("Immediately Compile Shaders"),
+ Config::GFX_WAIT_FOR_SHADERS_BEFORE_STARTING);
m_options_box->setLayout(m_options_layout);
@@ -101,6 +103,7 @@ void GeneralWidget::CreateWidgets()
m_options_layout->addWidget(m_hide_cursor, 3, 0);
m_options_layout->addWidget(m_render_main_window, 3, 1);
+ m_options_layout->addWidget(m_wait_for_shaders, 4, 0);
main_layout->addWidget(m_video_box);
main_layout->addWidget(m_options_box);
@@ -265,6 +268,12 @@ void GeneralWidget::AddDescriptions()
static const char* TR_SHOW_NETPLAY_MESSAGES_DESCRIPTION =
QT_TR_NOOP("When playing on NetPlay, show chat messages, buffer changes and "
"desync alerts.\n\nIf unsure, leave this unchecked.");
+ static const char* TR_WAIT_FOR_SHADERS_DESCRIPTION = QT_TR_NOOP(
+ "Waits for all shaders to finish compiling before starting a game. Enabling this "
+ "option may reduce stuttering or hitching for a short time after the game is "
+ "started, at the cost of a longer delay before the game starts.\n\nFor systems "
+ "with two or fewer cores, it is recommended to enable this option, as a large "
+ "shader queue may reduce frame rates. Otherwise, if unsure, leave this unchecked.");
AddDescription(m_backend_combo, TR_BACKEND_DESCRIPTION);
#ifdef _WIN32
@@ -282,6 +291,7 @@ void GeneralWidget::AddDescriptions()
AddDescription(m_show_messages, TR_SHOW_FPS_DESCRIPTION);
AddDescription(m_keep_window_top, TR_KEEP_WINDOW_ON_TOP_DESCRIPTION);
AddDescription(m_show_messages, TR_SHOW_NETPLAY_MESSAGES_DESCRIPTION);
+ AddDescription(m_wait_for_shaders, TR_WAIT_FOR_SHADERS_DESCRIPTION);
}
void GeneralWidget::OnBackendChanged(const QString& backend_name)
{