diff options
| author | magumagu <magumagu9@gmail.com> | 2014-05-14 13:27:00 -0700 |
|---|---|---|
| committer | magumagu <magumagu9@gmail.com> | 2014-05-16 12:19:35 -0700 |
| commit | 8b82cea704fca9728c5f50a2506f58a9c5948deb (patch) | |
| tree | 8e7f093672fbb7691920cbedfd5bbbf33d63b3c6 /Source/Core/VideoBackends/Software/Tev.cpp | |
| parent | fee6efc4dc9e51328810c3f6542c9c91f52dbf6c (diff) | |
Video backends: fix behavior of "konst" TEV inputs.
Also fixes TEVCOLORARG_HALF.
Values verified to match hardwarere.
Diffstat (limited to 'Source/Core/VideoBackends/Software/Tev.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/Software/Tev.cpp | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/Source/Core/VideoBackends/Software/Tev.cpp b/Source/Core/VideoBackends/Software/Tev.cpp index 9e6191c315..98f82dea9e 100644 --- a/Source/Core/VideoBackends/Software/Tev.cpp +++ b/Source/Core/VideoBackends/Software/Tev.cpp @@ -23,10 +23,10 @@ void Tev::Init() { FixedConstants[0] = 0; - FixedConstants[1] = 31; - FixedConstants[2] = 63; - FixedConstants[3] = 95; - FixedConstants[4] = 127; + FixedConstants[1] = 32; + FixedConstants[2] = 64; + FixedConstants[3] = 96; + FixedConstants[4] = 128; FixedConstants[5] = 159; FixedConstants[6] = 191; FixedConstants[7] = 223; @@ -74,10 +74,20 @@ void Tev::Init() m_KonstLUT[6][comp] = &FixedConstants[2]; m_KonstLUT[7][comp] = &FixedConstants[1]; - m_KonstLUT[12][comp] = &KonstantColors[0][comp]; - m_KonstLUT[13][comp] = &KonstantColors[1][comp]; - m_KonstLUT[14][comp] = &KonstantColors[2][comp]; - m_KonstLUT[15][comp] = &KonstantColors[3][comp]; + // These are "invalid" values, not meant to be used. On hardware, + // they all output zero. + for (int i = 8; i < 16; ++i) + { + m_KonstLUT[i][comp] = &FixedConstants[0]; + } + + if (comp != ALP_C) + { + m_KonstLUT[12][comp] = &KonstantColors[0][comp]; + m_KonstLUT[13][comp] = &KonstantColors[1][comp]; + m_KonstLUT[14][comp] = &KonstantColors[2][comp]; + m_KonstLUT[15][comp] = &KonstantColors[3][comp]; + } m_KonstLUT[16][comp] = &KonstantColors[0][RED_C]; m_KonstLUT[17][comp] = &KonstantColors[1][RED_C]; |
