Andrey Lihatskiy
329268c5f7
Merge branch 'master' into DRTVWR-548-maint-N
...
# Conflicts:
# indra/newview/llmodelpreview.h
2022-09-15 20:44:04 +03:00
Howard Stearns
2082443220
SL-17967 - Git rid of ARB that is in core
2022-09-01 10:58:27 -07:00
Dave Parks
197ac7cc20
Merge remote-tracking branch 'remotes/origin/DRTVWR-563' into DRTVWR-559
2022-08-30 10:46:36 -05:00
Dave Parks
9bee2a92d2
SL-17997 Follow up from beta breakers results.
2022-08-26 10:51:42 -05:00
Andrey Kleshchev
9a8ab9592d
SL-17732 std_bad_alloc at setManualImage
2022-07-06 22:22:36 +03:00
Nat Goodspeed
0bf91fc141
SL-17483: Merge branch 'track-threadpools' into sl-17483.
...
This picks up ThreadPoolSizes override logic embedded in ThreadPool's
constructor, plus the new static ThreadPool::getConfiguredWidth() and
getWidth() methods.
2022-06-09 11:22:01 -04:00
Nat Goodspeed
276647789a
SL-17483: Simplify ThreadPool instantiations.
...
Now that LL::ThreadPool's constructor has subsumed the work of discovering a
runtime override width, LLAppViewer::initGeneralThread() can simply pass the
compile-time default width instead of redundantly checking ThreadPoolSizes.
Also the default ThreadPool capacity has been bumped up to what "General" and
"LLImageGL" were requesting, so they need not pass that explicitly or explain
in comments why they're doing it.
But until we start throwing work at the "General" ThreadPool, configure it
down to 1 thread in settings.xml.
2022-06-09 10:36:13 -04:00
Dave Parks
4261cbba78
SL-17485 Add texture memory accounting for OS X
2022-06-01 10:34:33 -05:00
Andrey Kleshchev
4cfa59d3f1
SL-17473 Viewer not clearing all Vertex Buffers in some cases
...
Image thread doesn't need mBuffer and buffer isn't thread safe so no point allocating it in an image thread.
2022-05-26 22:43:12 +03:00
Dave Parks
6eaf8521ab
SL-17287 Instrument and optimize cubemap render. Fix for cubemap snapshots doing a full resolution render instead of a 512x512 render.
2022-05-20 19:05:28 -05:00
Dave Parks
3400e5fd30
SL-17284 Reflection probe tuning and optimization take 1
2022-05-16 17:21:08 +00:00
Dave Parks
b6841d75c2
SL-17219 WIP - Texture pipeline overhaul
2022-04-15 19:02:07 -05:00
Dave Parks
e60024f0af
SL-17005 WIP - Use D3D/DXGI to query for available VRAM on Windows
2022-03-29 15:41:00 -05:00
Dave Parks
34e79c8f4e
SL-17005 WIP Simplify what feeds texture loading bias to only pay attention to available memory according to OS and GL driver, not (broken) internal accounting (breaks intel GPUs, compatibility pass incoming).
2022-03-11 10:21:08 -06:00
Dave Parks
9dc8fee0f5
SL-16928 Fix for broken bumpmaps on Intel GPUs
2022-03-04 17:05:05 -06:00
Dave Parks
85e480616d
Fix for mac build
2022-02-23 19:59:46 -06:00
Dave Parks
4f9fa5e817
Fix for some GPUs thinking they have 0 available vram.
2022-02-23 19:53:49 -06:00
Dave Parks
fc0b238654
Fix for media textures failing to update (and eating lots of memory) on Mac/Intel
2022-02-23 17:55:44 -06:00
Dave Parks
d9a68339d5
SL-16815 and SL-16906 Avoid redundant bumpmap generation, add some 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).
2022-02-23 16:51:33 -06:00
Dave Parks
74641a1213
SL-16815 Cleanup -- disable multithreaded bumpmap generation while tracking down loading issues, fix sync issue in single threaded mode in media textures, restore LL_IMAGEGL_THREAD_CHECK functionality
2022-02-22 19:48:01 -06:00
Dave Parks
1c5c45f273
SL-16815 Fix for broken media texture updates when multithreaded GL is disabled.
2022-02-22 14:58:50 -06:00
Dave Parks
0d6aa3c0fe
SL-16815 Remove frame stalls from occlusion queries, bumpmap updates, and querying for available video memory.
2022-02-17 22:52:23 +00:00
Dave Parks
f47730b92c
SL-16418 Media texture update stall fix. Make media texture updates use LLImageGL thread to update, fix AMD sync issue on ImageGL thread and install debug callbacks on LLImageGL thread when debug gl enabled.
2022-02-14 18:07:24 +00:00
Dave Houlton
fdc4a81b57
Revert "Merged in euclid-16418 (pull request #846 )"
...
This reverts commit 40fe5277e1 , reversing
changes made to af830e5fc5 .
2022-02-01 15:49:32 -07:00
Dave Houlton
8d0efb54db
SL-16418 rename media tex image per-update to avoid contention stall
2022-01-27 17:09:29 -07:00
Ptolemy
bf0643e28a
SL-16606: Add profiler category TEXTURE
2022-01-14 11:50:21 -08:00
Mnikolenko Productengine
c614674ee6
SL-16282 FIXED Friend thumbnails are flickering
2021-12-06 19:20:49 +02:00
Dave Parks
5e5be92d79
SL-16202 Put Multi-threaded GL behind a feature flag and update featuretable (decruftify settings, compatibility pass).
2021-12-06 15:29:34 +00:00
Dave Parks
e7830b39f0
SL-16436 and SL-16327 Fix for RenderDebugGL test failures and fix for grey textures
2021-12-03 15:07:31 +00:00
Nat Goodspeed
0b066539fe
DRTVWR-546, SL-16220, SL-16094: Undo previous glthread branch revert.
...
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 029b41c041 .
2021-11-24 10:47:54 -05:00
Nat Goodspeed
d71e0a6d47
SL-16094, SL-16400: Merge branch 'DRTVWR-546' into glthread
2021-11-23 21:23:45 -05:00
Nat Goodspeed
2b96f89c2a
SL-16400: Add ThreadPool::start() method, and call it.
...
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-23 20:39:32 -05:00
Runitai Linden
744646eb71
SL-16400 Fix for grey textures (hack).
2021-11-22 19:12:39 -06:00
Runitai Linden
9b0d8c7e62
SL-16094 More profile hooks for threading code, remove redundant wglCreateContextAttribs call
2021-11-22 18:42:56 -06:00
Dave Houlton
029b41c041
Revert "SL-16220: Merge branch 'origin/DRTVWR-546' into glthread"
...
This reverts commit 5188a26a85 , reversing
changes made to 819088563e .
2021-11-15 09:25:35 -07:00
Nat Goodspeed
ff5496239b
SL-16202: Use WorkQueue::postTo() for texture create/post handshake.
...
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-05 12:33:31 -04:00
Nat Goodspeed
d848d9e888
SL-16202: Streamline WorkQueues in LLImageGLThread.
...
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-04 16:50:31 -04:00
Mnikolenko Productengine
3faba7515c
SL-16237 FIXED Viewer hangs on login
2021-11-01 19:38:55 +02:00
Dave Parks
8d20480c5f
SL-16148 SL-16244 SL-16270 SL-16253 Remove most BlockTimers, remove LLMemTracked, introduce alignas, hook most/all reamining allocs, disable synchronous occlusion, and convert frequently accessed LLSingletons to LLSimpleton
2021-10-28 18:06:21 +00:00
Dave Parks
e774bffb28
SL-16202 Fix for textures appearing black or flashing white due to optimization bugs.
2021-10-21 21:19:48 +00:00
Dave Parks
d00272e0cc
SL-16099 Multi-threaded OpenGL usage on Windows, enable Core Profile and VAOs by default.
2021-10-11 16:03:40 +00:00
Dave Parks
675514bdb3
SL-16093 Don't force the console window to be open on developer builds because it causes frame stalls while logging.
2021-09-27 23:56:06 +00:00
Andrey Kleshchev
0bf11e45ea
SL-14150 Handle more cases of corrupted cache
2020-10-22 22:22:17 +03:00
Mnikolenko Productengine
83600bb16a
SL-14108 FIXED Viewer crashes immediately after login
2020-10-20 14:25:54 +03:00
Dave Houlton
84d3065596
SL-13281, add missing srgb->linear conversion for specular
2020-06-11 23:33:14 +03:00
Graham Linden
b659e5596e
SL-11514
...
Convince Geenzo code to get a little DeMorgan in it.
Trophy Unlocked: make all alpha textures partcipate in picking.
2019-06-28 08:45:07 -07:00
Graham Linden
c4032528af
Roll back sRGB decode changes from contrib for now.
...
Fix direct light matching across alpha/blended-material/deferred.
Get diffuse lighting to match from Low to Ultra.
2019-05-02 13:49:35 -07:00
Geenz
3a42d2b94a
Whoops! Always make sure that our primary format is assigned.
2019-04-01 18:51:28 -07:00
Geenz
0e47ca896d
Make LLImageGL's loading of assets as sRGB or linear conditional based upon sRGB decode support.
2019-04-01 18:34:56 -07:00
Geenz
2513aa0ed1
Additional gamma correction work: start moving over to EXT_texture_sRGB_decode.
2019-03-30 03:18:02 -07:00
Geenz
0272c47e5a
Tweaked naming a bit, also white space.
...
Will wait for a response from @graham_linden regarding moving the sRGB conversion functions in llmath.h to llrender.
2019-03-29 11:57:45 -07:00
Geenz
3fa8b844c3
Fixing gamma correction in EEP Step 1:
...
Thou shall always read the sky cubemap as sRGB using hardware sampling.
2019-03-29 02:51:41 -07:00
Graham Linden
898c9f4421
Mods to make merge with viewer-release have less whitespace-only change and fix diffs between EEP and VR.
2019-03-13 13:21:48 -07:00
Rider Linden
78866b33a9
Merge
2018-09-26 13:46:45 -07:00
andreykproductengine
e24d4c9f4d
MAINT-8923 Better allocation failure handling, createGLTexture crashes
2018-07-26 20:06:26 +03:00
Rider Linden
7b56db31f9
Merge
2018-03-07 11:27:43 -08:00
Graham Linden graham@lindenlab.com
99b82d9449
Atmospherics WIP
...
libatmosphere integrated in indra/llrender/llatmosphere.cpp
Still working on runtime shaders to use libatmosphere precomputed atmospherics textures
2018-02-18 15:52:23 +00:00
AndreyL ProductEngine
7d156389e4
MAINT-8043 Fix for bad_alloc crash in LLImageGL::setImage()
2017-12-18 20:29:50 +02:00
AndreyL ProductEngine
a65b586b18
MAINT-6729 Additional fix for crash in LLImageGL::analyzeAlpha()
2016-12-08 17:21:05 +02:00
AndreyL ProductEngine
a14b9cb604
MAINT-6635 Fix for LLImageGL::setSize crash
2016-10-07 03:52:04 +03:00
Oz Linden
c8726aba30
remove execute permission from many files that should not have it
2015-11-10 09:48:56 -05:00
Stinson Linden
c307bda68a
Correcting a build error with the release viewer.
2014-05-08 21:58:51 +01:00
Stinson Linden
f43e46bc9c
MAINT-4009: Ensuring that the pick mask for the LLImageGL is always properly freed during its cleanup method.
2014-04-28 19:44:02 +01:00
Xiaohong Bao
0c60e32808
Merge
2013-10-21 16:57:38 -06:00
Richard Linden
697d2e720b
renamed TimeBlock to BlockTimerStatHandle
2013-10-15 20:24:42 -07:00
Dave Parks
0e116741a0
MAINT-2968 Fix for crash on AMD hardware running current drivers.
2013-10-10 18:00:11 -05:00
Richard Linden
80dfbbaacd
merge from viewer-release
2013-10-08 11:59:24 -07:00
Richard Linden
12f0f8cb72
changed over to manual naming of MemTrackable stats
...
changed claimMem and disclaimMem behavior to not pass through argument
added more mem tracking stats to floater_stats
2013-10-01 13:46:43 -07:00
Richard Linden
cbe397ad13
changed fast timer over to using macro
...
another attempt to move mem stat into base class
2013-09-05 14:04:13 -07:00
Xiaohong Bao
1616b73ef3
Automated merge with http://bitbucket.org/lindenlab/viewer-interesting
2013-08-19 16:12:07 -06:00
Xiaohong Bao
d8c02bf062
Merge
2013-08-19 16:09:28 -06:00
Richard Linden
612892b45a
SH-4433 WIP: Interesting: Statistics > Ping Sim is always 0 ms
...
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-18 22:30:27 -07:00
Richard Linden
9f7bfa1c37
moved unit types out of LLUnits namespace, since they are prefixed
2013-08-15 00:02:23 -07:00
Richard Linden
26581404e4
BUILDFIX: added header for numeric_limits support on gcc
...
added convenience types for units F32Seconds, etc.
2013-08-14 11:51:49 -07:00
Richard Linden
e340009fc5
second phase summer cleaning
...
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
2013-08-09 17:11:19 -07:00
Richard Linden
e40065f82c
BUILDFIX: #include and dependency cleanup
2013-07-19 15:03:05 -07:00
Dave Parks
79029149a4
Automated merge with file:///F:%5Cviewer-bear
2013-06-21 12:51:29 -05:00
Richard Linden
a2a6bf20d7
merge with release
2013-06-20 16:46:23 -07:00
Dave Parks
9ea2d90a0d
Automated merge with http://bitbucket.org/lindenlab/viewer-release
2013-06-20 12:10:26 -05:00
Richard Linden
9fd3af3c38
SH-3931 WIP Interesting: Add graphs to visualize scene load metrics
...
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-13 15:29:15 -07:00
Richard Linden
0a96b47663
merge with viewer-release
2013-06-05 19:05:43 -07:00
simon
b864cecd6c
De-bork the viewer merge, causing black in-world images. Reviewed by Kelly
2013-05-13 16:34:52 -07:00
Graham Madarasz
a099815774
Merge vwr-dev-mat
2013-05-11 08:11:13 -07:00
Graham Madarasz
f2455ccaaf
Put back normal map and spec map initializers/destruction, delete FMOD refs (unneeded with FMODEX), make indra.l/y safe for bison >= 2.7
2013-05-10 16:10:25 -07:00
simon
ee2fce8790
Merge downstream code and viewer-beta
2013-05-09 14:10:45 -07:00
simon
8895e79576
Merge downstream code / viewer-beta
2013-05-09 13:21:22 -07:00
Oz Linden
1b984d8f40
merge changes for 3.5.1-release
2013-05-08 14:46:00 -04:00
Graham Madarasz
806d09b114
Merge 3.5.1 into Materials
2013-04-30 19:50:05 -07:00
Graham Madarasz
03cfdeca7a
Fix ifdefs around asserts broken in release only by merge
2013-04-26 10:52:02 -07:00
Graham Madarasz
fd447189c5
Merge 3.5.1 into Materials
2013-04-25 21:00:16 -07:00
Oz Linden
ddd5659f81
merge changes for DRTVWR-294
2013-04-19 10:11:29 -04:00
simon
b42b789723
Merge in downstream code (chui fixes, materials)
2013-04-11 16:18:34 -07:00
simon
c7bab8ab8b
Merge
2013-04-11 16:04:21 -07:00
Graham Madarasz
bf6182daa8
Update Mac and Windows breakpad builds to latest
2013-03-29 07:50:08 -07:00
Richard Linden
68f9f656cd
merge with viewer-release
2013-03-22 00:44:59 -07:00
Dave Parks
609ed855e1
MAINT-2371 More optimizations.
...
Reviewed by Graham
2013-03-04 18:01:42 -06:00
Graham Madarasz
019c7566fb
For MAINT-1291 Code Review: DaveP
2013-02-07 09:18:09 -08:00
Nyx Linden
11fe124ae9
merging in viewer-beta.
...
Most of the merge was clean, a couple conflicts.
Brought over a couple patches manually for llpolymesh.
2013-01-24 16:22:49 -05:00
Richard Linden
9d77e030d9
SH-3406 WIP convert fast timers to lltrace system
...
cleaning up build
moved most includes of windows.h to llwin32headers.h to disable min/max macros, etc
streamlined Time class and consolidated functionality in BlockTimer class
llfasttimer is no longer included via llstring.h, so had to add it manually in several places
2012-11-14 23:52:27 -08:00
Richard Linden
0bb0bd514b
SH-3499 WIP Ensure asset stats output is correct
...
Finished making LLUnit implicitly convertible to/from scalar integer values
cleaned up test code
2012-11-08 23:42:18 -08:00