summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authordegasus <wickmarkus@web.de>2016-03-06 11:03:45 +0100
committerdegasus <wickmarkus@web.de>2016-03-06 11:05:49 +0100
commitab44d2ec5c2e95221dd9f152bb80c63ae4345142 (patch)
tree52a5e8f629d68dc100bfe078888959c49920342e /Source/Core
parent7a154181b4f020d16f9c851bb115eb29b4c6757a (diff)
VideoSW: Drop SetTevReg for colors.
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/VideoBackends/Software/Rasterizer.cpp4
-rw-r--r--Source/Core/VideoBackends/Software/Rasterizer.h2
-rw-r--r--Source/Core/VideoBackends/Software/SWVertexLoader.cpp12
-rw-r--r--Source/Core/VideoBackends/Software/Tev.cpp21
-rw-r--r--Source/Core/VideoBackends/Software/Tev.h2
5 files changed, 20 insertions, 21 deletions
diff --git a/Source/Core/VideoBackends/Software/Rasterizer.cpp b/Source/Core/VideoBackends/Software/Rasterizer.cpp
index 4020d4b646..5e835ba91a 100644
--- a/Source/Core/VideoBackends/Software/Rasterizer.cpp
+++ b/Source/Core/VideoBackends/Software/Rasterizer.cpp
@@ -64,9 +64,9 @@ static inline int iround(float x)
return t;
}
-void SetTevReg(int reg, int comp, bool konst, s16 color)
+void SetTevReg(int reg, int comp, s16 color)
{
- tev.SetRegColor(reg, comp, konst, color);
+ tev.SetRegColor(reg, comp, color);
}
static void Draw(s32 x, s32 y, s32 xi, s32 yi)
diff --git a/Source/Core/VideoBackends/Software/Rasterizer.h b/Source/Core/VideoBackends/Software/Rasterizer.h
index ab6da546ed..747d72b58b 100644
--- a/Source/Core/VideoBackends/Software/Rasterizer.h
+++ b/Source/Core/VideoBackends/Software/Rasterizer.h
@@ -14,7 +14,7 @@ namespace Rasterizer
void DrawTriangleFrontFace(OutputVertexData *v0, OutputVertexData *v1, OutputVertexData *v2);
- void SetTevReg(int reg, int comp, bool konst, s16 color);
+ void SetTevReg(int reg, int comp, s16 color);
struct Slope
{
diff --git a/Source/Core/VideoBackends/Software/SWVertexLoader.cpp b/Source/Core/VideoBackends/Software/SWVertexLoader.cpp
index 2509bdcbd4..9ab6e1c51b 100644
--- a/Source/Core/VideoBackends/Software/SWVertexLoader.cpp
+++ b/Source/Core/VideoBackends/Software/SWVertexLoader.cpp
@@ -81,14 +81,10 @@ void SWVertexLoader::vFlush(bool useDstAlpha)
// set all states with are stored within video sw
for (int i = 0; i < 4; i++)
{
- Rasterizer::SetTevReg(i, Tev::RED_C, false, PixelShaderManager::constants.colors[i][0]);
- Rasterizer::SetTevReg(i, Tev::GRN_C, false, PixelShaderManager::constants.colors[i][1]);
- Rasterizer::SetTevReg(i, Tev::BLU_C, false, PixelShaderManager::constants.colors[i][2]);
- Rasterizer::SetTevReg(i, Tev::ALP_C, false, PixelShaderManager::constants.colors[i][3]);
- Rasterizer::SetTevReg(i, Tev::RED_C, true, PixelShaderManager::constants.kcolors[i][0]);
- Rasterizer::SetTevReg(i, Tev::GRN_C, true, PixelShaderManager::constants.kcolors[i][1]);
- Rasterizer::SetTevReg(i, Tev::BLU_C, true, PixelShaderManager::constants.kcolors[i][2]);
- Rasterizer::SetTevReg(i, Tev::ALP_C, true, PixelShaderManager::constants.kcolors[i][3]);
+ Rasterizer::SetTevReg(i, Tev::RED_C, PixelShaderManager::constants.kcolors[i][0]);
+ Rasterizer::SetTevReg(i, Tev::GRN_C, PixelShaderManager::constants.kcolors[i][1]);
+ Rasterizer::SetTevReg(i, Tev::BLU_C, PixelShaderManager::constants.kcolors[i][2]);
+ Rasterizer::SetTevReg(i, Tev::ALP_C, PixelShaderManager::constants.kcolors[i][3]);
}
for (u32 i = 0; i < IndexGenerator::GetIndexLen(); i++)
diff --git a/Source/Core/VideoBackends/Software/Tev.cpp b/Source/Core/VideoBackends/Software/Tev.cpp
index 5c7535bdb1..b8c02187d4 100644
--- a/Source/Core/VideoBackends/Software/Tev.cpp
+++ b/Source/Core/VideoBackends/Software/Tev.cpp
@@ -13,6 +13,7 @@
#include "VideoCommon/BoundingBox.h"
#include "VideoCommon/PerfQueryBase.h"
+#include "VideoCommon/PixelShaderManager.h"
#include "VideoCommon/Statistics.h"
#include "VideoCommon/VideoConfig.h"
#include "VideoCommon/XFMemory.h"
@@ -513,6 +514,15 @@ void Tev::Draw()
INCSTAT(stats.thisFrame.tevPixelsIn);
+ // initial color values
+ for (int i = 0; i < 4; i++)
+ {
+ Reg[i][RED_C] = PixelShaderManager::constants.colors[i][0];
+ Reg[i][GRN_C] = PixelShaderManager::constants.colors[i][1];
+ Reg[i][BLU_C] = PixelShaderManager::constants.colors[i][2];
+ Reg[i][ALP_C] = PixelShaderManager::constants.colors[i][3];
+ }
+
for (unsigned int stageNum = 0; stageNum < bpmem.genMode.numindstages; stageNum++)
{
int stageNum2 = stageNum >> 1;
@@ -800,15 +810,8 @@ void Tev::Draw()
EfbInterface::BlendTev(Position[0], Position[1], output);
}
-void Tev::SetRegColor(int reg, int comp, bool konst, s16 color)
+void Tev::SetRegColor(int reg, int comp, s16 color)
{
- if (konst)
- {
- KonstantColors[reg][comp] = color;
- }
- else
- {
- Reg[reg][comp] = color;
- }
+ KonstantColors[reg][comp] = color;
}
diff --git a/Source/Core/VideoBackends/Software/Tev.h b/Source/Core/VideoBackends/Software/Tev.h
index 64e195555b..84b94886a7 100644
--- a/Source/Core/VideoBackends/Software/Tev.h
+++ b/Source/Core/VideoBackends/Software/Tev.h
@@ -87,5 +87,5 @@ public:
void Draw();
- void SetRegColor(int reg, int comp, bool konst, s16 color);
+ void SetRegColor(int reg, int comp, s16 color);
};