VideoCommon: revert the ViewPort changes
xfregs isn't written when calling this function, so we have to use such an invalid flag :-(
This commit is contained in:
parent
4dc1881f58
commit
6798a4763e
|
@ -12,6 +12,7 @@
|
||||||
|
|
||||||
#include "RenderBase.h"
|
#include "RenderBase.h"
|
||||||
static bool s_bFogRangeAdjustChanged;
|
static bool s_bFogRangeAdjustChanged;
|
||||||
|
static bool s_bViewPortChanged;
|
||||||
static int nLightsChanged[2]; // min,max
|
static int nLightsChanged[2]; // min,max
|
||||||
|
|
||||||
PixelShaderConstants PixelShaderManager::constants;
|
PixelShaderConstants PixelShaderManager::constants;
|
||||||
|
@ -26,6 +27,7 @@ void PixelShaderManager::Init()
|
||||||
void PixelShaderManager::Dirty()
|
void PixelShaderManager::Dirty()
|
||||||
{
|
{
|
||||||
s_bFogRangeAdjustChanged = true;
|
s_bFogRangeAdjustChanged = true;
|
||||||
|
s_bViewPortChanged = true;
|
||||||
nLightsChanged[0] = 0; nLightsChanged[1] = 0x80;
|
nLightsChanged[0] = 0; nLightsChanged[1] = 0x80;
|
||||||
|
|
||||||
SetColorChanged(0, 0);
|
SetColorChanged(0, 0);
|
||||||
|
@ -133,6 +135,13 @@ void PixelShaderManager::SetConstants(u32 components)
|
||||||
nLightsChanged[0] = nLightsChanged[1] = -1;
|
nLightsChanged[0] = nLightsChanged[1] = -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(s_bViewPortChanged)
|
||||||
|
{
|
||||||
|
constants.zbias[1][0] = xfregs.viewport.farZ / 16777216.0f;
|
||||||
|
constants.zbias[1][1] = xfregs.viewport.zRange / 16777216.0f;
|
||||||
|
dirty = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// This one is high in profiles (0.5%).
|
// This one is high in profiles (0.5%).
|
||||||
|
@ -183,10 +192,7 @@ void PixelShaderManager::SetZTextureBias()
|
||||||
|
|
||||||
void PixelShaderManager::SetViewportChanged()
|
void PixelShaderManager::SetViewportChanged()
|
||||||
{
|
{
|
||||||
constants.zbias[1][0] = xfregs.viewport.farZ / 16777216.0f;
|
s_bViewPortChanged = true;
|
||||||
constants.zbias[1][1] = xfregs.viewport.zRange / 16777216.0f;
|
|
||||||
dirty = true;
|
|
||||||
|
|
||||||
s_bFogRangeAdjustChanged = true; // TODO: Shouldn't be necessary with an accurate fog range adjust implementation
|
s_bFogRangeAdjustChanged = true; // TODO: Shouldn't be necessary with an accurate fog range adjust implementation
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue