From 0b159ef78175ab5ff1429aada0abc0c9dd232ea4 Mon Sep 17 00:00:00 2001
From: RunitaiLinden <davep@lindenlab.com>
Date: Mon, 25 Mar 2024 15:40:43 -0500
Subject: [PATCH] 
 https://github.com/secondlife/jira-archive-internal/issues/71091 Fix for
 divide by zero when alpha masking a PBR material with 0 alpha. (#1044)

---
 indra/newview/llfetchedgltfmaterial.cpp | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/indra/newview/llfetchedgltfmaterial.cpp b/indra/newview/llfetchedgltfmaterial.cpp
index 97b959e5cbb..1ca7ffaec1c 100644
--- a/indra/newview/llfetchedgltfmaterial.cpp
+++ b/indra/newview/llfetchedgltfmaterial.cpp
@@ -76,7 +76,14 @@ void LLFetchedGLTFMaterial::bind(LLViewerTexture* media_tex)
         {
             // dividing the alpha cutoff by transparency here allows the shader to compare against
             // the alpha value of the texture without needing the transparency value
-            min_alpha = mAlphaCutoff/mBaseColor.mV[3];
+            if (mBaseColor.mV[3] > 0.f)
+            {
+                min_alpha = mAlphaCutoff / mBaseColor.mV[3];
+            }
+            else
+            {
+                min_alpha = 1024.f;
+            }
         }
         shader->uniform1f(LLShaderMgr::MINIMUM_ALPHA, min_alpha);
     }
-- 
GitLab