Commit Graph

2997 Commits (f669e46308dd256367fea5da6946ae7b4dacd7b7)

Author SHA1 Message Date
Ansariel f669e46308 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2022-02-02 09:39:17 +01:00
Ansariel 9811f7f13c Shut up, fucken OSX! 2022-02-01 10:52:44 +01:00
Beq 105f20b055 FIRE-31326 - Fix crash thread contention crash
Crash caused by DD stepping and AutoTune both hacking the RenderFarClip. Added a proxy tunables structure to allow the main thread to tweak the tunables while the work is still done on the perf thread.
2022-01-30 15:48:16 +00:00
Ansariel 0a0e2fe93e Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2022-01-15 02:39:07 +01:00
Ptolemy f571de9de4 SL-16606: Add profiler category NETWORK 2022-01-14 11:50:20 -08:00
Ptolemy f268230902 SL-16606: Add profiler category APP 2022-01-14 11:50:18 -08:00
Ansariel 8bdb3db63d Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2021-12-16 20:05:36 +01:00
Dave Houlton 0fd7d20949 DRTVWR-546 fix sUseFBO merge errors 2021-12-16 11:14:14 -07:00
Ansariel d06070241a Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	autobuild.xml
#	indra/cmake/00-Common.cmake
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappviewer.cpp
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/llvovolume.cpp
2021-12-16 10:09:12 +01:00
Ansariel f0ca9f9d17 Fix merge error 2021-12-16 09:51:20 +01:00
Ansariel 6663bc6f85 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
# Conflicts:
#	autobuild.xml
#	indra/llfilesystem/llfilesystem.cpp
#	indra/newview/CMakeLists.txt
#	indra/newview/llappviewer.cpp
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/llviewercontrol.cpp
2021-12-16 09:49:35 +01:00
Ansariel 47e2173239 Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	indra/llrender/llgl.cpp
#	indra/llwindow/llwindowwin32.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/featuretable.txt
#	indra/newview/featuretable_mac.txt
#	indra/newview/lldrawpoolalpha.cpp
#	indra/newview/lldynamictexture.cpp
#	indra/newview/llviewerdisplay.cpp
#	indra/newview/pipeline.cpp
#	indra/newview/pipeline.h
2021-12-16 08:42:54 +01:00
Dave Houlton cf35d27dfb DRTVWR-546 merge up to 6.5.2 2021-12-15 14:37:18 -07: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
Ansariel 028941652b Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	indra/llrender/llvertexbuffer.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappviewer.cpp
#	indra/newview/llappviewer.h
#	indra/newview/llfloaterpreference.cpp
#	indra/newview/llnetmap.cpp
#	indra/newview/llspatialpartition.cpp
#	indra/newview/llviewerdisplay.cpp
#	indra/newview/llviewershadermgr.cpp
#	indra/newview/pipeline.cpp
2021-12-01 22:29:25 +01:00
Nat Goodspeed 01317a2fad SL-16421: Destroy the "General" ThreadPool as soon as cleanup starts.
Introduce LLAppViewer::onCleanup(), a method that accepts a nullary callable
to execute once viewer shutdown begins. Fire the collected callables in
LLAppViewer::cleanup().

