diff options
| -rw-r--r-- | indra/llcommon/llprofiler.h | 2 | ||||
| -rw-r--r-- | indra/llrender/llvertexbuffer.cpp | 30 | ||||
| -rw-r--r-- | indra/newview/featuretable.txt | 5 | 
3 files changed, 21 insertions, 16 deletions
diff --git a/indra/llcommon/llprofiler.h b/indra/llcommon/llprofiler.h index c03b2e93f4..394fbd05f6 100644 --- a/indra/llcommon/llprofiler.h +++ b/indra/llcommon/llprofiler.h @@ -87,7 +87,7 @@ extern thread_local bool gProfilerEnabled;          #include "Tracy.hpp"          // Enable OpenGL profiling -        #define LL_PROFILER_ENABLE_TRACY_OPENGL 1 +        #define LL_PROFILER_ENABLE_TRACY_OPENGL 0          // Enable RenderDoc labeling          #define LL_PROFILER_ENABLE_RENDER_DOC 0 diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp index 028db79566..40ab4a2e0f 100644 --- a/indra/llrender/llvertexbuffer.cpp +++ b/indra/llrender/llvertexbuffer.cpp @@ -262,27 +262,29 @@ static GLuint gen_buffer()      LL_PROFILE_ZONE_SCOPED_CATEGORY_VERTEX;      GLuint ret = 0; -    if (!gGLManager.mIsAMD) -    { -        constexpr U32 pool_size = 4096; +    constexpr U32 pool_size = 4096; -        thread_local static GLuint sNamePool[pool_size]; -        thread_local static U32 sIndex = 0; +    thread_local static GLuint sNamePool[pool_size]; +    thread_local static U32 sIndex = 0; -        if (sIndex == 0) +    if (sIndex == 0) +    { +        LL_PROFILE_ZONE_NAMED_CATEGORY_VERTEX("gen buffer"); +        sIndex = pool_size; +        if (!gGLManager.mIsAMD)          { -            LL_PROFILE_ZONE_NAMED_CATEGORY_VERTEX("gen buffer"); -            sIndex = pool_size;              glGenBuffers(pool_size, sNamePool);          } - -        ret = sNamePool[--sIndex]; -    } -    else -    { -        glGenBuffers(1, &ret); +        else +        { // work around for AMD driver bug +            for (U32 i = 0; i < pool_size; ++i) +            { +                glGenBuffers(1, sNamePool + i); +            } +        }      } +    ret = sNamePool[--sIndex];      return ret;  } diff --git a/indra/newview/featuretable.txt b/indra/newview/featuretable.txt index cf0968dfd2..2821b63391 100644 --- a/indra/newview/featuretable.txt +++ b/indra/newview/featuretable.txt @@ -1,4 +1,4 @@ -version 45 +version 46  // The version number above should be incremented IF AND ONLY IF some  // change has been made that is sufficiently important to justify  // resetting the graphics preferences of all users to the recommended @@ -291,6 +291,9 @@ RenderAnisotropic			1	0  RenderFSAASamples			1	0  RenderGLContextCoreProfile  1   0 +list AMD +RenderGLMultiThreaded       1   1 +  list GL3  RenderFSAASamples           0   0  RenderReflectionsEnabled    0   0  | 
