summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorNeoBrainX <NeoBrainX@gmail.com>2013-03-15 15:05:48 +0100
committerNeoBrainX <NeoBrainX@gmail.com>2013-03-15 15:08:51 +0100
commite877b5019b391e9ca7b720efa683a5ef2cb8a203 (patch)
tree0a83ae88a9c3e67a4062512909a921aa44eb42c4 /Source
parentdef578fea6ff47892c4fa45532c7437686d5ea65 (diff)
PixelShaderManager: Reload fog range adjustment shader constants upon viewport change.
Fixes issue 5618.
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/VideoCommon/Src/BPMemory.h4
-rw-r--r--Source/Core/VideoCommon/Src/PixelShaderManager.cpp1
2 files changed, 3 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/Src/BPMemory.h b/Source/Core/VideoCommon/Src/BPMemory.h
index 0ee00f911e..4a97f04960 100644
--- a/Source/Core/VideoCommon/Src/BPMemory.h
+++ b/Source/Core/VideoCommon/Src/BPMemory.h
@@ -93,7 +93,7 @@
#define BPMEM_TEV_ALPHA_ENV 0xC1 // 0xC1 + (2 * 16)
#define BPMEM_TEV_REGISTER_L 0xE0 // 0xE0 + (2 * 4)
#define BPMEM_TEV_REGISTER_H 0xE1 // 0xE1 + (2 * 4)
-#define BPMEM_FOGRANGE 0xE8
+#define BPMEM_FOGRANGE 0xE8 // 0xE8 + 6
#define BPMEM_FOGPARAM0 0xEE
#define BPMEM_FOGBMAGNITUDE 0xEF
#define BPMEM_FOGBEXPONENT 0xF0
@@ -988,7 +988,7 @@ struct BPMemory
FourTexUnits tex[2]; //80-bf
TevStageCombiner combiners[16]; //0xC0-0xDF
TevReg tevregs[4]; //0xE0
- FogRangeParams fogRange;
+ FogRangeParams fogRange; // 0xE8
FogParams fog; //0xEE,0xEF,0xF0,0xF1,0xF2
AlphaTest alpha_test; //0xF3
ZTex1 ztex1; //0xf4,0xf5
diff --git a/Source/Core/VideoCommon/Src/PixelShaderManager.cpp b/Source/Core/VideoCommon/Src/PixelShaderManager.cpp
index eaaf99fbc8..0405c998ba 100644
--- a/Source/Core/VideoCommon/Src/PixelShaderManager.cpp
+++ b/Source/Core/VideoCommon/Src/PixelShaderManager.cpp
@@ -413,6 +413,7 @@ void PixelShaderManager::SetZTextureBias(u32 bias)
void PixelShaderManager::SetViewportChanged()
{
s_bDepthRangeChanged = true;
+ s_bFogRangeAdjustChanged = true; // TODO: Shouldn't be necessary with an accurate fog range adjust implementation
}
void PixelShaderManager::SetIndTexScaleChanged(u8 stagemask)