]> git.lizzy.rs Git - irrlicht.git/commitdiff
Enable GL_ALPHA_TEST in OpenGL driver for custom transparent alpha shaders
authorparadust7 <102263465+paradust7@users.noreply.github.com>
Wed, 4 May 2022 02:06:15 +0000 (02:06 +0000)
committersfan5 <sfan5@live.de>
Wed, 4 May 2022 15:35:31 +0000 (17:35 +0200)
source/Irrlicht/COpenGLSLMaterialRenderer.cpp

index 062674f2a9d61b10d0d197e4dea8f60ba0cc6a9d..352c2bce52b9a500e4773814f886bf172e5f6716 100644 (file)
@@ -243,6 +243,8 @@ void COpenGLSLMaterialRenderer::OnSetMaterial(const video::SMaterial& material,
        {\r
                cacheHandler->setBlend(true);\r
                cacheHandler->setBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\r
+               cacheHandler->setAlphaTest(true);\r
+               cacheHandler->setAlphaFunc(GL_GREATER, 0.f);\r
        }\r
        else if (FixedBlending)\r
        {\r
@@ -291,7 +293,7 @@ void COpenGLSLMaterialRenderer::OnUnsetMaterial()
        {\r
                cacheHandler->setBlend(false);\r
        }\r
-       else if (AlphaTest)\r
+       if (Alpha || AlphaTest)\r
        {\r
                cacheHandler->setAlphaTest(false);\r
        }\r