| Age | Commit message (Collapse) | Author | 
|---|
|  |  | 
|  |  | 
|  | Make `LLGLSLShader::finishProfile()` accept a string pathname instead of a
bool and, in addition to logging statistics to the viewer log, output
statistics to that file as JSON. The calls that used to pass
`emit_report=false` now pass `report_name=std::string()`.
Make llviewerdisplay.cpp's `display()` function synthesize a profile filename
in the viewer's logs directory, and pass that filename to
`LLGLSLShader::finishProfile()`.
(cherry picked from commit d5712689d36a1ee1af32242706901fde7229b08d) | 
|  |  | 
|  | * #2434 Intel HD4000 compatibility pass
* Fixes crash on old drivers when loading shaders
* Fixes 30 second hang on startup
* Fixes occasional dev build crash in LLWearableList
---------
Co-authored-by: Brad Linden <brad@lindenlab.com> | 
|  | - Use GL_NVX_gpu_memory_info when available
- Disable transparent water on Mid+ and lower
- Adjust GPU benchmark to better tell the truth
- Texture bias tune up
- viewer-private/#277 - Report foreground_time in viewer stats | 
|  | and llunittype.h for now | 
|  | project/gltf_development | 
|  | * Disable unloading of objects in background. 
* Add unlit GLTF shader variant | 
|  | "possible loss of precision" warnings | 
|  |  | 
|  | # Conflicts:
#	autobuild.xml
#	indra/cmake/CMakeLists.txt
#	indra/cmake/GoogleMock.cmake
#	indra/llaudio/llaudioengine_fmodstudio.cpp
#	indra/llaudio/llaudioengine_fmodstudio.h
#	indra/llaudio/lllistener_fmodstudio.cpp
#	indra/llaudio/lllistener_fmodstudio.h
#	indra/llaudio/llstreamingaudio_fmodstudio.cpp
#	indra/llaudio/llstreamingaudio_fmodstudio.h
#	indra/llcharacter/llmultigesture.cpp
#	indra/llcharacter/llmultigesture.h
#	indra/llimage/llimage.cpp
#	indra/llimage/llimagepng.cpp
#	indra/llimage/llimageworker.cpp
#	indra/llimage/tests/llimageworker_test.cpp
#	indra/llmessage/tests/llmockhttpclient.h
#	indra/llprimitive/llgltfmaterial.h
#	indra/llrender/llfontfreetype.cpp
#	indra/llui/llcombobox.cpp
#	indra/llui/llfolderview.cpp
#	indra/llui/llfolderviewmodel.h
#	indra/llui/lllineeditor.cpp
#	indra/llui/lllineeditor.h
#	indra/llui/lltextbase.cpp
#	indra/llui/lltextbase.h
#	indra/llui/lltexteditor.cpp
#	indra/llui/lltextvalidate.cpp
#	indra/llui/lltextvalidate.h
#	indra/llui/lluictrl.h
#	indra/llui/llview.cpp
#	indra/llwindow/llwindowmacosx.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappearancemgr.cpp
#	indra/newview/llappearancemgr.h
#	indra/newview/llavatarpropertiesprocessor.cpp
#	indra/newview/llavatarpropertiesprocessor.h
#	indra/newview/llbreadcrumbview.cpp
#	indra/newview/llbreadcrumbview.h
#	indra/newview/llbreastmotion.cpp
#	indra/newview/llbreastmotion.h
#	indra/newview/llconversationmodel.h
#	indra/newview/lldensityctrl.cpp
#	indra/newview/lldensityctrl.h
#	indra/newview/llface.inl
#	indra/newview/llfloatereditsky.cpp
#	indra/newview/llfloatereditwater.cpp
#	indra/newview/llfloateremojipicker.h
#	indra/newview/llfloaterimsessiontab.cpp
#	indra/newview/llfloaterprofiletexture.cpp
#	indra/newview/llfloaterprofiletexture.h
#	indra/newview/llgesturemgr.cpp
#	indra/newview/llgesturemgr.h
#	indra/newview/llimpanel.cpp
#	indra/newview/llimpanel.h
#	indra/newview/llinventorybridge.cpp
#	indra/newview/llinventorybridge.h
#	indra/newview/llinventoryclipboard.cpp
#	indra/newview/llinventoryclipboard.h
#	indra/newview/llinventoryfunctions.cpp
#	indra/newview/llinventoryfunctions.h
#	indra/newview/llinventorygallery.cpp
#	indra/newview/lllistbrowser.cpp
#	indra/newview/lllistbrowser.h
#	indra/newview/llpanelobjectinventory.cpp
#	indra/newview/llpanelprofile.cpp
#	indra/newview/llpanelprofile.h
#	indra/newview/llpreviewgesture.cpp
#	indra/newview/llsavedsettingsglue.cpp
#	indra/newview/llsavedsettingsglue.h
#	indra/newview/lltooldraganddrop.cpp
#	indra/newview/llurllineeditorctrl.cpp
#	indra/newview/llvectorperfoptions.cpp
#	indra/newview/llvectorperfoptions.h
#	indra/newview/llviewerparceloverlay.cpp
#	indra/newview/llviewertexlayer.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/macmain.h
#	indra/test/test.cpp | 
|  | LF, and trim trailing whitespaces as needed | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | blending. (#63)
* SL-19203 WIP -- Integrate SSR with reflection probes.  Decruft LLRenderTarget.
* SL-19203 WIP -- Re-integrate SSR.  Incidental decruft.
* SL-19203 WIP -- SSR frame delta correction (still broken for Z)
* SL-19203 WIP -- SSR frame delta Z fix
* SL-19203 WIP -- Make SSR toggleable again and disable SSR in cube snapshots.
* SL-19203 WIP -- Soften sphere probe transitions and fix reflections on void water (make fallback probe a simple terrain+water+sky probe).  Remove parallax correction for automatic probes to reduce artifacts.
* SL-19203 Tune probe blending.
* SL-19203 Cleanup. | 
|  | SL-18869, SL-18772  Overhaul VBO management, restore occlusion culling, intel compatibility pass, etc | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | bandwidth levels and bias settings based on CPU speed. | 
|  | (decruftify settings, compatibility pass). | 
|  | textures | 
|  |  | 
|  | optimization bugs. | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | buffer during benchmark" | 
|  |  | 
|  | including safety checks and some refactoring | 
|  |  | 
|  |  | 
|  |  | 
|  | Introduce helper classes to manage paired initProfile() / finishProfile()
calls and gBenchmarkProgram.bind() / unbind() calls.
Make TextureHolder a class instead of a struct.
Per Henri Beauchamp, since gpu_benchmark() takes a very early exit if
(!gGLManager.mHasTimerQuery), subsequent tests of mHasTimerQuery are
redundant. Remove.
One of those tests controls the busted_finish bool, which can never become
true. Remove that and all tests on it. | 
|  | A classic-C array doesn't destroy its individual elements, but a std::vector
does. Use a std::vector<LLRenderTarget> for dest, so each LLRenderTarget will
be destroyed. ~LLRenderTarget() calls its release() method. | 
|  | Ruslan tracked the observed crash to assignments (to create a dummy triangle)
through an LLStrider<LLVector3> obtained from getVertexStrider(). When
getVertexStrider() returns false, produce a warning and just skip the rest of
the benchmark test.
The one bit of explicit cleanup apparently required by that early exit is a
call to LLImageGL::deleteTextures() to match the preceding generateTextures()
call. Wrap both in a new TextureHolder class whose destructor takes care of
cleanup. The only other references to the corresponding U32 array are a couple
calls to LLTexUnit::bindManual(); add a bind() method to support that.
Also fix apparent bug in the LL_DARWIN special case for "improbably high and
likely incorrect": the code assigned -1.f (the "couldn't compute" value) to
gbps, overlooking the fact that gbps is unconditionally recomputed below. In
the "likely incorrect" stanza, simply return -1.f instead. | 
|  | In case of buff->getVertexStrider(v) return false it mean that glMapBufferRange() return NULL
The next three lines can be the reason of this crash. | 
|  |  | 
|  |  | 
|  | (long long round) in VS2013 | 
|  |  | 
|  | fill rate |