Round IR scale down to whole number if using 1.5x/2.5x IR, if game ini specifies -1 for EFBScale.

Fixes issue 6210.
This commit is contained in:
Rachel Bryk
2013-04-05 17:13:48 -04:00
parent 3e8ba3f3e8
commit e531970052
24 changed files with 43 additions and 24 deletions

View File

@ -137,7 +137,26 @@ void VideoConfig::GameIniLoad(const char *ini_file)
iniFile.GetIfExists("Video_Settings", "EnablePixelLighting", &bEnablePixelLighting);
iniFile.GetIfExists("Video_Settings", "HackedBufferUpload", &bHackedBufferUpload);
iniFile.GetIfExists("Video_Settings", "MSAA", &iMultisampleMode);
iniFile.GetIfExists("Video_Settings", "EFBScale", &iEFBScale); // integral
int tmp = 0;
iniFile.GetIfExists("Video_Settings", "EFBScale", &tmp); // integral
if (tmp != -1)
iEFBScale = tmp;
// Round down to multiple of native IR
else
{
switch (iEFBScale)
{
case 3: // 1.5x
iEFBScale = 2;
break;
case 5: // 2.5x
iEFBScale = 4;
break;
default:
break;
}
}
iniFile.GetIfExists("Video_Settings", "DstAlphaPass", &bDstAlphaPass);
iniFile.GetIfExists("Video_Settings", "DisableFog", &bDisableFog);
iniFile.GetIfExists("Video_Settings", "EnableOpenCL", &bEnableOpenCL);