mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-05 06:21:26 +12:00
Qt: Add shader loading screen options to the settings dialog
This commit is contained in:
parent
1456678316
commit
c9adb52f63
4 changed files with 88 additions and 0 deletions
|
@ -83,6 +83,11 @@
|
||||||
"perfOverlayMarginY": "Sets the vertical distance to the screen border relative to the screen quadrant (measured in pixels).",
|
"perfOverlayMarginY": "Sets the vertical distance to the screen border relative to the screen quadrant (measured in pixels).",
|
||||||
"perfOverlayCenterX": "Centers the performance overlay horizontally and overrides the horizontal margin.",
|
"perfOverlayCenterX": "Centers the performance overlay horizontally and overrides the horizontal margin.",
|
||||||
"perfOverlayCenterY": "Centers the performance overlay vertically and overrides the vertical margin."
|
"perfOverlayCenterY": "Centers the performance overlay vertically and overrides the vertical margin."
|
||||||
|
},
|
||||||
|
"shaderLoadingScreen": {
|
||||||
|
"shaderLoadBgEnabled": "Shows a background image during the native shader loading dialog/loading screen.\nBy default the used image will be <gamedir>/PS3_GAME/PIC1.PNG or <gamedir>/PS3_GAME/PIC0.PNG.",
|
||||||
|
"shaderLoadBgDarkening": "Changes the background image darkening effect strength of the native shader loading dialog.\nThis may be used to improve readability and/or aesthetics.",
|
||||||
|
"shaderLoadBgBlur": "Changes the background image blur effect strength of the native shader loading dialog.\nThis may be used to improve readability and/or aesthetics."
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"gpu": {
|
"gpu": {
|
||||||
|
|
|
@ -90,6 +90,11 @@ public:
|
||||||
PerfOverlayCenterX,
|
PerfOverlayCenterX,
|
||||||
PerfOverlayCenterY,
|
PerfOverlayCenterY,
|
||||||
|
|
||||||
|
// Shader Loading Dialog
|
||||||
|
ShaderLoadBgEnabled,
|
||||||
|
ShaderLoadBgDarkening,
|
||||||
|
ShaderLoadBgBlur,
|
||||||
|
|
||||||
// Audio
|
// Audio
|
||||||
AudioRenderer,
|
AudioRenderer,
|
||||||
DumpToFile,
|
DumpToFile,
|
||||||
|
@ -284,6 +289,11 @@ private:
|
||||||
{ PerfOverlayCenterX, { "Video", "Performance Overlay", "Center Horizontally" } },
|
{ PerfOverlayCenterX, { "Video", "Performance Overlay", "Center Horizontally" } },
|
||||||
{ PerfOverlayCenterY, { "Video", "Performance Overlay", "Center Vertically" } },
|
{ PerfOverlayCenterY, { "Video", "Performance Overlay", "Center Vertically" } },
|
||||||
|
|
||||||
|
// Shader Loading Dialog
|
||||||
|
{ ShaderLoadBgEnabled, { "Video", "Shader Loading Dialog", "Allow custom background" } },
|
||||||
|
{ ShaderLoadBgDarkening, { "Video", "Shader Loading Dialog", "Darkening effect strength" } },
|
||||||
|
{ ShaderLoadBgBlur, { "Video", "Shader Loading Dialog", "Blur effect strength" } },
|
||||||
|
|
||||||
// Audio
|
// Audio
|
||||||
{ AudioRenderer, { "Audio", "Renderer"}},
|
{ AudioRenderer, { "Audio", "Renderer"}},
|
||||||
{ DumpToFile, { "Audio", "Dump to file"}},
|
{ DumpToFile, { "Audio", "Dump to file"}},
|
||||||
|
|
|
@ -91,6 +91,7 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
|
||||||
QJsonObject json_emu = json_obj.value("emulator").toObject();
|
QJsonObject json_emu = json_obj.value("emulator").toObject();
|
||||||
QJsonObject json_emu_misc = json_emu.value("misc").toObject();
|
QJsonObject json_emu_misc = json_emu.value("misc").toObject();
|
||||||
QJsonObject json_emu_overlay = json_emu.value("overlay").toObject();
|
QJsonObject json_emu_overlay = json_emu.value("overlay").toObject();
|
||||||
|
QJsonObject json_emu_shaders = json_emu.value("shaderLoadingScreen").toObject();
|
||||||
|
|
||||||
QJsonObject json_gui = json_obj.value("gui").toObject();
|
QJsonObject json_gui = json_obj.value("gui").toObject();
|
||||||
|
|
||||||
|
@ -860,6 +861,18 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
|
||||||
EnablePerfOverlayOptions(ui->perfOverlayEnabled->isChecked());
|
EnablePerfOverlayOptions(ui->perfOverlayEnabled->isChecked());
|
||||||
connect(ui->perfOverlayEnabled, &QCheckBox::clicked, EnablePerfOverlayOptions);
|
connect(ui->perfOverlayEnabled, &QCheckBox::clicked, EnablePerfOverlayOptions);
|
||||||
|
|
||||||
|
xemu_settings->EnhanceCheckBox(ui->shaderLoadBgEnabled, emu_settings::ShaderLoadBgEnabled);
|
||||||
|
SubscribeTooltip(ui->shaderLoadBgEnabled, json_emu_shaders["shaderLoadBgEnabled"].toString());
|
||||||
|
auto EnableShaderLoaderOptions = [this](bool enabled)
|
||||||
|
{
|
||||||
|
ui->label_shaderLoadBgDarkening->setEnabled(enabled);
|
||||||
|
ui->label_shaderLoadBgBlur->setEnabled(enabled);
|
||||||
|
ui->shaderLoadBgDarkening->setEnabled(enabled);
|
||||||
|
ui->shaderLoadBgBlur->setEnabled(enabled);
|
||||||
|
};
|
||||||
|
EnableShaderLoaderOptions(ui->shaderLoadBgEnabled->isChecked());
|
||||||
|
connect(ui->shaderLoadBgEnabled, &QCheckBox::clicked, EnableShaderLoaderOptions);
|
||||||
|
|
||||||
// Sliders
|
// Sliders
|
||||||
|
|
||||||
xemu_settings->EnhanceSlider(ui->perfOverlayUpdateInterval, emu_settings::PerfOverlayUpdateInterval);
|
xemu_settings->EnhanceSlider(ui->perfOverlayUpdateInterval, emu_settings::PerfOverlayUpdateInterval);
|
||||||
|
@ -886,6 +899,22 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
|
||||||
ui->label_opacity->setText(tr("Opacity: %0 %").arg(value));
|
ui->label_opacity->setText(tr("Opacity: %0 %").arg(value));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
xemu_settings->EnhanceSlider(ui->shaderLoadBgDarkening, emu_settings::ShaderLoadBgDarkening);
|
||||||
|
SubscribeTooltip(ui->shaderLoadBgDarkening, json_emu_shaders["shaderLoadBgDarkening"].toString());
|
||||||
|
ui->label_shaderLoadBgDarkening->setText(tr("Background darkening: %0 %").arg(ui->shaderLoadBgDarkening->value()));
|
||||||
|
connect(ui->shaderLoadBgDarkening, &QSlider::valueChanged, [this](int value)
|
||||||
|
{
|
||||||
|
ui->label_shaderLoadBgDarkening->setText(tr("Background darkening: %0 %").arg(value));
|
||||||
|
});
|
||||||
|
|
||||||
|
xemu_settings->EnhanceSlider(ui->shaderLoadBgBlur, emu_settings::ShaderLoadBgBlur);
|
||||||
|
SubscribeTooltip(ui->shaderLoadBgBlur, json_emu_shaders["shaderLoadBgBlur"].toString());
|
||||||
|
ui->label_shaderLoadBgBlur->setText(tr("Background blur: %0 %").arg(ui->shaderLoadBgBlur->value()));
|
||||||
|
connect(ui->shaderLoadBgBlur, &QSlider::valueChanged, [this](int value)
|
||||||
|
{
|
||||||
|
ui->label_shaderLoadBgBlur->setText(tr("Background blur: %0 %").arg(value));
|
||||||
|
});
|
||||||
|
|
||||||
// SpinBoxes
|
// SpinBoxes
|
||||||
|
|
||||||
xemu_settings->EnhanceSpinBox(ui->perfOverlayMarginX, emu_settings::PerfOverlayMarginX, "", tr("px"));
|
xemu_settings->EnhanceSpinBox(ui->perfOverlayMarginX, emu_settings::PerfOverlayMarginX, "", tr("px"));
|
||||||
|
|
|
@ -1383,6 +1383,50 @@
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="groupBox_3">
|
||||||
|
<property name="title">
|
||||||
|
<string>Shader Loading Screen</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_70">
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="shaderLoadBgEnabled">
|
||||||
|
<property name="text">
|
||||||
|
<string>Allow custom background</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label_shaderLoadBgDarkening">
|
||||||
|
<property name="text">
|
||||||
|
<string>Background darkening:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QSlider" name="shaderLoadBgDarkening">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label_shaderLoadBgBlur">
|
||||||
|
<property name="text">
|
||||||
|
<string>Background blur:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QSlider" name="shaderLoadBgBlur">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<spacer name="verticalSpacer_14">
|
<spacer name="verticalSpacer_14">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue