From 6534014f6e3901fccc4caa30b3b80606f80f34bb Mon Sep 17 00:00:00 2001 From: Kitty Barnett <develop@catznip.com> Date: Mon, 15 Feb 2021 20:19:50 +0100 Subject: [PATCH] AMD shader compile error + just have anyone with older drivers/hardware load the explicit one for now --- .../app_settings/shaders/class1/deferred/rlvF.glsl | 2 +- .../class1/deferred/{rlvFMac.glsl => rlvFLegacy.glsl} | 0 indra/newview/llviewershadermgr.cpp | 9 ++++----- 3 files changed, 5 insertions(+), 6 deletions(-) rename indra/newview/app_settings/shaders/class1/deferred/{rlvFMac.glsl => rlvFLegacy.glsl} (100%) diff --git a/indra/newview/app_settings/shaders/class1/deferred/rlvF.glsl b/indra/newview/app_settings/shaders/class1/deferred/rlvF.glsl index 8661ffe923c..4875523fb25 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/rlvF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/rlvF.glsl @@ -147,7 +147,7 @@ void main() break; case 2: // Blur (variable) fragColor = texture2DRect(diffuseRect, fragTC).rgb; - fragColor = mix(fragColor, blurVariable(diffuseRect, fragTC, SPHERE_PARAMS.x, BLUR_DIRECTION, effectStrength), effectStrength > 0); + fragColor = mix(fragColor, blurVariable(diffuseRect, fragTC, SPHERE_PARAMS.x, BLUR_DIRECTION, effectStrength), int(effectStrength > 0)); break; case 3: // ChromaticAberration fragColor = chromaticAberration(diffuseRect, fragTC, SPHERE_PARAMS.xy, SPHERE_PARAMS.zw, effectStrength); diff --git a/indra/newview/app_settings/shaders/class1/deferred/rlvFMac.glsl b/indra/newview/app_settings/shaders/class1/deferred/rlvFLegacy.glsl similarity index 100% rename from indra/newview/app_settings/shaders/class1/deferred/rlvFMac.glsl rename to indra/newview/app_settings/shaders/class1/deferred/rlvFLegacy.glsl diff --git a/indra/newview/llviewershadermgr.cpp b/indra/newview/llviewershadermgr.cpp index c0e03ec4664..479b3cdda60 100644 --- a/indra/newview/llviewershadermgr.cpp +++ b/indra/newview/llviewershadermgr.cpp @@ -4144,11 +4144,10 @@ BOOL LLViewerShaderMgr::loadShadersWindLight() gRlvSphereProgram.mName = "RLVa Sphere Post Processing Shader"; gRlvSphereProgram.mShaderFiles.clear(); gRlvSphereProgram.mShaderFiles.push_back(make_pair("deferred/rlvV.glsl", GL_VERTEX_SHADER_ARB)); -#ifndef LL_DARWIN - gRlvSphereProgram.mShaderFiles.push_back(make_pair("deferred/rlvF.glsl", GL_FRAGMENT_SHADER_ARB)); -#else - gRlvSphereProgram.mShaderFiles.push_back(make_pair("deferred/rlvFMac.glsl", GL_FRAGMENT_SHADER_ARB)); -#endif + if (gGLManager.mGLVersion >= 4.5f) + gRlvSphereProgram.mShaderFiles.push_back(make_pair("deferred/rlvF.glsl", GL_FRAGMENT_SHADER_ARB)); + else + gRlvSphereProgram.mShaderFiles.push_back(make_pair("deferred/rlvFLegacy.glsl", GL_FRAGMENT_SHADER_ARB)); gRlvSphereProgram.mShaderLevel = mShaderLevel[SHADER_WINDLIGHT]; success = gRlvSphereProgram.createShader(NULL, NULL); } -- GitLab