summaryrefslogtreecommitdiff
path: root/indra/newview/llvovolume.h
AgeCommit message (Collapse)Author
2018-06-05mergeBrad Payne (Vir Linden)
2018-06-05SL-915 - incremental updates to dynamic bounding box, setting to control detail.Brad Payne (Vir Linden)
2018-06-04SL-915 - tracking joint is rigged stateBrad Payne (Vir Linden)
2018-05-18Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2018-05-18mergeBrad Payne (Vir Linden)
2018-05-03MAINT-8608, MAINT-8539, MAINT-8615 - changes to make object animation info ↵Brad Payne (Vir Linden)
more persistent, tolerant to race conditions during initialization
2018-04-25MAINT-8549 - more on animesh ARC and associated refactoringBrad Payne (Vir Linden)
2018-03-26SL-897 - display for DebugAnimatedObjects now includes streaming cost ↵Brad Payne (Vir Linden)
triangle count
2018-02-22SL-860 - clean up of interim codeBrad Payne (Vir Linden)
2018-02-27MAINT-8317 Fixed Local Textures for Advanced Lighting Projectors do not keep ↵andreykproductengine
the selected texture.
2018-01-22MAINT-8159 - animation state management during link/unlink commandsBrad Payne (Vir Linden)
2017-12-20Backed out changeset: b500f22775ddAndreyL ProductEngine
2017-12-20Backed out changeset: 761e890970b2AndreyL ProductEngine
2017-11-16SL-704 - more cleanup of AXON commented codeBrad Payne (Vir Linden)
2017-11-16SL-704 - first pass cleaning up comments. Also added ↵Brad Payne (Vir Linden)
LLControlAvatar::initInstance() as a potential hook for optimizations.
2017-11-06SL-830 - more diagnostics and possible fixes around corrupted graphics stateBrad Payne (Vir Linden)
2017-11-15MAINT-6645 - Improvement - Agents that render as jelly dolls should have ↵ruslantproductengine
their attachments render at 0 LoD to prevent loading higher LoD complexity in memory thus deterring crashes. Stability improve.
2017-10-25SL-779 - refactoring related to rigged-mesh determination. animated objects ↵Brad Payne (Vir Linden)
must contain some triangles even if not at the root
2017-10-25SL-779 - partial support for animesh objects with non-mesh rootsBrad Payne (Vir Linden)
2017-11-13MAINT-7847 Remake of 'white alpfa' fixandreykproductengine
2017-11-10Backed out changeset: 544a91982ebaandreykproductengine
Originally a fix for MAINT-4773. This was causing a number of issues since changes made in this code were pushing null textures into server and viewer should not modify 'content' at server of own violition.
2017-10-09MAINT-7870 - propagate new animated mesh flags even if they're being zeroed. ↵Brad Payne (Vir Linden)
handle notification of same to update control avatars on notification from elsewhere.
2017-10-02SL-808 - updated ARC display to largely work with animated objects. Gives ↵Brad Payne (Vir Linden)
some triangle information that we may or may not ultimately keep. Surface area calcs still not working
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-07-29SL-731 - diagnostic displays for LOD, tri countBrad Payne (Vir Linden)
2017-07-18SL-727 - right-click menus and hover info ignore control avatars.Brad Payne (Vir Linden)
2017-07-06SL-722 - handle per-object animation requests, combine for control avatar ↵Brad Payne (Vir Linden)
animation state.
2017-06-28SL-722 - work on support for animated object state when linkset-altering ↵Brad Payne (Vir Linden)
operations take place
2017-06-09SL-704 - code cleanupBrad Payne (Vir Linden)
2017-05-25SL-694 - Added extra param field for flags related to extended mesh ↵Brad Payne (Vir Linden)
functionality. Currently this is just one bit to flag an object as able to animate
2017-03-03MAINT-7119 - [Love Me Render] Issues with RenderAutoMuteByteLimit() versus ↵ruslantproductengine
worn legacy prims, sculpts and non-rigged mesh. FIXED. Remark: for Linux platform, for the best times, when we will use gcc > 4.6, otherwise ICE :-(
2017-01-26MAINT-6645 - Improvement - Agents that render as jelly dolls should have ↵ruslantproductengine
their attachments render at 0 LoD to prevent loading higher LoD complexity in memory thus deterring crashes. Fix for Linux build.
2017-01-24MAINT-6645 - Improvement - Agents that render as jelly dolls should have ↵ruslantproductengine
their attachments render at 0 LoD to prevent loading higher LoD complexity in memory thus deterring crashes. Comments: - Fix based on "RenderAutoMuteByteLimit" setting. - File indra/llxml/llcontrol.h - add all signals to 0 group. It garanty that handlers (in indra/newview/llviewercontrol.cpp) will be called last.
2016-12-15Backed out changeset: f73be0eb9d00AndreyL ProductEngine
2016-11-16MAINT-6872 Account for CTRL+0 zoom when mesh LOD is calculatedMnikolenko Productengine
2016-11-16MAINT-6872 Account for CTRL+0 zoom when mesh LOD is calculatedMnikolenko Productengine
2016-11-08Backed out changeset: 2a56972b1571AndreyL ProductEngine
Reverting MAINT-6259
2016-11-08Backed out changeset: 27782e83386bAndreyL ProductEngine
Reverting MAINT-6793
2016-10-18MAINT-6793 Rigged mesh sometimes full of holesandreykproductengine
2016-07-19MAINT-6259 rigged items' LOD should be size dependent, not only avatar dependentandreykproductengine
2016-07-18Backed out changeset: a1a0a055e892andreykproductengine
2016-07-04MAINT-6259 rigged items' LOD should be size dependent, not only avatar dependentandreykproductengine
2016-01-15merge changes for 4.0.1-releaseOz Linden
2015-11-11Backed out changeset: a79540758404ruslantproductengine
Need backed out this changes because it influence on material update see: MAINT-5818 Also this lead to the following: UserA and UserB logged in same location. UserA edit normal/specular map texture offsets while UserB is not observe this changes.
2015-11-10remove execute permission from many files that should not have itOz Linden
2015-09-04MAINT-5416 FIXED Cannot right-click a rigged mesh that's wornAndreyL ProductEngine
--HG-- branch : maint-5416
2015-07-23MAINT-5416 Reverted changeset: 9bd24c17d908AndreyL ProductEngine
2015-07-17MAINT-5416 FIXED cannot right-click a rigged mesh that's wornAndreyL ProductEngine
2015-06-10MAINT-4297 (Mesh models sometimes fail to load completely)ruslantproductengine
MAINT-4449 (Starter avatars deformed or missing alpha under some conditions / graphics cards / LOD ) BUG-7239 (Starter avatars deformed or missing alpha under some conditions / graphics cards / LOD) The reason of problem on avatar (or one of avatar attachments) "deformed" it's selected volume (LLVolume) with a lower LOD. How it works. Why it happens? Each LLVOVolume object has variable mLOD which is indicate which is LLVolume should be assigned to LLPrimitive::mVolumep. The assigment happens in LLVOVolume::setVolume which is call LLPrimitive::setVolume, which is then lookup desired volume in LLVolumeMgr class which is keep as I understand all volume groups for all objects in scene. The data (mesh) for LLVolume class is loading from LL servers by http, and if sucessfully the variable LLVolume::mIsMeshAssetLoaded assigned to true. But sometimes the data may not be ready, and in this case the LLVOVolume::setVolume make request for download mesh (to the LLMeshRepository) and setup one of available lod. All of this things happens in (see: LLVOVolume::setVolume, code: block if (!getVolume()->isMeshAssetLoaded() {...}) When LLMeshRepository sucessfully download the mesh it's set (as I said above LLVolume::mIsMeshAssetLoaded, LLVolume::setMeshAssetLoaded()) and then also notify LLVOVolume::notifyMeshLoaded() about it. This causes add LLVOVolume::mDrawable into the pipline build list (see LLVOVolume::notifyMeshLoaded()) and set LLVOVolume::mSculptChanged; In order to process it later in LLVOVolume::updateGeometry (In order to see the mechanism of LLPipiline build list processing set bp in this method and see the stack). After the LLDrawable will be processed it will be removed form the build queue also all falgs will be reseted (see the end of LLVOVolume::updateGeometry). And here is the problem in variable-flag's "*Changed" processing (in LLVOVolume::updateGeometry): What if by the time of processing the mFaceMappingChanged also will be set (due to other changes in engine)? It means that LLVOVolume::setVolume will not be called and LLPrimitive::mVolumep remain unchaged and would point to the LLVolume for a lower LOD. My changes intended for fix this problem. BTW this is true for not only for standard avatar's. The reason why it is well visible on standard avatars is because it has a more "ugly" lower-LOD-s, than on avatars which is was loaded by the SL-users. For example on my DudtPank avatars I didn't see big difference between LOD-0 and LOD-3. If you want you can "play" with it in LLVOVolume::calcLOD() with add code if(getAvatar() && getAvatar()->isSelf()) { mLOD = <desired lod level [0..3]> }