DX11: Add an option to choose the internal resolution.

DX9: When clearing the back buffer in Renderer::Swap(), use IDirect3DDevice9::Clear instead of a clear quad if possible. Should improve performance marginally.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6373 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
NeoBrainX 2010-11-10 16:43:27 +00:00
parent a4d06f4b71
commit 38d06e76d6
7 changed files with 115 additions and 53 deletions

View file

@ -182,11 +182,12 @@ void FramebufferManager::copyToVirtualXFB(u32 xfbAddr, u32 fbWidth, u32 fbHeight
if (it == m_virtualXFBList.end() && (int)m_virtualXFBList.size() >= MAX_VIRTUAL_XFB)
{
// Replace the last virtual XFB (might cause glitches, but better than allocating 50 XFBs...)
// TODO: Reencode last virtual XFB to RAM to avoid glitches?
--it;
}
float scaleX = Renderer::GetTargetScaleX();
float scaleY = Renderer::GetTargetScaleY();
float scaleX = Renderer::GetXFBScaleX();
float scaleY = Renderer::GetXFBScaleY();
TargetRectangle targetSource,efbSource;
efbSource = Renderer::ConvertEFBRectangle(sourceRc);
targetSource.top = (int)(sourceRc.top * scaleY);