Handle material alphatest gt0

This commit is contained in:
Jan 2022-08-06 18:59:13 +02:00
parent c010355d4a
commit f3b175ab08
2 changed files with 5 additions and 3 deletions

View File

@ -412,6 +412,8 @@ namespace IW4
SetAlphaTest(AlphaTest_e::ALWAYS); SetAlphaTest(AlphaTest_e::ALWAYS);
else if (alphaTest == GDT_ALPHA_TEST_GE128) else if (alphaTest == GDT_ALPHA_TEST_GE128)
SetAlphaTest(AlphaTest_e::GE128); SetAlphaTest(AlphaTest_e::GE128);
else if (alphaTest == GDT_ALPHA_TEST_GT0) // TODO: This is not available for IW3
SetAlphaTest(AlphaTest_e::GT0);
else else
{ {
std::ostringstream ss; std::ostringstream ss;

View File

@ -1033,11 +1033,11 @@ namespace IW4
{ {
if (stateBits.loadBits[0] & GFXS0_ATEST_DISABLE) if (stateBits.loadBits[0] & GFXS0_ATEST_DISABLE)
m_state_bits_info.m_alpha_test = AlphaTest_e::ALWAYS; m_state_bits_info.m_alpha_test = AlphaTest_e::ALWAYS;
else if (stateBits.loadBits[0] & GFXS0_ATEST_GE_128) else if ((stateBits.loadBits[0] & GFXS0_ATEST_MASK) == GFXS0_ATEST_GE_128)
m_state_bits_info.m_alpha_test = AlphaTest_e::GE128; m_state_bits_info.m_alpha_test = AlphaTest_e::GE128;
else if (stateBits.loadBits[0] & GFXS0_ATEST_GT_0) else if ((stateBits.loadBits[0] & GFXS0_ATEST_MASK) == GFXS0_ATEST_GT_0)
m_state_bits_info.m_alpha_test = AlphaTest_e::GT0; m_state_bits_info.m_alpha_test = AlphaTest_e::GT0;
else if (stateBits.loadBits[0] & GFXS0_ATEST_LT_128) else if ((stateBits.loadBits[0] & GFXS0_ATEST_MASK) == GFXS0_ATEST_LT_128)
m_state_bits_info.m_alpha_test = AlphaTest_e::LT128; m_state_bits_info.m_alpha_test = AlphaTest_e::LT128;
else else
assert(false); assert(false);