Merge pull request #191 from threethan/efb-options

Fix for previous EFB PR
This commit is contained in:
Tinob 2021-10-13 20:16:16 -03:00 committed by GitHub
commit 166abd51d9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 38 additions and 0 deletions

View file

@ -128,7 +128,15 @@ false };
const ConfigInfo<int> GFX_ENHANCE_MAX_ANISOTROPY{{System::GFX, "Enhancements", "MaxAnisotropy"}, 0};
const ConfigInfo<bool> GFX_ENHANCE_POST_ENABLED{
{System::GFX, "Enhancements", "PostProcessingEnable"}, false};
const ConfigInfo<bool> GFX_POST_EFB_PERSPECTIVE{
{System::GFX, "Enhancements", "PostProcessingEfbMustBePerspective"}, true};
const ConfigInfo<bool> GFX_POST_EFB_ASPECT{
{System::GFX, "Enhancements", "PostProcessingEfbMustBeAspect"}, false};
const ConfigInfo<bool> GFX_POST_EFB_FAILSAFE{
{System::GFX, "Enhancements", "PostProcessingEfbFailsafe"}, true};
const ConfigInfo<int> GFX_ENHANCE_POST_TRIGUER{ { System::GFX, "Enhancements", "PostProcessingTrigger" }, 0 };
const ConfigInfo<int> GFX_ENHANCE_POST_EFB_RESOLUTION_PERCENT_MIN{ {System::GFX, "Enhancements", "PostProcessingEfbMinResolutionPercent"}, 65};
const ConfigInfo<int> GFX_ENHANCE_POST_EFB_INDEX{ {System::GFX, "Enhancements", "PostProcessingEfbIndex"}, 0 };
const ConfigInfo<std::string> GFX_ENHANCE_POST_SHADERS{
{ System::GFX, "Enhancements", "PostProcessingShaders" }, "" };
const ConfigInfo<std::string> GFX_ENHANCE_SCALING_SHADER{
@ -174,6 +182,9 @@ const ConfigInfo<bool> GFX_HACK_FORCE_PROGRESSIVE{{System::GFX, "Hacks", "ForceP
const ConfigInfo<bool> GFX_HACK_SKIP_EFB_COPY_TO_RAM{{System::GFX, "Hacks", "EFBToTextureEnable"},
true};
const ConfigInfo<bool> GFX_HACK_COPY_EFB_SCALED{{System::GFX, "Hacks", "EFBScaledCopy"}, true};
const ConfigInfo<int> GFX_HACK_COPY_EFB_SCALED_EXCLUDE_MIN{{System::GFX, "Hacks", "EFBScaledExcludeMin"},0};
const ConfigInfo<int> GFX_HACK_COPY_EFB_SCALED_EXCLUDE_MAX{{System::GFX, "Hacks", "EFBScaledExcludeMax"},0};
const ConfigInfo<bool> GFX_HACK_EFB_EMULATE_FORMAT_CHANGES{
{System::GFX, "Hacks", "EFBEmulateFormatChanges"}, false};
const ConfigInfo<bool> GFX_HACK_VERTEX_ROUDING{{System::GFX, "Hacks", "VertexRounding"}, false};

View file

@ -99,7 +99,12 @@ extern const ConfigInfo<bool> GFX_PREFER_GLES;
extern const ConfigInfo<int> GFX_ENHANCE_FILTERING_MODE;
extern const ConfigInfo<int> GFX_ENHANCE_MAX_ANISOTROPY; // NOTE - this is x in (1 << x)
extern const ConfigInfo<bool> GFX_ENHANCE_POST_ENABLED;
extern const ConfigInfo<bool> GFX_POST_EFB_PERSPECTIVE;
extern const ConfigInfo<bool> GFX_POST_EFB_ASPECT;
extern const ConfigInfo<bool> GFX_POST_EFB_FAILSAFE;
extern const ConfigInfo<int> GFX_ENHANCE_POST_TRIGUER;
extern const ConfigInfo<int> GFX_ENHANCE_POST_EFB_RESOLUTION_PERCENT_MIN;
extern const ConfigInfo<int> GFX_ENHANCE_POST_EFB_INDEX;
extern const ConfigInfo<std::string> GFX_ENHANCE_POST_SHADERS;
extern const ConfigInfo<std::string> GFX_ENHANCE_SCALING_SHADER;
extern const ConfigInfo<bool> GFX_ENHANCE_FORCE_TRUE_COLOR;
@ -134,6 +139,8 @@ extern const ConfigInfo<int> GFX_HACK_BBOX_MODE;
extern const ConfigInfo<bool> GFX_HACK_FORCE_PROGRESSIVE;
extern const ConfigInfo<bool> GFX_HACK_SKIP_EFB_COPY_TO_RAM;
extern const ConfigInfo<bool> GFX_HACK_COPY_EFB_SCALED;
extern const ConfigInfo<int> GFX_HACK_COPY_EFB_SCALED_EXCLUDE_MIN;
extern const ConfigInfo<int> GFX_HACK_COPY_EFB_SCALED_EXCLUDE_MAX;
extern const ConfigInfo<bool> GFX_HACK_EFB_EMULATE_FORMAT_CHANGES;
extern const ConfigInfo<bool> GFX_HACK_VERTEX_ROUDING;
extern const ConfigInfo<bool> GFX_HACK_FORCE_DUAL_SOURCE;

View file

@ -101,6 +101,10 @@ bool IsSettingSaveable(const Config::ConfigLocation& config_location)
Config::GFX_ENHANCE_FILTERING_MODE.location,
Config::GFX_ENHANCE_MAX_ANISOTROPY.location,
Config::GFX_ENHANCE_POST_ENABLED.location,
Config::GFX_POST_EFB_PERSPECTIVE.location,
Config::GFX_POST_EFB_ASPECT.location,
Config::GFX_POST_EFB_FAILSAFE.location,
Config::GFX_ENHANCE_POST_EFB_INDEX.location,
Config::GFX_ENHANCE_POST_TRIGUER.location,
Config::GFX_ENHANCE_POST_SHADERS.location,
Config::GFX_ENHANCE_SCALING_SHADER.location,
@ -135,6 +139,8 @@ bool IsSettingSaveable(const Config::ConfigLocation& config_location)
Config::GFX_HACK_FORCE_PROGRESSIVE.location,
Config::GFX_HACK_SKIP_EFB_COPY_TO_RAM.location,
Config::GFX_HACK_COPY_EFB_SCALED.location,
Config::GFX_HACK_COPY_EFB_SCALED_EXCLUDE_MIN.location,
Config::GFX_HACK_COPY_EFB_SCALED_EXCLUDE_MAX.location,
Config::GFX_HACK_EFB_EMULATE_FORMAT_CHANGES.location,
Config::GFX_HACK_VERTEX_ROUDING.location,
Config::GFX_HACK_FORCE_DUAL_SOURCE.location,

View file

@ -161,7 +161,12 @@ void VideoConfig::Refresh()
iMaxAnisotropy = Config::Get(Config::GFX_ENHANCE_MAX_ANISOTROPY);
bPostProcessingEnable = Config::Get(Config::GFX_ENHANCE_POST_ENABLED);
bPostProcessingEfbMustBePerspective = Config::Get(Config::GFX_POST_EFB_PERSPECTIVE);
bPostProcessingEfbMustBeAspect = Config::Get(Config::GFX_POST_EFB_ASPECT);
bPostProcessingEfbFailsafe = Config::Get(Config::GFX_POST_EFB_FAILSAFE);
iPostProcessingTrigger = Config::Get(Config::GFX_ENHANCE_POST_TRIGUER);
iPostProcessingEfbMinResolutionPercent = Config::Get(Config::GFX_ENHANCE_POST_EFB_RESOLUTION_PERCENT_MIN);
iPostProcessingEfbIndex = Config::Get(Config::GFX_ENHANCE_POST_EFB_INDEX);
sPostProcessingShaders = Config::Get(Config::GFX_ENHANCE_POST_SHADERS);
sScalingShader = Config::Get(Config::GFX_ENHANCE_SCALING_SHADER);
bForceTrueColor = Config::Get(Config::GFX_ENHANCE_FORCE_TRUE_COLOR);
@ -194,6 +199,8 @@ void VideoConfig::Refresh()
bForceProgressive = Config::Get(Config::GFX_HACK_FORCE_PROGRESSIVE);
bSkipEFBCopyToRam = Config::Get(Config::GFX_HACK_SKIP_EFB_COPY_TO_RAM);
bCopyEFBScaled = Config::Get(Config::GFX_HACK_COPY_EFB_SCALED);
iEFBScaledExcludeMin = Config::Get(Config::GFX_HACK_COPY_EFB_SCALED_EXCLUDE_MIN);
iEFBScaledExcludeMax = Config::Get(Config::GFX_HACK_COPY_EFB_SCALED_EXCLUDE_MAX);
bEFBEmulateFormatChanges = Config::Get(Config::GFX_HACK_EFB_EMULATE_FORMAT_CHANGES);
bVertexRounding = Config::Get(Config::GFX_HACK_VERTEX_ROUDING);

View file

@ -131,6 +131,11 @@ struct VideoConfig final
int iMaxAnisotropy;
bool bPostProcessingEnable;
int iPostProcessingTrigger;
bool bPostProcessingEfbMustBePerspective;
bool bPostProcessingEfbMustBeAspect;
bool bPostProcessingEfbFailsafe;
int iPostProcessingEfbMinResolutionPercent;
int iPostProcessingEfbIndex;
std::string sPostProcessingShaders;
std::string sScalingShader;
std::string sStereoShader;
@ -193,6 +198,8 @@ struct VideoConfig final
bool bEFBEmulateFormatChanges;
bool bSkipEFBCopyToRam;
bool bCopyEFBScaled;
int iEFBScaledExcludeMin;
int iEFBScaledExcludeMax;
int iSafeTextureCache_ColorSamples;
ProjectionHackConfig phack;
float fAspectRatioHackW, fAspectRatioHackH;