summaryrefslogtreecommitdiff
path: root/indra/llrender/llimagegl.h
AgeCommit message (Collapse)Author
2021-12-06SL-16202 Put Multi-threaded GL behind a feature flag and update featuretable ↵Dave Parks
(decruftify settings, compatibility pass).
2021-12-03SL-16436 and SL-16327 Fix for RenderDebugGL test failures and fix for grey ↵Dave Parks
textures
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-22SL-16400 Fix for grey textures (hack).Runitai Linden
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-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-21SL-16202 Fix for textures appearing black or flashing white due to ↵Dave Parks
optimization bugs.
2021-10-11SL-16099 Multi-threaded OpenGL usage on Windows, enable Core Profile and ↵Dave Parks
VAOs by default.
2020-10-23SL-14150 Fix spellingAndrey Kleshchev
2020-10-22SL-14150 Handle more cases of corrupted cacheAndrey Kleshchev
2018-03-07MergeRider Linden
2018-02-18Atmospherics WIPGraham Linden graham@lindenlab.com
libatmosphere integrated in indra/llrender/llatmosphere.cpp Still working on runtime shaders to use libatmosphere precomputed atmospherics textures
2017-12-18MAINT-8043 Fix for bad_alloc crash in LLImageGL::setImage()AndreyL ProductEngine
2016-10-07MAINT-6635 Fix for LLImageGL::setSize crashAndreyL ProductEngine
2015-11-10remove execute permission from many files that should not have itOz Linden
2014-04-28MAINT-4009: Ensuring that the pick mask for the LLImageGL is always properly ↵Stinson Linden
freed during its cleanup method.
2013-10-21MergeXiaohong Bao
2013-10-10MAINT-2968 Fix for crash on AMD hardware running current drivers.Dave Parks
2013-10-01changed over to manual naming of MemTrackable statsRichard Linden
changed claimMem and disclaimMem behavior to not pass through argument added more mem tracking stats to floater_stats
2013-08-27broke out llunit.h into llunittype.h and llunits.h for unit declarationsRichard Linden
changed unit declarations macros to make a lot more sense
2013-08-18SH-4433 WIP: Interesting: Statistics > Ping Sim is always 0 msRichard Linden
continued conversion to units system made units perform type promotion correctly and preserve type in arithmetic e.g. can now do LLVector3 in units added typedefs for remaining common unit types, including implicits
2013-08-15moved unit types out of LLUnits namespace, since they are prefixedRichard Linden
2013-08-09second phase summer cleaningRichard Linden
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
2013-06-13SH-3931 WIP Interesting: Add graphs to visualize scene load metricsRichard Linden
changed Units macros and argument order to make it more clear optimized units for integer types fixed merging of periodicrecordings...should eliminate duplicate entries in sceneloadmonitor history
2013-06-05merge with viewer-releaseRichard Linden
2013-04-19merge changes for DRTVWR-294Oz Linden
2013-03-29Update Mac and Windows breakpad builds to latestGraham Madarasz
2013-03-22merge with viewer-releaseRichard Linden
2013-01-24merging in viewer-beta.Nyx Linden
Most of the merge was clean, a couple conflicts. Brought over a couple patches manually for llpolymesh.
2012-11-08SH-3499 WIP Ensure asset stats output is correctRichard Linden
Finished making LLUnit implicitly convertible to/from scalar integer values cleaned up test code
2012-10-17SH-3275 Update viewer metrics system to be more flexibleRichard Linden
put template parameter back in LLUnit units added free function operators for mathematical manipulation of unit values converted texture memory tracking to units
2012-10-04Adding optimization to skip alpha image analysis when it isn't needed.Don Kjer
2012-09-05Merge in latest viewer-developmentsimon@Simon-PC.lindenlab.com
2012-07-30mergeBrad Payne (Vir Linden)
2012-07-19fix for SH-3238: Textures are loaded at lower detail on subsequent log-insXiaohong Bao
2012-06-28MergeDave Parks
2012-06-26v-r to drano merge conflicts wipBrad Payne (Vir Linden)
2012-06-22mergeDave Parks
2012-05-25MAINT-616 Potential fix for corrupted mip maps.Dave Parks
2012-05-25Merge pull from lindenlab/viewer-development as requested by Oz for DRTVWR-148simon@Simon-PC.lindenlab.com
2012-05-24MAINT-616 Fix for corrupted mipmaps. Cleanup based on code review feedback.Dave Parks
2012-05-21MAINT-616 Factor out calls to glGenFoo where possible, add setting to ↵Dave Parks
control synchronizing strategy WRT occlusion queries, add experimental transform feedback driven LoD update
2012-05-01fix a sculpt crashXiaohong Bao
2012-02-29SH-3018 WIP - removed audit texture, other unused diagnostic codeBrad Payne (Vir Linden)
2012-03-02MAINT-708 Use texture compression to minimize memory bloat (experimental)Dave Parks
2011-05-24SH-469 GL_ARB_texture_multisample supportDave Parks