From 5920372929947876796d9009e82f48a373d01556 Mon Sep 17 00:00:00 2001 From: kd-11 Date: Sun, 23 Jan 2022 15:54:49 +0300 Subject: [PATCH] qt: Encourage users to use better ZCULL synchronization options - From looking at logs, users are not actually changing ZCULL settings because they do not realize how slow 'Precise' mode is. By marking precise as the 'slowest' mode, we can get the message across that better options exist. - Also updates the tooltips with more useful information. --- rpcs3/rpcs3qt/settings_dialog.cpp | 2 +- rpcs3/rpcs3qt/tooltips.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rpcs3/rpcs3qt/settings_dialog.cpp b/rpcs3/rpcs3qt/settings_dialog.cpp index 64bb87c6f4..cedbfbb358 100644 --- a/rpcs3/rpcs3qt/settings_dialog.cpp +++ b/rpcs3/rpcs3qt/settings_dialog.cpp @@ -512,7 +512,7 @@ settings_dialog::settings_dialog(std::shared_ptr gui_settings, std ui->shaderCompilerThreads->setItemText(ui->shaderCompilerThreads->findData(0), tr("Auto", "Number of Shader Compiler Threads")); // Custom control that simplifies operation of two independent variables. Can probably be done better but this works. - ui->zcullPrecisionMode->addItem(tr("Precise (Default)"), static_cast(zcull_precision_level::precise)); + ui->zcullPrecisionMode->addItem(tr("Precise (Slowest)"), static_cast(zcull_precision_level::precise)); ui->zcullPrecisionMode->addItem(tr("Approximate (Fast)"), static_cast(zcull_precision_level::approximate)); ui->zcullPrecisionMode->addItem(tr("Relaxed (Fastest)"), static_cast(zcull_precision_level::relaxed)); diff --git a/rpcs3/rpcs3qt/tooltips.h b/rpcs3/rpcs3qt/tooltips.h index e84796648a..a47eb98ac8 100644 --- a/rpcs3/rpcs3qt/tooltips.h +++ b/rpcs3/rpcs3qt/tooltips.h @@ -30,7 +30,7 @@ public: const QString read_depth = tr("Initializes render target memory using vm memory."); const QString dump_depth = tr("Writes depth buffer values to vm memory."); const QString disable_on_disk_shader_cache = tr("Disables the loading and saving of shaders from and to the shader cache in the data directory."); - const QString zcull_operation_mode = tr("Changes ZCULL report synchronization behaviour. Use with caution.\n· Precise is the most accurate to PS3 behaviour.\n· Approximate is just a faster way to generate occlusion data which may not always match what the PS3 would generate.\n· Relaxed changes the synchronization method completely and can improve performance in some games or completely break others."); + const QString zcull_operation_mode = tr("Changes ZCULL report synchronization behaviour. Experiment to find the best option for your game. Approximate mode is recommended for most games.\n· Precise is the most accurate to PS3 behaviour. Required for accurate visuals in some titles such as Demon's Souls and The Darkness.\n· Approximate is a much faster way to generate occlusion data which may not always match what the PS3 would generate. Works well with most PS3 games.\n· Relaxed changes the synchronization method completely and can greatly improve performance in some games or completely break others."); const QString max_spurs_threads = tr("Limits the maximum number of SPURS threads in each thread group.\nMay improve performance in some cases, especially on systems with limited number of hardware threads.\nLimiting the number of threads is likely to cause crashes; it's recommended to keep this at the default value."); const QString sleep_timers_accuracy = tr("Changes the sleep period accuracy.\n'As Host' uses default accuracy of the underlying operating system, while 'All Timers' attempts to improve it.\n'Usleep Only' limits the adjustments to usleep syscall only.\nCan affect performance in unexpected ways."); const QString vblank_rate = tr("Adjusts the frequency of vertical blanking signals that the emulator sends.\nAffects timing of events which rely on these signals.");