mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-31 21:28:51 +00:00
some fixes to dx11, now efb access should work well (smg pulling stars)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5698 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
67283e54fc
commit
6c164cd161
3 changed files with 38 additions and 7 deletions
|
@ -509,8 +509,11 @@ void Renderer::RenderToXFB(u32 xfbAddr, u32 fbWidth, u32 fbHeight, const EFBRect
|
|||
|
||||
// XXX: Without the VI, how would we know what kind of field this is? So
|
||||
// just use progressive.
|
||||
Renderer::Swap(xfbAddr, FIELD_PROGRESSIVE, fbWidth, fbHeight);
|
||||
Common::AtomicStoreRelease(s_swapRequested, FALSE);
|
||||
if (!g_ActiveConfig.bUseXFB)
|
||||
{
|
||||
Renderer::Swap(xfbAddr, FIELD_PROGRESSIVE, fbWidth, fbHeight);
|
||||
Common::AtomicStoreRelease(s_swapRequested, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
bool Renderer::SetScissorRect()
|
||||
|
@ -654,7 +657,7 @@ u32 Renderer::AccessEFB(EFBAccessType type, int x, int y)
|
|||
|
||||
switch(type) {
|
||||
case PEEK_Z:
|
||||
val = ((float*)map.pData)[6];
|
||||
val = ((float*)map.pData)[0];
|
||||
z = ((u32)(val * 0xffffff));
|
||||
break;
|
||||
|
||||
|
@ -803,7 +806,7 @@ void Renderer::SetBlendMode(bool forceUpdate)
|
|||
|
||||
void Renderer::Swap(u32 xfbAddr, FieldType field, u32 fbWidth, u32 fbHeight)
|
||||
{
|
||||
if (g_bSkipCurrentFrame || !XFBWrited || !fbWidth || !fbHeight)
|
||||
if (g_bSkipCurrentFrame || (!XFBWrited && !g_ActiveConfig.bUseRealXFB) || !fbWidth || !fbHeight)
|
||||
{
|
||||
g_VideoInitialize.pCopiedToXFB(false);
|
||||
return;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue