mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 14:19:46 -06:00
TextureCache: Add "Mono EFB Depth Copy" stereoscopy option.
This commit is contained in:
@ -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()
|
||||
|
@ -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;
|
||||
};
|
||||
|
||||
|
@ -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);
|
||||
|
@ -83,6 +83,7 @@ struct VideoConfig final
|
||||
int iStereoSeparation;
|
||||
int iStereoFocalLength;
|
||||
bool bStereoSwapEyes;
|
||||
bool bStereoMonoEFBDepth;
|
||||
|
||||
// Information
|
||||
bool bShowFPS;
|
||||
|
Reference in New Issue
Block a user