In llstartup.cpp, instead of declaring a static unique_ptr and relying on
static object destruction to clean up the "General" ThreadPool, bind the
pointer to the new ThreadPool into an onCleanup() lambda that will delete it
when called. ~ThreadPool() takes care of orderly shutdown.
2021-11-30 17:00:09 -05:00
Nat Goodspeed 9be88050e6 SL-16421: Unify LLAppViewer::cleanup() indentation.
Use hard tabs because most of the existing function uses those.
2021-11-30 17:00:09 -05:00
Ansariel 4a1ef323ae Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2021-11-29 19:40:28 +01:00
Nat Goodspeed 7a0ca277f8 SL-16094: Merge branch 'DRTVWR-546' into glthread 2021-11-29 13:09:59 -05:00
Mnikolenko Productengine 5641f9612c SL-16408 fixed regression - crash on exit 2021-11-29 17:52:11 +02:00
Mnikolenko Productengine f7258b49b2 SL-16408 Fix for crashing on disconnect 2021-11-25 17:33:13 +02: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
Ansariel d881fa40d3 Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2021-11-20 22:35:31 +01:00
Dave Parks 28f9fb06a9 SL-16289 Rigged mesh rendering overhaul 2021-11-20 18:49:19 +00:00
Nat Goodspeed 53cf740d87 SL-16094: Service mainloop WorkQueue every LLAppViewer::idle() call
even if idle() exits early.
2021-11-19 14:43:20 -05:00
Andrey Kleshchev 1acd92c30c SL-15993 Disabling transparent water should not disable advanced lighting 2021-11-19 14:43:20 -05:00
Ansariel c2f8517118 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-11-16 21:01:05 +01:00
Dave Houlton 353329c2c2 DRTVWR-546 merge in master v6.5.1 2021-11-16 11:44:55 -07:00
Ansariel 3322eadea0 Merge branch 'master' of https://vcs.firestormviewer.org/viewer-merges/phoenix-firestorm-519 2021-11-16 13:04:22 +01:00
Ansariel ced9423261 Merge branch 'DRTVWR-534' of https://bitbucket.org/lindenlab/viewer 2021-11-16 12:17:26 +01:00
Ansariel 627eecd577 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-11-16 08:22:59 +01:00
Andrey Lihatskiy ab4d4a4817 Merge branch 'DRTVWR-519' into DRTVWR-552-cache-360
# Conflicts:
#	indra/newview/app_settings/settings.xml
2021-11-16 01:24:03 +02:00
Andrey Lihatskiy 0505c6ebbb Merge branch 'master' into DRTVWR-534
# Conflicts:
#	indra/newview/VIEWER_VERSION.txt
2021-11-16 01:21:55 +02:00
Andrey Lihatskiy 0bffd3d365 Merge branch 'master' into DRTVWR-519
# Conflicts:
#	README.md
2021-11-16 01:21:05 +02:00
Ansariel 4a59f6650f Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2021-11-15 18:10:02 +01: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
Ansariel 593676fa44 Don't force VAOs with OGL Core profile for the time being since it will break rendering completely 2021-11-13 00:16:13 +01:00
Nat Goodspeed 5188a26a85 SL-16220: Merge branch 'origin/DRTVWR-546' into glthread 2021-11-12 12:10:44 -05:00
Ansariel 790ead2ef2 Merge branch 'master' of https://vcs.firestormviewer.org/viewer-merges/phoenix-firestorm-541
# Conflicts:
#	doc/contributions.txt
#	indra/llcommon/llmemory.h
#	indra/llcommon/llprofiler.h
#	indra/llcommon/lltracerecording.h
#	indra/newview/llappviewer.cpp
#	indra/newview/lldrawpool.cpp
#	indra/newview/lldrawpoolalpha.cpp
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/lldrawpoolbump.cpp
#	indra/newview/llvoavatar.cpp
#	indra/newview/llvovolume.cpp
#	indra/newview/pipeline.cpp
2021-11-12 17:43:32 +01:00
Ansariel 63cc972499 Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	indra/llappearance/lldriverparam.h
#	indra/llcommon/llmemory.h
#	indra/llcommon/llprofiler.h
#	indra/llrender/llvertexbuffer.cpp
#	indra/llwindow/llwindow.cpp
#	indra/llwindow/llwindowwin32.h
#	indra/newview/app_settings/settings.xml
#	indra/newview/lldrawable.cpp
#	indra/newview/lldrawable.h
#	indra/newview/lldrawpoolalpha.cpp
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/lldrawpooltree.cpp
#	indra/newview/lldrawpoolwater.cpp
#	indra/newview/llface.cpp
#	indra/newview/llinventoryfilter.cpp
#	indra/newview/llselectmgr.h
#	indra/newview/llspatialpartition.cpp
#	indra/newview/llviewermenu.cpp
#	indra/newview/llviewerobject.cpp
#	indra/newview/llvieweroctree.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/llvovolume.cpp
#	indra/newview/llvowlsky.cpp
#	indra/newview/pipeline.cpp
#	indra/newview/skins/default/xui/en/floater_stats.xml
2021-11-12 17:31:39 +01:00
Andrey Kleshchev 709184e0ff SL-15993 Disabling transparent water should not disable advanced lighting 2021-11-12 17:34:27 +02:00
Ansariel 7427b46ea5 Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	.gitignore
#	indra/cmake/Copy3rdPartyLibs.cmake
#	indra/llcommon/llcommon.cpp
#	indra/llcommon/llerror.cpp
#	indra/llcommon/llprofiler.h
#	indra/llcommon/llthread.cpp
#	indra/llimage/llimageworker.cpp
#	indra/llprimitive/llmodel.h
#	indra/llrender/llfontgl.cpp
#	indra/llrender/llfontgl.h
#	indra/llrender/llgl.cpp
#	indra/llrender/llvertexbuffer.cpp
#	indra/llrender/llvertexbuffer.h
#	indra/llwindow/llwindowmacosx.h
#	indra/llwindow/llwindowwin32.cpp
#	indra/llwindow/llwindowwin32.h
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappviewer.cpp
#	indra/newview/llappviewer.h
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/lldrawpoolavatar.h
#	indra/newview/lldynamictexture.cpp
#	indra/newview/llfloatermodelpreview.cpp
#	indra/newview/llimview.cpp
#	indra/newview/llmeshrepository.h
#	indra/newview/llmodelpreview.cpp
#	indra/newview/llnetmap.cpp
#	indra/newview/llskinningutil.cpp
#	indra/newview/llskinningutil.h
#	indra/newview/llspatialpartition.cpp
#	indra/newview/llteleporthistory.cpp
#	indra/newview/llviewerdisplay.cpp
#	indra/newview/llviewerobject.cpp
#	indra/newview/llviewerobjectlist.cpp
#	indra/newview/llviewertexture.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/llviewerwindow.cpp
#	indra/newview/llvoicevivox.cpp
#	indra/newview/llvosky.cpp
#	indra/newview/llvovolume.cpp
2021-11-12 15:21:52 +01:00
Ansariel d06c357bab Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-11-12 11:02:00 +01:00
Ansariel b14d460dca Merge branch 'DRTVWR-545-maint-mix' of https://bitbucket.org/lindenlab/viewer 2021-11-10 21:21:51 +01:00
Ansariel 6254497151 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-11-10 21:17:02 +01:00
Beq 3ed58d8b63 Fix backgroundyield derp and stop settings reload during autotune 2021-11-10 17:06:00 +00:00
Beq 233739879b Add debug control to disable perfstats 2021-11-05 17:15:27 +00:00
Nat Goodspeed 834e7ca088 SL-16202: Use large WorkQueue size limits for mainloop and General.
Give ThreadPool and WorkQueue the ability to override default
ThreadSafeSchedule capacity.

Instantiate "mainloop" WorkQueue and "General" ThreadPool with very large
capacity because we never want to have to block trying to push to either.
2021-11-04 17:18:57 -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