for normal rendering, if we're translucent, don't use alphatesting. (as a remindernote, the shadowmathook removes MFT_IsTranslucent])

This commit is contained in:
AzaezelX 2020-03-01 11:51:50 -06:00
parent ff4b025c2c
commit f956c17f3b
2 changed files with 6 additions and 4 deletions

View file

@ -2496,9 +2496,10 @@ void AlphaTestGLSL::processPix( Vector<ShaderComponent*> &componentList,
{
// If we're below SM3 and don't have a depth output
// feature then don't waste an instruction here.
if ( GFX->getPixelShaderVersion() < 3.0 &&
if (( GFX->getPixelShaderVersion() < 3.0 &&
!fd.features[ MFT_EyeSpaceDepthOut ] &&
!fd.features[ MFT_DepthOut ] )
!fd.features[ MFT_DepthOut ] ) ||
fd.features[MFT_IsTranslucent])
{
output = NULL;
return;

View file

@ -2565,9 +2565,10 @@ void AlphaTestHLSL::processPix( Vector<ShaderComponent*> &componentList,
{
// If we're below SM3 and don't have a depth output
// feature then don't waste an instruction here.
if ( GFX->getPixelShaderVersion() < 3.0 &&
if (( GFX->getPixelShaderVersion() < 3.0 &&
!fd.features[ MFT_EyeSpaceDepthOut ] &&
!fd.features[ MFT_DepthOut ] )
!fd.features[ MFT_DepthOut ] ) ||
fd.features[MFT_IsTranslucent])
{
output = NULL;
return;