summaryrefslogtreecommitdiff
path: root/indra/newview/llmeshrepository.h
AgeCommit message (Collapse)Author
2022-09-27Optimize mesh queue processing on main thread to reduce mutex contentionRye Mutt
2022-09-27Add proper retry support to skin info fetchRye Mutt
2022-09-27Optimize away gObjectList finds during mesh loadRye Mutt
2022-09-27Optimize away constant map finds in getSkinInfo by caching mesh skin into in ↵Rye Mutt
vovolume
2022-09-27Replaced usage of LLVolumeParams as map key in meshrepo with the mesh uuidRye Mutt
2022-09-27Optimize mesh header size and data access throughout meshrepoRye Mutt
2022-05-31Merge branch 'master' into DRTVWR-544-maintAndrey Lihatskiy
# Conflicts: # indra/llprimitive/llmodel.cpp # indra/llprimitive/llmodel.h # indra/newview/llappviewer.cpp # indra/newview/llappviewer.h
2022-02-11SL-1370 Add more memory logging to mesh repositoryAndrey Kleshchev
2021-12-15DRTVWR-546 merge up to 6.5.2Dave Houlton
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-09-14SL-15961 Convert LLMeshRepository::mSkinMap into unordered_map and reduce ↵Runitai Linden
number of per-frame lookups to said map.
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-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.
2020-11-11Merge branch 'master' into DRTVWR-519Callum Prentice
2020-09-25post-merge cleanupAndrey Lihatskiy
2020-09-22Merge branch 'master' into DRTVWR-507-maintAndrey Lihatskiy
# Conflicts: # doc/contributions.txt # indra/newview/llfloaterconversationpreview.cpp # indra/newview/llinventorypanel.h # indra/newview/llmeshrepository.h # indra/newview/llvoicevivox.cpp
2020-09-22Merge branch 'master' into DRTVWR-519Callum Prentice
2020-09-16First part of change to remove LLVFS from the Viewer. Consists of code ↵Callum Prentice
changes to remove LLVFS and LLVFSThread classes along with the associated source files. The existing llvfs folder is renamed to llcache. Also includes changes to CMake script in many places to reflect changes. Eventually, llvfile source file and class will be renamed but that is not in this change.
2020-04-07SL-2569 LLSD header of a mesh should be covered by mutexAndrey Kleshchev
2020-02-03SL-2569 More bad alloc checksAndrey Kleshchev
2018-10-11removed unused member variables that make xcode 10 unhappyBrad Payne (Vir Linden)
2018-06-21mergeBrad Payne (Vir Linden)
2018-06-13SL-915, MAINT-8554 - cleanup/reorg, added encroachment fix info to ↵Brad Payne (Vir Linden)
DebugAnimatedObjects output
2018-05-03MAINT-8593 Viewer should not repeat loads indefinetelyAndrey Kleshchev
2018-05-18mergeBrad Payne (Vir Linden)
2018-04-25MAINT-8549 - more on animesh ARC and associated refactoringBrad Payne (Vir Linden)
2018-04-24MAINT-8549 - refactoring of streaming cost and related calculationsBrad Payne (Vir Linden)
2018-03-26SL-897 - display for DebugAnimatedObjects now includes streaming cost ↵Brad Payne (Vir Linden)
triangle count
2018-02-19MAINT-8308 Additional logging for mesh processingandreykproductengine
2017-09-29SL-794 - use largest LOD for est tri count, instead of trusting that it's ↵Brad Payne (Vir Linden)
always the high LOD
2017-09-22SL-794, SL-790 - viewer-side enforcement in UI for various animated object ↵Brad Payne (Vir Linden)
limits that are also enforced on the server.
2017-03-06SL-409 - consolidated user of ViewerAsset cap for mesh and texture fetching ↵Brad Payne (Vir Linden)
as well.
2016-09-06SL-395 - can enable/disable scale lock in mesh upload UI. Feature works.Brad Payne (Vir Linden)
2016-08-01MAINT-6460 Crash calculating mesh complexityandreykproductengine
2016-08-01Backed out changeset: c21a7e6d9796andreykproductengine
2016-07-12MAINT-6460 Crash calculating mesh complexityandreykproductengine
2016-04-04merge with 4.0.3-releaseOz Linden
2015-11-10remove execute permission from many files that should not have itOz Linden
2015-10-14MAINT-5732: Change to the way event polling handles error conditions and ↵Rider Linden
cancel calls. Refactor any remaining LLCore::HTTPHandlers to use boost::shared_ptr Started minor refactor in the materials manager into coroutines (unfinished)
2015-09-29DRTVWR-409: merge DRTVWR-368Rider Linden
2015-09-14MAINT-5507: Remove HTTPClient and related cruft.Rider Linden
2015-07-08Change HttpOptions::ptr_t to be shared_ptr<> rather than intrusive.Rider Linden
2015-07-08Convert LLCore::HttpHeaders to use shared_ptr<> rather than an ↵Rider Linden
intrusive_ptr<> for refrence counting.
2014-04-22Modify importer to (optionally) improve debug output, perform name-based LOD ↵Graham Linden
association, and handle models with many materials.
2013-12-06SH-4645 Viewer hangs on exit after cancelling a mesh upload.Monty Brandenberg
Problem involved a 3-way livelock between the main, upload and decomposition threads. Viewer is shutting down but an upload is in the 'generate hulls' state. Main thread asks upload request to discard and spins waiting for it to finish. Upload thread is in generateHulls spinning waiting for the decomposition thread to process a mesh request. Decomposition thread is sleeping waiting for main thread to deliver work that upload thread has asked the decomposition thread to do.
2013-09-24SH-3690 SH-4505 Cleanup pass through code.Monty Brandenberg
Start using DNS cache in legacy LLCurl code. Go to 15 seconds particularly as we're using threaded resolver at this point. Documentation cleanup. Add libcurl status checking and logging for curl_easy_setopt() operations that fail. Shouldn't happen and we'll just continue anyway but there's info in the logs to track these down now. Cleaned up logic around FASTTIMER enable defines used to evaluate pipeline stalls in main thread. Removed long-standing thread race around caps strings and URL construction. Not a significant risk but refactoring the code to get rid of them removed one huge eyesore. It can be made even slicker if desired (see notes).
2013-09-20Move from std::queue to std::list which has betterMonty Brandenberg
behavior and swap() as well. Should probably do this for the other queues at some point.
2013-08-06SH-4411 Thread/mutex rework between main and worker threadMonty Brandenberg
Have the ::notifyLoadedMeshes() method doing correct locking and stall avoidance at the same time. This method now does lazy mutex lock acquisition (trylock()) and if it fails on either, it gives up and comes back later. Capture the maximum number of sequential failures and report this at the end of the run in the log. (So far, with big mesh regions, I've only seen 1s and 2s.) Locking/mutex requirements sorted in other locations as well. LLMutex gets trylock() method as well as new LLMutexTrylock scoped locking class. Clean up some documentation, more to do.
2013-08-05Added some simple counters to the mesh repository code and thenMonty Brandenberg
added a Mesh status line to the texture fetch console. Mesh is often in competition with textures and so the mesh information seems appropriate there. Do get a nice feel for progress and you definitely see when the throttles kick in.
2013-07-30SH-4371 Reduce 22mS inter-connection latency.Monty Brandenberg
This really extended into the client-side request throttling. Moved this from llmeshrepository (which doesn't really want to do connection management) into llcorehttp. It's now a class option with configurable rate. This still isn't the right thing to do as it creates coupling between viewer and services. When we get to pipelining, this notion becomes invalid.