VertexManagerBase: Get rid of static behavior

This commit is contained in:
Lioncash
2016-08-21 23:02:37 -04:00
parent f1964f90d6
commit 1392efa91d
8 changed files with 58 additions and 71 deletions

View File

@ -17,7 +17,7 @@
static void XFMemWritten(u32 transferSize, u32 baseAddress)
{
VertexManagerBase::Flush();
g_vertex_manager->Flush();
VertexShaderManager::InvalidateXFRange(baseAddress, baseAddress + transferSize);
}
@ -53,7 +53,7 @@ static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src)
case XFMEM_SETNUMCHAN:
if (xfmem.numChan.numColorChans != (newValue & 3))
VertexManagerBase::Flush();
g_vertex_manager->Flush();
break;
case XFMEM_SETCHAN0_AMBCOLOR: // Channel Ambient Color
@ -62,7 +62,7 @@ static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src)
u8 chan = address - XFMEM_SETCHAN0_AMBCOLOR;
if (xfmem.ambColor[chan] != newValue)
{
VertexManagerBase::Flush();
g_vertex_manager->Flush();
VertexShaderManager::SetMaterialColorChanged(chan);
}
break;
@ -74,7 +74,7 @@ static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src)
u8 chan = address - XFMEM_SETCHAN0_MATCOLOR;
if (xfmem.matColor[chan] != newValue)
{
VertexManagerBase::Flush();
g_vertex_manager->Flush();
VertexShaderManager::SetMaterialColorChanged(chan + 2);
}
break;
@ -85,12 +85,12 @@ static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src)
case XFMEM_SETCHAN0_ALPHA: // Channel Alpha
case XFMEM_SETCHAN1_ALPHA:
if (((u32*)&xfmem)[address] != (newValue & 0x7fff))
VertexManagerBase::Flush();
g_vertex_manager->Flush();
break;
case XFMEM_DUALTEX:
if (xfmem.dualTexTrans.enabled != (newValue & 1))
VertexManagerBase::Flush();
g_vertex_manager->Flush();
break;
case XFMEM_SETMATRIXINDA:
@ -108,7 +108,7 @@ static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src)
case XFMEM_SETVIEWPORT + 3:
case XFMEM_SETVIEWPORT + 4:
case XFMEM_SETVIEWPORT + 5:
VertexManagerBase::Flush();
g_vertex_manager->Flush();
VertexShaderManager::SetViewportChanged();
PixelShaderManager::SetViewportChanged();
GeometryShaderManager::SetViewportChanged();
@ -123,7 +123,7 @@ static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src)
case XFMEM_SETPROJECTION + 4:
case XFMEM_SETPROJECTION + 5:
case XFMEM_SETPROJECTION + 6:
VertexManagerBase::Flush();
g_vertex_manager->Flush();
VertexShaderManager::SetProjectionChanged();
GeometryShaderManager::SetProjectionChanged();
@ -132,7 +132,7 @@ static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src)
case XFMEM_SETNUMTEXGENS: // GXSetNumTexGens
if (xfmem.numTexGen.numTexGens != (newValue & 15))
VertexManagerBase::Flush();
g_vertex_manager->Flush();
break;
case XFMEM_SETTEXMTXINFO:
@ -143,7 +143,7 @@ static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src)
case XFMEM_SETTEXMTXINFO + 5:
case XFMEM_SETTEXMTXINFO + 6:
case XFMEM_SETTEXMTXINFO + 7:
VertexManagerBase::Flush();
g_vertex_manager->Flush();
nextAddress = XFMEM_SETTEXMTXINFO + 8;
break;
@ -156,7 +156,7 @@ static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src)
case XFMEM_SETPOSMTXINFO + 5:
case XFMEM_SETPOSMTXINFO + 6:
case XFMEM_SETPOSMTXINFO + 7:
VertexManagerBase::Flush();
g_vertex_manager->Flush();
nextAddress = XFMEM_SETPOSMTXINFO + 8;
break;