diff options
| author | iwubcode <iwubcode@users.noreply.github.com> | 2020-05-04 23:07:06 -0500 |
|---|---|---|
| committer | iwubcode <iwubcode@users.noreply.github.com> | 2020-07-22 19:30:27 -0500 |
| commit | 9c8338ec4cf6f76b123d95adbbfb48bd468ee7df (patch) | |
| tree | 501f89f28fe89c24c2d6054afb569fedf0fc88dd /Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp | |
| parent | d7a91316da54267aca6f6569d30aec9c28a01bf4 (diff) | |
DolphinQt / VideoCommon: Add additional texture dumping options. Specifically, this enables users to choose whether to dump mip maps, base level textures, or both.
Diffstat (limited to 'Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp')
| -rw-r--r-- | Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp | 42 |
1 files changed, 36 insertions, 6 deletions
diff --git a/Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp b/Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp index 47a8f16c0d..05ddd8406f 100644 --- a/Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp +++ b/Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp @@ -65,7 +65,6 @@ void AdvancedWidget::CreateWidgets() auto* utility_layout = new QGridLayout(); utility_box->setLayout(utility_layout); - m_dump_textures = new GraphicsBool(tr("Dump Textures"), Config::GFX_DUMP_TEXTURES); m_load_custom_textures = new GraphicsBool(tr("Load Custom Textures"), Config::GFX_HIRES_TEXTURES); m_prefetch_custom_textures = new GraphicsBool(tr("Prefetch Custom Textures"), Config::GFX_CACHE_HIRES_TEXTURES); @@ -77,9 +76,8 @@ void AdvancedWidget::CreateWidgets() utility_layout->addWidget(m_prefetch_custom_textures, 0, 1); utility_layout->addWidget(m_disable_vram_copies, 1, 0); - utility_layout->addWidget(m_dump_textures, 1, 1); - utility_layout->addWidget(m_dump_efb_target, 2, 0); + utility_layout->addWidget(m_dump_efb_target, 1, 1); // Freelook auto* freelook_box = new QGroupBox(tr("Free Look")); @@ -94,6 +92,19 @@ void AdvancedWidget::CreateWidgets() freelook_layout->addWidget(new QLabel(tr("Control Type:")), 1, 0); freelook_layout->addWidget(m_freelook_control_type, 1, 1); + // Texture dumping + auto* texture_dump_box = new QGroupBox(tr("Texture Dumping")); + auto* texture_dump_layout = new QGridLayout(); + texture_dump_box->setLayout(texture_dump_layout); + m_dump_textures = new GraphicsBool(tr("Enable"), Config::GFX_DUMP_TEXTURES); + m_dump_base_textures = new GraphicsBool(tr("Dump Base Textures"), Config::GFX_DUMP_BASE_TEXTURES); + m_dump_mip_textures = new GraphicsBool(tr("Dump Mip Maps"), Config::GFX_DUMP_MIP_TEXTURES); + + texture_dump_layout->addWidget(m_dump_textures, 0, 0); + + texture_dump_layout->addWidget(m_dump_base_textures, 1, 0); + texture_dump_layout->addWidget(m_dump_mip_textures, 1, 1); + // Frame dumping auto* dump_box = new QGroupBox(tr("Frame Dumping")); auto* dump_layout = new QGridLayout(); @@ -144,6 +155,7 @@ void AdvancedWidget::CreateWidgets() main_layout->addWidget(debugging_box); main_layout->addWidget(utility_box); main_layout->addWidget(freelook_box); + main_layout->addWidget(texture_dump_box); main_layout->addWidget(dump_box); main_layout->addWidget(misc_box); main_layout->addWidget(experimental_box); @@ -158,6 +170,7 @@ void AdvancedWidget::ConnectWidgets() connect(m_dump_use_ffv1, &QCheckBox::toggled, this, &AdvancedWidget::SaveSettings); connect(m_enable_prog_scan, &QCheckBox::toggled, this, &AdvancedWidget::SaveSettings); connect(m_enable_freelook, &QCheckBox::toggled, this, &AdvancedWidget::SaveSettings); + connect(m_dump_textures, &QCheckBox::toggled, this, &AdvancedWidget::SaveSettings); } void AdvancedWidget::LoadSettings() @@ -168,6 +181,8 @@ void AdvancedWidget::LoadSettings() m_enable_prog_scan->setChecked(Config::Get(Config::SYSCONF_PROGRESSIVE_SCAN)); m_freelook_control_type->setEnabled(Config::Get(Config::GFX_FREE_LOOK)); + m_dump_mip_textures->setEnabled(Config::Get(Config::GFX_DUMP_TEXTURES)); + m_dump_base_textures->setEnabled(Config::Get(Config::GFX_DUMP_TEXTURES)); } void AdvancedWidget::SaveSettings() @@ -178,6 +193,8 @@ void AdvancedWidget::SaveSettings() Config::SetBase(Config::SYSCONF_PROGRESSIVE_SCAN, m_enable_prog_scan->isChecked()); m_freelook_control_type->setEnabled(Config::Get(Config::GFX_FREE_LOOK)); + m_dump_mip_textures->setEnabled(Config::Get(Config::GFX_DUMP_TEXTURES)); + m_dump_base_textures->setEnabled(Config::Get(Config::GFX_DUMP_TEXTURES)); } void AdvancedWidget::OnBackendChanged() @@ -201,9 +218,20 @@ void AdvancedWidget::AddDescriptions() static const char TR_VALIDATION_LAYER_DESCRIPTION[] = QT_TR_NOOP("Enables validation of API calls made by the video backend, which may assist in " "debugging graphical issues.\n\nIf unsure, leave this unchecked."); - static const char TR_DUMP_TEXTURE_DESCRIPTION[] = QT_TR_NOOP( - "Dumps decoded game textures to User/Dump/Textures/<game_id>/.\n\nIf unsure, leave " - "this unchecked."); + static const char TR_DUMP_TEXTURE_DESCRIPTION[] = + QT_TR_NOOP("Dumps decoded game textures based on the other flags to " + "User/Dump/Textures/<game_id>/.\n\nIf unsure, leave " + "this unchecked."); + static const char TR_DUMP_MIP_TEXTURE_DESCRIPTION[] = QT_TR_NOOP( + "Whether to dump mipmapped game textures to " + "User/Dump/Textures/<game_id>/. This includes arbitrary mipmapped textures if 'Arbitrary " + "Mipmap Detection' is enabled in Enhancements.\n\nIf unsure, leave " + "this checked."); + static const char TR_DUMP_BASE_TEXTURE_DESCRIPTION[] = QT_TR_NOOP( + "Whether to dump base game textures to " + "User/Dump/Textures/<game_id>/. This includes arbitrary base textures if 'Arbitrary " + "Mipmap Detection' is enabled in Enhancements.\n\nIf unsure, leave " + "this checked."); static const char TR_LOAD_CUSTOM_TEXTURE_DESCRIPTION[] = QT_TR_NOOP( "Loads custom textures from User/Load/Textures/<game_id>/.\n\nIf unsure, leave this " "unchecked."); @@ -268,6 +296,8 @@ void AdvancedWidget::AddDescriptions() AddDescription(m_enable_format_overlay, TR_TEXTURE_FORMAT_DESCRIPTION); AddDescription(m_enable_api_validation, TR_VALIDATION_LAYER_DESCRIPTION); AddDescription(m_dump_textures, TR_DUMP_TEXTURE_DESCRIPTION); + AddDescription(m_dump_mip_textures, TR_DUMP_MIP_TEXTURE_DESCRIPTION); + AddDescription(m_dump_base_textures, TR_DUMP_BASE_TEXTURE_DESCRIPTION); AddDescription(m_load_custom_textures, TR_LOAD_CUSTOM_TEXTURE_DESCRIPTION); AddDescription(m_prefetch_custom_textures, TR_CACHE_CUSTOM_TEXTURE_DESCRIPTION); AddDescription(m_dump_efb_target, TR_DUMP_EFB_DESCRIPTION); |
