diff options
| author | Jules Blok <jules.blok@gmail.com> | 2014-11-08 16:19:15 +0100 |
|---|---|---|
| committer | Jules Blok <jules.blok@gmail.com> | 2014-11-23 14:27:40 +0100 |
| commit | 0f63186371c4f0bcc784fa8506d18b9514075d29 (patch) | |
| tree | 2470df87ce474d93f6a8503833058b53283a63d9 /Source/Core/VideoCommon | |
| parent | 9994ccb3422b88649eb160bf373d4d29b08a4768 (diff) | |
TextureCache: Add "Mono EFB Depth Copy" stereoscopy option.
Diffstat (limited to 'Source/Core/VideoCommon')
| -rw-r--r-- | Source/Core/VideoCommon/TextureCacheBase.cpp | 4 | ||||
| -rw-r--r-- | Source/Core/VideoCommon/TextureCacheBase.h | 1 | ||||
| -rw-r--r-- | Source/Core/VideoCommon/VideoConfig.cpp | 3 | ||||
| -rw-r--r-- | Source/Core/VideoCommon/VideoConfig.h | 1 |
4 files changed, 8 insertions, 1 deletions
diff --git a/Source/Core/VideoCommon/TextureCacheBase.cpp b/Source/Core/VideoCommon/TextureCacheBase.cpp index e057b379ad..7fa540022d 100644 --- a/Source/Core/VideoCommon/TextureCacheBase.cpp +++ b/Source/Core/VideoCommon/TextureCacheBase.cpp @@ -116,7 +116,8 @@ void TextureCache::OnConfigChanged(VideoConfig& config) g_texture_cache->ClearRenderTargets(); } - if ((config.iStereoMode > 0) != backup_config.s_stereo_3d) + if ((config.iStereoMode > 0) != backup_config.s_stereo_3d || + config.bStereoMonoEFBDepth != backup_config.s_mono_efb_depth) { g_texture_cache->DeleteShaders(); g_texture_cache->CompileShaders(); @@ -133,6 +134,7 @@ void TextureCache::OnConfigChanged(VideoConfig& config) backup_config.s_hires_textures = config.bHiresTextures; backup_config.s_copy_cache_enable = config.bEFBCopyCacheEnable; backup_config.s_stereo_3d = config.iStereoMode > 0; + backup_config.s_mono_efb_depth = config.bStereoMonoEFBDepth; } void TextureCache::Cleanup() diff --git a/Source/Core/VideoCommon/TextureCacheBase.h b/Source/Core/VideoCommon/TextureCacheBase.h index 64bc41f19d..d9cd2b8c16 100644 --- a/Source/Core/VideoCommon/TextureCacheBase.h +++ b/Source/Core/VideoCommon/TextureCacheBase.h @@ -146,6 +146,7 @@ private: bool s_hires_textures; bool s_copy_cache_enable; bool s_stereo_3d; + bool s_mono_efb_depth; } backup_config; }; diff --git a/Source/Core/VideoCommon/VideoConfig.cpp b/Source/Core/VideoCommon/VideoConfig.cpp index d97a5a9377..de2891fa74 100644 --- a/Source/Core/VideoCommon/VideoConfig.cpp +++ b/Source/Core/VideoCommon/VideoConfig.cpp @@ -70,6 +70,7 @@ void VideoConfig::Load(const std::string& ini_file) settings->Get("StereoSeparation", &iStereoSeparation, 50); settings->Get("StereoFocalLength", &iStereoFocalLength, 30); settings->Get("StereoSwapEyes", &bStereoSwapEyes, false); + settings->Get("StereoMonoEFBDepth", &bStereoMonoEFBDepth, false); settings->Get("EnablePixelLighting", &bEnablePixelLighting, 0); settings->Get("FastDepthCalc", &bFastDepthCalc, true); settings->Get("MSAA", &iMultisampleMode, 0); @@ -145,6 +146,7 @@ void VideoConfig::GameIniLoad() CHECK_SETTING("Video_Settings", "StereoSeparation", iStereoSeparation); CHECK_SETTING("Video_Settings", "StereoFocalLength", iStereoFocalLength); CHECK_SETTING("Video_Settings", "StereoSwapEyes", bStereoSwapEyes); + CHECK_SETTING("Video_Settings", "StereoMonoEFBDepth", bStereoMonoEFBDepth); CHECK_SETTING("Video_Settings", "EnablePixelLighting", bEnablePixelLighting); CHECK_SETTING("Video_Settings", "FastDepthCalc", bFastDepthCalc); CHECK_SETTING("Video_Settings", "MSAA", iMultisampleMode); @@ -237,6 +239,7 @@ void VideoConfig::Save(const std::string& ini_file) settings->Set("StereoSeparation", iStereoSeparation); settings->Set("StereoFocalLength", iStereoFocalLength); settings->Set("StereoSwapEyes", bStereoSwapEyes); + settings->Set("StereoMonoEFBDepth", bStereoMonoEFBDepth); settings->Set("EnablePixelLighting", bEnablePixelLighting); settings->Set("FastDepthCalc", bFastDepthCalc); settings->Set("ShowEFBCopyRegions", bShowEFBCopyRegions); diff --git a/Source/Core/VideoCommon/VideoConfig.h b/Source/Core/VideoCommon/VideoConfig.h index 994264e58e..9d926a879b 100644 --- a/Source/Core/VideoCommon/VideoConfig.h +++ b/Source/Core/VideoCommon/VideoConfig.h @@ -83,6 +83,7 @@ struct VideoConfig final int iStereoSeparation; int iStereoFocalLength; bool bStereoSwapEyes; + bool bStereoMonoEFBDepth; // Information bool bShowFPS; |
