Age | Commit message (Collapse) | Author |
|
SL-18869, SL-18772 Overhaul VBO management, restore occlusion culling, intel compatibility pass, etc
|
|
|
|
Originally a fix for MAINT-4773/SL-5842 (transparent alpha being white). Reverting due to a critical flaw of the fix replacing material (sometimes server side included). And ignoring user and script input in some cases that makes scripts misbehave.
Viewer should Not modify existing content of own volition.
|
|
abilities and remove some more fast timers.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Make assert on shutdown less frequent (still not gone, likely race condition). Fix unrelated assertion in reflection probes.
|
|
default_irradiance.png
|
|
|
|
If ORM is blank the roughness and metal are multiplied into a default white ORM texture. This reverts commit 71ae65ae175a33c7f60442f62b0ef59415528bf5.
|
|
|
|
|
|
|
|
|
|
good targets.
|
|
SL-17489
Approved-by: Dave Parks
|
|
|
|
check and assertion to avoid crash in production and detect crash in development).
|
|
requests.
This was affecting map tiles that the agent is not allowed to see (HTTP error: 403 forbidden). The URLs of these map tile requests were then getting cleared, so when these map tiles were re-requested (up to 10 times per second, from LLViewerFetchedTexture::updateFetch), the request would use the wrong URL and get a 404.
Stay in DONE state if there is no new work to do, reducing unneeded requests for textures while leaving open the possibility to re-request a texture at different resolution. Alternatively, we could introduce a new FAILED state here. The current DONE state has nuance, and can either mean "texture loading failed" or "texture successfully loaded at a certain LOD." And a 4xx error is generally irrecoverable. Will strongly consider a FAILED state.
Also, don't clear the map URL, so that any future network requests for the map textures request the correct resource.
|
|
fuzzy terrain textures etc).
|
|
|
|
|
|
These trigger fatal warnings on Mac.
|
|
|
|
|
|
to available memory according to OS and GL driver, not (broken) internal accounting (breaks intel GPUs, compatibility pass incoming).
|
|
assertions around ref counting and (hack) fix crash on shutdown from dangling texture reference (reduced to 1 dangling texture from several hundred, can't find the remaining reference).
|
|
querying for available video memory.
|
|
This reverts commit 40fe5277e1390c975d9a3184ff8fc46d69dfb450, reversing
changes made to af830e5fc5840194be95140f644a27011b9b7e06.
|
|
|
|
|
|
row (and add more paranoia checks on texture data).
|
|
|
|
|
|
(decruftify settings, compatibility pass).
|
|
textures
|
|
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.
|
|
|
|
# Conflicts:
# README.md
|
|
This reverts commit 5188a26a8521251dda07ac0140bb129f28417e49, reversing
changes made to 819088563e13f1d75e048311fbaf0df4a79b7e19.
|
|
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.
|
|
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().
|
|
LLMemTracked, introduce alignas, hook most/all reamining allocs, disable synchronous occlusion, and convert frequently accessed LLSingletons to LLSimpleton
|
|
optimization bugs.
|
|
|
|
VAOs by default.
|