rsx: Add configuration toggle to debug tab

This commit is contained in:
kd-11
2026-02-22 22:56:42 +03:00
committed by kd-11
parent 0fb8091a31
commit cee868560a
8 changed files with 17 additions and 4 deletions
+1 -1
View File
@@ -355,7 +355,7 @@ void GLGSRender::load_texture_env()
sampler_state->image_handle && sampler_state->image_handle &&
sampler_state->upload_context == rsx::texture_upload_context::shader_read && sampler_state->upload_context == rsx::texture_upload_context::shader_read &&
(current_fp_metadata.bx2_texture_reads_mask & (1u << i)) == 0 && (current_fp_metadata.bx2_texture_reads_mask & (1u << i)) == 0 &&
g_cfg.video.use_hardware_texel_remapping) [[ unlikely ]] !g_cfg.video.disable_hardware_texel_remapping) [[ unlikely ]]
{ {
// Check if we need to override the view format // Check if we need to override the view format
const auto gl_format = sampler_state->image_handle->view_format(); const auto gl_format = sampler_state->image_handle->view_format();
+1 -1
View File
@@ -347,7 +347,7 @@ void VKGSRender::load_texture_env()
sampler_state->image_handle && sampler_state->image_handle &&
sampler_state->upload_context == rsx::texture_upload_context::shader_read && sampler_state->upload_context == rsx::texture_upload_context::shader_read &&
(current_fp_metadata.bx2_texture_reads_mask & (1u << i)) == 0 && (current_fp_metadata.bx2_texture_reads_mask & (1u << i)) == 0 &&
g_cfg.video.use_hardware_texel_remapping) [[ unlikely ]] !g_cfg.video.disable_hardware_texel_remapping) [[ unlikely ]]
{ {
// Check if we need to override the view format // Check if we need to override the view format
const auto vk_format = sampler_state->image_handle->format(); const auto vk_format = sampler_state->image_handle->format();
+1 -1
View File
@@ -1154,7 +1154,7 @@ namespace vk
rsx::flags32_t create_flags = 0; rsx::flags32_t create_flags = 0;
if (context == rsx::texture_upload_context::shader_read && if (context == rsx::texture_upload_context::shader_read &&
g_cfg.video.use_hardware_texel_remapping) !g_cfg.video.disable_hardware_texel_remapping)
{ {
create_flags |= texture_create_flags::mutable_format; create_flags |= texture_create_flags::mutable_format;
} }
+1 -1
View File
@@ -176,7 +176,7 @@ struct cfg_root : cfg::node
cfg::_bool disable_async_host_memory_manager{ this, "Disable Asynchronous Memory Manager", false, true }; cfg::_bool disable_async_host_memory_manager{ this, "Disable Asynchronous Memory Manager", false, true };
cfg::_enum<output_scaling_mode> output_scaling{ this, "Output Scaling Mode", output_scaling_mode::bilinear, true }; cfg::_enum<output_scaling_mode> output_scaling{ this, "Output Scaling Mode", output_scaling_mode::bilinear, true };
cfg::_bool record_with_overlays{ this, "Record With Overlays", true, true }; cfg::_bool record_with_overlays{ this, "Record With Overlays", true, true };
cfg::_bool use_hardware_texel_remapping{ this, "Use Hardware Texel Remapping", true, false }; cfg::_bool disable_hardware_texel_remapping{ this, "Disable Hardware ColorSpace Remapping", false, true };
struct node_vk : cfg::node struct node_vk : cfg::node
{ {
+2
View File
@@ -108,6 +108,7 @@ enum class emu_settings_type
DisableAsyncHostMM, DisableAsyncHostMM,
UseReBAR, UseReBAR,
RecordWithOverlays, RecordWithOverlays,
DisableHWTexelRemapping,
// Performance Overlay // Performance Overlay
PerfOverlayEnabled, PerfOverlayEnabled,
@@ -312,6 +313,7 @@ inline static const std::map<emu_settings_type, cfg_location> settings_location
{ emu_settings_type::ForceHwMSAAResolve, { "Video", "Force Hardware MSAA Resolve"}}, { emu_settings_type::ForceHwMSAAResolve, { "Video", "Force Hardware MSAA Resolve"}},
{ emu_settings_type::DisableAsyncHostMM, { "Video", "Disable Asynchronous Memory Manager"}}, { emu_settings_type::DisableAsyncHostMM, { "Video", "Disable Asynchronous Memory Manager"}},
{ emu_settings_type::RecordWithOverlays, { "Video", "Record With Overlays"}}, { emu_settings_type::RecordWithOverlays, { "Video", "Record With Overlays"}},
{ emu_settings_type::DisableHWTexelRemapping, { "Video", "Disable Hardware ColorSpace Remapping"}},
// Vulkan // Vulkan
{ emu_settings_type::VulkanAsyncTextureUploads, { "Video", "Vulkan", "Asynchronous Texture Streaming 2"}}, { emu_settings_type::VulkanAsyncTextureUploads, { "Video", "Vulkan", "Asynchronous Texture Streaming 2"}},
+3
View File
@@ -1555,6 +1555,9 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> gui_settings, std
m_emu_settings->EnhanceCheckBox(ui->enableSpuEventsBusyLoop, emu_settings_type::EnabledSPUEventsBusyLoop); m_emu_settings->EnhanceCheckBox(ui->enableSpuEventsBusyLoop, emu_settings_type::EnabledSPUEventsBusyLoop);
SubscribeTooltip(ui->enableSpuEventsBusyLoop, tooltips.settings.enable_spu_events_busy_loop); SubscribeTooltip(ui->enableSpuEventsBusyLoop, tooltips.settings.enable_spu_events_busy_loop);
m_emu_settings->EnhanceCheckBox(ui->disableHardwareTexelRemapping, emu_settings_type::DisableHWTexelRemapping);
SubscribeTooltip(ui->disableHardwareTexelRemapping, tooltips.settings.disable_hw_texel_remapping);
// Comboboxes // Comboboxes
m_emu_settings->EnhanceComboBox(ui->maxSPURSThreads, emu_settings_type::MaxSPURSThreads, true); m_emu_settings->EnhanceComboBox(ui->maxSPURSThreads, emu_settings_type::MaxSPURSThreads, true);
+7
View File
@@ -4316,6 +4316,13 @@
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QCheckBox" name="disableHardwareTexelRemapping">
<property name="text">
<string>Disable Hardware ColorSpace Remapping</string>
</property>
</widget>
</item>
<item> <item>
<spacer name="verticalSpacerDebugGPU"> <spacer name="verticalSpacerDebugGPU">
<property name="orientation"> <property name="orientation">
+1
View File
@@ -127,6 +127,7 @@ public:
const QString accurate_ppu_128_loop = tr("When enabled, PPU atomic operations will operate on entire cache line data, as opposed to a single 64bit block of memory when disabled.\nNumerical values control whether or not to enable the accurate version based on the atomic operation's length."); const QString accurate_ppu_128_loop = tr("When enabled, PPU atomic operations will operate on entire cache line data, as opposed to a single 64bit block of memory when disabled.\nNumerical values control whether or not to enable the accurate version based on the atomic operation's length.");
const QString enable_performance_report = tr("Measure certain events and print a chart after the emulator is stopped. Don't enable if not asked to."); const QString enable_performance_report = tr("Measure certain events and print a chart after the emulator is stopped. Don't enable if not asked to.");
const QString num_ppu_threads = tr("Affects maximum amount of PPU threads running concurrently, the value of 1 has very low compatibility with games.\n2 is the default, if unsure do not modify this setting."); const QString num_ppu_threads = tr("Affects maximum amount of PPU threads running concurrently, the value of 1 has very low compatibility with games.\n2 is the default, if unsure do not modify this setting.");
const QString disable_hw_texel_remapping = tr("Disables use of hardware-native color-space remapping formats such as _sRGB and _SNORM suffixes.\nDisabling this option increases accuracy compared to PS3 but can also introduce some noise due to how the software emulation works.");
// emulator // emulator