From ea6f6e8368189b3a695159072ec9d08f83f672e2 Mon Sep 17 00:00:00 2001
From: Rye Mutt <rye@alchemyviewer.org>
Date: Wed, 25 Dec 2024 15:35:52 -0500
Subject: [PATCH] Fix FXAA init failure in GL 3.1

---
 indra/llrender/llshadermgr.cpp                  | 17 ++++++-----------
 .../shaders/class1/deferred/fxaaF.glsl          | 12 ++++++------
 2 files changed, 12 insertions(+), 17 deletions(-)

diff --git a/indra/llrender/llshadermgr.cpp b/indra/llrender/llshadermgr.cpp
index a6a30cebb96..9399a961b5c 100644
--- a/indra/llrender/llshadermgr.cpp
+++ b/indra/llrender/llshadermgr.cpp
@@ -557,17 +557,11 @@ GLuint LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shader_lev
         }
         else if (major_version == 3)
         {
-            if (minor_version < 10)
+            if (minor_version <= 29)
             {
-                shader_code_text[shader_code_count++] = strdup("#version 300\n");
-            }
-            else if (minor_version <= 19)
-            {
-                shader_code_text[shader_code_count++] = strdup("#version 310\n");
-            }
-            else if (minor_version <= 29)
-            {
-                shader_code_text[shader_code_count++] = strdup("#version 320\n");
+                // OpenGL 3.2 had GLSL version 1.50.  anything after that the version numbers match.
+                // https://www.khronos.org/opengl/wiki/Core_Language_(GLSL)#OpenGL_and_GLSL_versions
+                shader_code_text[shader_code_count++] = strdup("#version 150\n");
             }
             else
             {
@@ -576,7 +570,8 @@ GLuint LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shader_lev
         }
         else
         {
-            if (type == GL_GEOMETRY_SHADER)
+            // OpenGL 3.2 had GLSL version 1.50.  anything after that the version numbers match.
+            if (type == GL_GEOMETRY_SHADER || minor_version >= 50)
             {
                 //set version to 1.50
                 shader_code_text[shader_code_count++] = strdup("#version 150\n");
diff --git a/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl b/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl
index 1e20c55a647..c616900a962 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl
@@ -350,12 +350,12 @@ A. Or use FXAA_GREEN_AS_LUMA.
         #define FXAA_GATHER4_ALPHA 1
     #endif
     #ifndef FXAA_GATHER4_ALPHA
-        #ifdef GL_ARB_gpu_shader5
-            #define FXAA_GATHER4_ALPHA 1
-        #endif
-        #ifdef GL_NV_gpu_shader5
-            #define FXAA_GATHER4_ALPHA 1
-        #endif
+//        #ifdef GL_ARB_gpu_shader5
+//            #define FXAA_GATHER4_ALPHA 1
+//        #endif
+//        #ifdef GL_NV_gpu_shader5
+//            #define FXAA_GATHER4_ALPHA 1
+//        #endif
         #ifndef FXAA_GATHER4_ALPHA
             #define FXAA_GATHER4_ALPHA 0
         #endif
-- 
GitLab