Fix issue where alpha_mode_none and alpha_mode_emissive on rigged faces were being alpha tested and discarded.
This commit is contained in:
@@ -982,6 +982,5 @@ void LLGLSLShader::vertexAttrib4f(U32 index, GLfloat x, GLfloat y, GLfloat z, GL
|
||||
|
||||
void LLGLSLShader::setMinimumAlpha(F32 minimum)
|
||||
{
|
||||
gGL.flush();
|
||||
uniform1f(LLShaderMgr::MINIMUM_ALPHA, minimum);
|
||||
}
|
||||
|
||||
@@ -1666,6 +1666,10 @@ void LLDrawPoolAvatar::renderRigged(LLVOAvatar* avatar, U32 type, bool glow)
|
||||
{
|
||||
sVertexProgram->setMinimumAlpha(mat->getAlphaMaskCutoff()/255.f);
|
||||
}
|
||||
else if (mat->getDiffuseAlphaMode() == LLMaterial::DIFFUSE_ALPHA_MODE_NONE || mat->getDiffuseAlphaMode() == LLMaterial::DIFFUSE_ALPHA_MODE_EMISSIVE)
|
||||
{
|
||||
sVertexProgram->setMinimumAlpha(0.f);
|
||||
}
|
||||
else
|
||||
{
|
||||
sVertexProgram->setMinimumAlpha(0.004f);
|
||||
@@ -1690,6 +1694,10 @@ void LLDrawPoolAvatar::renderRigged(LLVOAvatar* avatar, U32 type, bool glow)
|
||||
{
|
||||
sVertexProgram->setMinimumAlpha(mat->getAlphaMaskCutoff()/255.f);
|
||||
}
|
||||
else if (mat && (mat->getDiffuseAlphaMode() == LLMaterial::DIFFUSE_ALPHA_MODE_NONE || mat->getDiffuseAlphaMode() == LLMaterial::DIFFUSE_ALPHA_MODE_EMISSIVE))
|
||||
{
|
||||
sVertexProgram->setMinimumAlpha(0.f);
|
||||
}
|
||||
else
|
||||
{
|
||||
sVertexProgram->setMinimumAlpha(0.004f);
|
||||
|
||||
Reference in New Issue
Block a user