Merge pull request #7208 from Techjar/mipmap-invalidate

Make arbitrary mipmap detection toggle invalidate the texture cache
This commit is contained in:
spycrab 2018-07-04 01:26:49 +02:00 committed by GitHub
commit 713d55f284
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 7 deletions

View File

@ -349,12 +349,12 @@ void EnhancementsWidget::AddDescriptions()
"some games as \"deflickering\" or \"smoothing\". Disabling the filter has no "
"effect on performance, but may result in a sharper image, and causes few "
"graphical issues.\n\nIf unsure, leave this checked.");
static const char TR_ARBITRARY_MIPMAP_DETECTION_DESCRIPTION[] =
QT_TR_NOOP("Enables detection of arbitrary mipmaps, which some games use for special "
"distance-based effects.\nMay have false positives that result in blurry textures "
"at increased internal resolution, such as in games that use very low resolution "
"mipmaps.\nDisabling this can also reduce stutter in games that "
"frequently load new textures.\n\nIf unsure, leave this checked.");
static const char TR_ARBITRARY_MIPMAP_DETECTION_DESCRIPTION[] = QT_TR_NOOP(
"Enables detection of arbitrary mipmaps, which some games use for special distance-based "
"effects. May have false positives that result in blurry textures at increased internal "
"resolution, such as in games that use very low resolution mipmaps.\nDisabling this can also "
"reduce stutter in games that frequently load new textures.\nThis feature is not compatible "
"with GPU Texture Decoding.\n\nIf unsure, leave this checked.");
AddDescription(m_ir_combo, TR_INTERNAL_RESOLUTION_DESCRIPTION);
AddDescription(m_aa_combo, TR_ANTIALIAS_DESCRIPTION);

View File

@ -126,7 +126,8 @@ void TextureCacheBase::OnConfigChanged(VideoConfig& config)
config.bTexFmtOverlayCenter != backup_config.texfmt_overlay_center ||
config.bHiresTextures != backup_config.hires_textures ||
config.bEnableGPUTextureDecoding != backup_config.gpu_texture_decoding ||
config.bDisableCopyToVRAM != backup_config.disable_vram_copies)
config.bDisableCopyToVRAM != backup_config.disable_vram_copies ||
config.bArbitraryMipmapDetection != backup_config.arbitrary_mipmap_detection)
{
Invalidate();
@ -230,6 +231,7 @@ void TextureCacheBase::SetBackupConfig(const VideoConfig& config)
backup_config.efb_mono_depth = config.bStereoEFBMonoDepth;
backup_config.gpu_texture_decoding = config.bEnableGPUTextureDecoding;
backup_config.disable_vram_copies = config.bDisableCopyToVRAM;
backup_config.arbitrary_mipmap_detection = config.bArbitraryMipmapDetection;
}
TextureCacheBase::TCacheEntry*

View File

@ -357,6 +357,7 @@ private:
bool efb_mono_depth;
bool gpu_texture_decoding;
bool disable_vram_copies;
bool arbitrary_mipmap_detection;
};
BackupConfig backup_config = {};
};