From 013a7130011f72ab0c124dba87376b9862a95461 Mon Sep 17 00:00:00 2001 From: Howard Stearns Date: Fri, 2 Sep 2022 15:44:19 -0700 Subject: SL-17967 - slightly more meaningful ogl error reporting --- indra/newview/llfeaturemanager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llfeaturemanager.cpp') diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index e934041e2e..826d4892ef 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -607,7 +607,7 @@ void LLFeatureManager::applyFeatures(bool skipFeatures) void LLFeatureManager::setGraphicsLevel(U32 level, bool skipFeatures) { LLViewerShaderMgr::sSkipReload = true; - + flush_glerror(); // Whatever may have already happened (e.g., to cause us to change), don't let confuse it with new initializations. applyBaseMasks(); // if we're passed an invalid level, default to "Low" -- cgit v1.2.3 From 8dc59e5ef37836b15d478fb0d04e3043a9f986de Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Fri, 16 Sep 2022 16:25:26 -0500 Subject: SL-18128 Clear out much OpenGL cruft and switch to core profile on AMD --- indra/newview/llfeaturemanager.cpp | 38 +------------------------------------- 1 file changed, 1 insertion(+), 37 deletions(-) (limited to 'indra/newview/llfeaturemanager.cpp') diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index 826d4892ef..2c770f6ab8 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -431,41 +431,9 @@ bool LLFeatureManager::loadGPUClass() LL_WARNS("RenderInit") << "Unable to get an accurate benchmark; defaulting to class 3" << LL_ENDL; mGPUClass = GPU_CLASS_3; #else - if (gGLManager.mGLVersion <= 2.f) - { - mGPUClass = GPU_CLASS_0; - } - else if (gGLManager.mGLVersion <= 3.f) - { - mGPUClass = GPU_CLASS_1; - } - else if (gGLManager.mGLVersion < 3.3f) - { - mGPUClass = GPU_CLASS_2; - } - else if (gGLManager.mGLVersion < 4.f) - { - mGPUClass = GPU_CLASS_3; - } - else - { - mGPUClass = GPU_CLASS_4; - } - if (gGLManager.mIsIntel && mGPUClass > GPU_CLASS_1) - { - // Intels are generally weaker then other GPUs despite having advanced features - mGPUClass = (EGPUClass)(mGPUClass - 1); - } + mGPUClass = GPU_CLASS_2; #endif } - else if (gGLManager.mGLVersion <= 2.f) - { - mGPUClass = GPU_CLASS_0; - } - else if (gGLManager.mGLVersion <= 3.f) - { - mGPUClass = GPU_CLASS_1; - } else if (gbps <= 5.f) { mGPUClass = GPU_CLASS_0; @@ -679,10 +647,6 @@ void LLFeatureManager::applyBaseMasks() { maskFeatures("TexUnit8orLess"); } - if (gGLManager.mHasMapBufferRange) - { - maskFeatures("MapBufferRange"); - } if (gGLManager.mVRAM > 512) { maskFeatures("VRAMGT512"); -- cgit v1.2.3 From e5d463ca200bdfa93b8c65e588d490c2f23e3918 Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Thu, 22 Sep 2022 17:27:18 -0500 Subject: SL-17705 Backwards compatibility pass. Support OpenGL pre-4.0 by disabling reflection probes and anti-aliasing. Get render parity with current release viewer when reflection probes are disabled. --- indra/newview/llfeaturemanager.cpp | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'indra/newview/llfeaturemanager.cpp') diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index 2c770f6ab8..5817fdbfa0 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -651,14 +651,10 @@ void LLFeatureManager::applyBaseMasks() { maskFeatures("VRAMGT512"); } - -#if LL_DARWIN - const LLOSInfo& osInfo = LLOSInfo::instance(); - if (osInfo.mMajorVer == 10 && osInfo.mMinorVer < 7) - { - maskFeatures("OSX_10_6_8"); - } -#endif + if (gGLManager.mGLVersion < 3.99f) + { + maskFeatures("GL3"); + } // now mask by gpu string // Replaces ' ' with '_' in mGPUString to deal with inability for parser to handle spaces -- cgit v1.2.3 From 10b8dcc497599042655dcc4037c9ae98d494bd6f Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Mon, 30 Jan 2023 18:56:19 -0600 Subject: SL-19015 Bump probe resolution back to 256 by default (drop to 128 if vram < 2GB), remove irradiance map feedback loop (one bounce, but but more stable and allows for much brighter first bounce), make sky contribution to irradiance not tint the world blue. Make irradiance that appears in radiance maps match world irradiance. --- indra/newview/llfeaturemanager.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'indra/newview/llfeaturemanager.cpp') diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index 5817fdbfa0..3b1bee05af 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -651,6 +651,10 @@ void LLFeatureManager::applyBaseMasks() { maskFeatures("VRAMGT512"); } + if (gGLManager.mVRAM < 2048) + { + maskFeatures("VRAMLT2GB"); + } if (gGLManager.mGLVersion < 3.99f) { maskFeatures("GL3"); -- cgit v1.2.3 From d5e558fffc0722398a9b4c2df681f2a6ce247b7f Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Tue, 28 Feb 2023 08:49:15 -0600 Subject: SL-19277 Fix for fallback probe sometimes getting occluded and making void water dark after teleport. Never default to having reflections off. --- indra/newview/llfeaturemanager.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'indra/newview/llfeaturemanager.cpp') diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index 3b1bee05af..81a7aa47c8 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -425,18 +425,14 @@ bool LLFeatureManager::loadGPUClass() } if (gbps < 0.f) - { //couldn't bench, use GLVersion + { //couldn't bench, default to Low #if LL_DARWIN //GLVersion is misleading on OSX, just default to class 3 if we can't bench LL_WARNS("RenderInit") << "Unable to get an accurate benchmark; defaulting to class 3" << LL_ENDL; mGPUClass = GPU_CLASS_3; #else - mGPUClass = GPU_CLASS_2; - #endif - } - else if (gbps <= 5.f) - { mGPUClass = GPU_CLASS_0; + #endif } else if (gbps <= 8.f) { -- cgit v1.2.3 From 6c554c9c92a0150fdf5a177bf33269eac8341d02 Mon Sep 17 00:00:00 2001 From: "Jonathan \"Geenz\" Goodman" Date: Mon, 27 Mar 2023 15:06:25 -0700 Subject: Fix up the graphics setting detection SL-18563 --- indra/newview/llfeaturemanager.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'indra/newview/llfeaturemanager.cpp') diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index 81a7aa47c8..0974ae0742 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -434,19 +434,19 @@ bool LLFeatureManager::loadGPUClass() mGPUClass = GPU_CLASS_0; #endif } - else if (gbps <= 8.f) + else if (gbps <= 32.0f) { mGPUClass = GPU_CLASS_1; } - else if (gbps <= 16.f) + else if (gbps <= 64.0f) { mGPUClass = GPU_CLASS_2; } - else if (gbps <= 40.f) + else if (gbps <= 128.0f) { mGPUClass = GPU_CLASS_3; } - else if (gbps <= 80.f) + else if (gbps <= 256.0f) { mGPUClass = GPU_CLASS_4; } -- cgit v1.2.3 From 513ac361b13b081a13f1f6dde1c0c34c4eb41b3a Mon Sep 17 00:00:00 2001 From: Brad Linden Date: Wed, 26 Apr 2023 17:32:19 -0700 Subject: Got things to compile again after DRTVWR-559 & DRTVWR-539 merge. removing dead code and references to members that don't exist anymore --- indra/newview/llfeaturemanager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llfeaturemanager.cpp') diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index c5d64b87b9..3d941b5547 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -408,7 +408,7 @@ bool LLFeatureManager::loadGPUClass() { if (!gSavedSettings.getBOOL("SkipBenchmark")) { - F32 class0_gbps = gSavedSettings.getF32("RenderClass0MemoryBandwidth"); // TODO merge brad - figure out what to do with this setting and the below gbps constant comparisons + //F32 class0_gbps = gSavedSettings.getF32("RenderClass0MemoryBandwidth"); // TODO merge brad - figure out what to do with this setting and the below gbps constant comparisons //get memory bandwidth from benchmark F32 gbps; try -- cgit v1.2.3 From dc813181a51ad2c22264e93a3c235cbf796b24ed Mon Sep 17 00:00:00 2001 From: Brad Linden Date: Thu, 27 Apr 2023 12:25:50 -0700 Subject: More post-merge fixes after DRTVWR-559 & DRTVWR-539 merge --- indra/newview/llfeaturemanager.cpp | 1 - 1 file changed, 1 deletion(-) (limited to 'indra/newview/llfeaturemanager.cpp') diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index 3d941b5547..b8143eb545 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -408,7 +408,6 @@ bool LLFeatureManager::loadGPUClass() { if (!gSavedSettings.getBOOL("SkipBenchmark")) { - //F32 class0_gbps = gSavedSettings.getF32("RenderClass0MemoryBandwidth"); // TODO merge brad - figure out what to do with this setting and the below gbps constant comparisons //get memory bandwidth from benchmark F32 gbps; try -- cgit v1.2.3 From 97c6bf8f743ef4956d7d706e26f25ce6f32182b4 Mon Sep 17 00:00:00 2001 From: Brad Linden Date: Thu, 27 Apr 2023 18:04:49 -0700 Subject: Readded RenderClass1MemoryBandwidth setting after DRTVWR-559 & DRTVWR-539 merge Has to use class1 now since class0 shouldn't ever be in use on end-user systems anymore. --- indra/newview/llfeaturemanager.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'indra/newview/llfeaturemanager.cpp') diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index b8143eb545..a2aae91ae1 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -408,6 +408,7 @@ bool LLFeatureManager::loadGPUClass() { if (!gSavedSettings.getBOOL("SkipBenchmark")) { + F32 class1_gbps = gSavedSettings.getF32("RenderClass1MemoryBandwidth"); //get memory bandwidth from benchmark F32 gbps; try @@ -442,19 +443,19 @@ bool LLFeatureManager::loadGPUClass() mGPUClass = GPU_CLASS_0; #endif } - else if (gbps <= 32.0f) + else if (gbps <= class1_gbps) { mGPUClass = GPU_CLASS_1; } - else if (gbps <= 64.0f) + else if (gbps <= class1_gbps *2.f) { mGPUClass = GPU_CLASS_2; } - else if (gbps <= 128.0f) + else if (gbps <= class1_gbps*4.f) { mGPUClass = GPU_CLASS_3; } - else if (gbps <= 256.0f) + else if (gbps <= class1_gbps*8.f) { mGPUClass = GPU_CLASS_4; } -- cgit v1.2.3