summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon
diff options
context:
space:
mode:
authornitsuja- <nitsuja-@hotmail.com>2010-12-20 09:17:21 +0000
committernitsuja- <nitsuja-@hotmail.com>2010-12-20 09:17:21 +0000
commitbb8918a2ca40cbb8ff8fd66f837c5317f1752490 (patch)
treef087fa7ffb640176ed19fdf0d326429e16b75d98 /Source/Core/VideoCommon
parent3749c3e57d8572a486245240c111ce88b9629ef4 (diff)
added/changed some graphics plugin tooltips, added some low-res framebuffer options for getting a speedup (in pixel-shader-limited situations) at the cost of quality but without needing to make the window tiny, and fixed a little crash with closing the dx9 settings window at a bad time
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6624 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/VideoCommon')
-rw-r--r--Source/Core/VideoCommon/Src/RenderBase.cpp30
1 files changed, 27 insertions, 3 deletions
diff --git a/Source/Core/VideoCommon/Src/RenderBase.cpp b/Source/Core/VideoCommon/Src/RenderBase.cpp
index 1237af7c55..5b73fdef6b 100644
--- a/Source/Core/VideoCommon/Src/RenderBase.cpp
+++ b/Source/Core/VideoCommon/Src/RenderBase.cpp
@@ -117,18 +117,33 @@ bool Renderer::CalculateTargetSize(int multiplier)
int newEFBWidth, newEFBHeight;
switch (s_LastEFBScale)
{
- case 0:
+ default:
+ case 0: // fractional
newEFBWidth = (int)(EFB_WIDTH * xScale);
newEFBHeight = (int)(EFB_HEIGHT * yScale);
break;
- case 1:
+ case 1: // integral
newEFBWidth = EFB_WIDTH * (int)ceilf(xScale);
newEFBHeight = EFB_HEIGHT * (int)ceilf(yScale);
break;
- default:
+ case 2: // 1x
+ case 3: // 2x
+ case 4: // 3x
newEFBWidth = EFB_WIDTH * (g_ActiveConfig.iEFBScale - 1);
newEFBHeight = EFB_HEIGHT * (g_ActiveConfig.iEFBScale - 1);
break;
+ case 5: // 0.75x
+ newEFBWidth = (EFB_WIDTH * 3) / 4;
+ newEFBHeight = (EFB_HEIGHT * 3) / 4;
+ break;
+ case 6: // 0.5x
+ newEFBWidth = EFB_WIDTH / 2;
+ newEFBHeight = EFB_HEIGHT / 2;
+ break;
+ case 7: // 0.375x
+ newEFBWidth = (EFB_WIDTH * 3) / 8;
+ newEFBHeight = (EFB_HEIGHT * 3) / 8;
+ break;
};
newEFBWidth *= multiplier;
@@ -182,6 +197,15 @@ void Renderer::DrawDebugText()
case 4:
res_text = "3x";
break;
+ case 5:
+ res_text = "0.75x";
+ break;
+ case 6:
+ res_text = "0.5x";
+ break;
+ case 7:
+ res_text = "0.375x";
+ break;
}
const char* ar_text = "";