summaryrefslogtreecommitdiff
path: root/indra/llrender
AgeCommit message (Collapse)Author
2021-11-30SL-16386 remove references to (const true) LLGLSLShader::sNoFixedFunctionDave Houlton
2021-11-24DRTVWR-546, SL-16220, SL-16094: Undo previous glthread branch revert.Nat Goodspeed
Reverting a merge is sticky: it tells git you never want to see that branch again. Merging the DRTVWR-546 branch, which contained the revert, into the glthread branch undid much of the development work on that branch. To restore it we must revert the revert. This reverts commit 029b41c0419e975bbb28454538b46dc69ce5d2ba.
2021-11-23SL-16094, SL-16400: Merge branch 'DRTVWR-546' into glthreadNat Goodspeed
2021-11-23SL-16400: Add ThreadPool::start() method, and call it.Nat Goodspeed
It's sometimes important to finish other initialization before launching the threads in the ThreadPool, so make that an explicit step. In particular, we were launching the LLImageGL texture thread before initializing the GL context, resulting in all gray textures.
2021-11-23SL-16239 Fix for slowdown on AMD GPUs (disable core profile and remove ↵Dave Parks
volatile members from LLVertexBuffer)
2021-11-22SL-16400 Fix for grey textures (hack).Runitai Linden
2021-11-22SL-16094 More profile hooks for threading code, remove redundant ↵Runitai Linden
wglCreateContextAttribs call
2021-11-22SL-13565 disable reflection render pass when all non-void water is occludedDave Houlton
2021-11-20SL-16289 Rigged mesh rendering overhaulDave Parks
2021-11-19SL-15391 Crash at getUniformLocationAndrey Kleshchev
2021-11-19SL-15333 Crash in glh_init_extensionsAndrey Kleshchev
2021-11-15Revert "SL-16220: Merge branch 'origin/DRTVWR-546' into glthread"Dave Houlton
This reverts commit 5188a26a8521251dda07ac0140bb129f28417e49, reversing changes made to 819088563e13f1d75e048311fbaf0df4a79b7e19.
2021-11-12SL-16220: Merge branch 'origin/DRTVWR-546' into glthreadNat Goodspeed
2021-11-12SL-15391 Crash at getUniformLocationAndrey Kleshchev
2021-11-12SL-15333 Crash in glh_init_extensionsAndrey Kleshchev
2021-11-05SL-16202: Use WorkQueue::postTo() for texture create/post handshake.Nat Goodspeed
That is, when LLViewerFetchedTexture::scheduleCreateTexture() wants to call createTexture() on the LLImageGLThread, but postCreateTexture() on the main thread, use the "mainloop" WorkQueue to set up the handshake. Give ThreadPool a public virtual run() method so a subclass can override with desired behavior. This necessitates a virtual destructor. Add accessors for embedded WorkQueue (for post calls), ThreadPool name and width (in threads). Allow LLSimpleton::createInstance() to forward arguments to the subject constructor. Make LLImageGLThread an LLSimpleton - that abstraction didn't yet exist at the time LLImageGLThread was coded. Also derive from ThreadPool rather than LLThread. Make it a single-thread "pool" with a very large queue capacity.
2021-11-04SL-16202: Streamline WorkQueues in LLImageGLThread.Nat Goodspeed
Use the new WorkQueue::postIfOpen() method in LLImageGLThread::post(). That makes the LLImageGLThread method a trivial wrapper, which can accept templated work items and pass them through to the WorkQueue method, eliminating double indirection due to multiple layers of std::function. Eliminate LLImageGLThread's WorkQueue intended for work on the main queue. Since the main loop already has a WorkQueue of its own, post work directly to that WorkQueue instead of using a separate WorkQueue misleadingly embedded in LLImageGLThread. Instead of looking up the main thread's WorkQueue every time, capture a pointer in LLImageGL's constructor. We no longer need a fallback queue for when the main thread's WorkQueue is full. We no longer need the main loop to poll LLImageGL to service the local main-thread-targeted WorkQueue, or to copy work from the fallback queue to the main queue. That eliminates LLImageGLThread::postCallback(), mCallbackQueue, mPendingCallbackQ, executeCallbacks() -- and even LLImageGL::updateClass() and LLAppViewer's call to it. Change LLViewerFetchedTexture::scheduleCreateTexture() to post work to the main thread's WorkQueue instead of calling LLImageGLThread::postCallback().
2021-11-01SL-16237 FIXED Viewer hangs on loginMnikolenko Productengine
2021-10-28SL-16148 SL-16244 SL-16270 SL-16253 Remove most BlockTimers, remove ↵Dave Parks
LLMemTracked, introduce alignas, hook most/all reamining allocs, disable synchronous occlusion, and convert frequently accessed LLSingletons to LLSimpleton
2021-10-26SL-16193 Fix for mesh selection outline not rendering correctly (and broken ↵Dave Parks
physics shapes display).
2021-10-25Merged DRTVWR-546 into SL-15999Vir Linden
2021-10-22mergeBrad Payne (Vir Linden)
2021-10-21SL-16202 Fix for textures appearing black or flashing white due to ↵Dave Parks
optimization bugs.
2021-10-19SL-16197 Optimize LLEnvironment handling of shader uniforms. Instrument ↵Dave Parks
LLSD. Enable Fast Timers when Tracy is enabled to catch Fast Timer overhead.
2021-10-14SL-16166 Apply optimizations from pushBatch to other render call sites. ↵Runitai Linden
Optimize out a map lookup in rigged face rendering.
2021-10-13SL-16166 Apply LLRenderPass::pushBatch optimizations to ↵Runitai Linden
LLDrawPoolBump::pushBatch
2021-10-13SL-16166 Don't use setupVertexBuffer where setupVertexBufferFast is called ↵Runitai Linden
for (thank you, Henri!)
2021-10-12SL-16166 Optimization pass on LLRenderPass::pushBatchRunitai Linden
2021-10-11SL-16099 Multi-threaded OpenGL usage on Windows, enable Core Profile and ↵Dave Parks
VAOs by default.
2021-10-11SL-16141 Load fonts and generate glyphs on startupMnikolenko Productengine
2021-10-06SL-16138 remove checks for now-mandatory capabilitiesDave Houlton
2021-10-06SL-16138 Add timing mark-up to shader fxnsDave Houlton
2021-10-05SL-16138 Avoid re-binding a shader which is already boundDave Houlton
2021-09-27SL-16093 Don't force the console window to be open on developer builds ↵Dave Parks
because it causes frame stalls while logging.
2021-09-27SL-16088 Fix for stall from many calls to glGenBuffers.Dave Parks
2021-09-22Merge remote-tracking branch 'remotes/origin/DRTVWR-541' into DRTVWR-546Runitai Linden
# Conflicts: # indra/llcommon/linden_common.h
2021-09-21SL-16027: Only enable Tracy OpengL macros if Tracy is enabledPtolemy
2021-09-21SL-16027: Add Tracy OpenGL supportPtolemy
2021-09-20SL-16006 and SL-16009 Rigged mesh rendering optimization passDave Parks
2021-09-20SL-15999 - track --noninteractive state with gNonInteractive flagBrad Payne (Vir Linden)
2021-07-19Merge with tip of Master after a Viewer releaseCallum Prentice
2021-06-07Merge with tip of Master after Viewer releaseCallum Prentice
2021-06-07Merge branch 'master' into DRTVWR-516-maintAndrey Lihatskiy
2021-04-01SL-14990 Turn on shader init logging after crashAndrey Kleshchev
2021-03-10Merge branch 'master' v6.4.17 into DRTVWR-525Dave Houlton
2021-03-09This set of changes reverts the merge with master (git revert c83e740) and ↵Callum Prentice
results in a version of the DRTVWR-519 that matches what was presemt before it was deployed as a release viewer *plus* 3 small fixes from Maxim (See commits). This branch can now be used for additional fixes before eventually being used to release D-519 as normal
2021-03-09Merge branch 'master' into DRTVWR-516-maintAndrey Lihatskiy
2021-03-08Revert "Merge branch 'master' of https://bitbucket.org/lindenlab/viewer into ↵Brad Payne (Vir Linden)
DRTVWR-519" This reverts commit e61f485a04dc8c8ac6bcf6a24848359092884d14, reversing changes made to 00c47d079f7e958e473ed4083a7f7691fa02dcd5.
2021-03-02Merge branch 'master' v 6.4.15 into DRTVWR-525Dave Houlton
2021-03-02Merge branch 'master' into DRTVWR-516-maintAndrey Lihatskiy