summaryrefslogtreecommitdiff
path: root/indra/newview/llfeaturemanager.cpp
AgeCommit message (Collapse)Author
22 hoursMerge remote-tracking branch 'secondlife/release/26.4' into 26.4Erik Kundiman
11 daysMerge pull request #3537 from secondlife/project/lua_editorJonathan "Geenz" Goodman
Alpha Viewer: Lua editor
11 days#6153 Make hardware test more robustAndrey Kleshchev
2026-08-11Merge remote-tracking branch 'origin/develop-linux' into geenz/linux-to-developJonathan "Geenz" Goodman
2026-07-25Merge branch 'release/26.3' into marchcat/slua-26.3Andrey Lihatskiy
# Conflicts: # indra/llrender/llimagegl.cpp # indra/llrender/llimagegl.h # indra/newview/featuretable.txt # indra/newview/featuretable_linux.txt # indra/newview/featuretable_mac.txt
2026-07-22Revert "Merge pull request #5829 from secondlife/geenz/texture-quality"Jonathan "Geenz" Goodman
This reverts commit 6b4e3f3288ec1e9917cecd862a7a52945e5b4db2, reversing changes made to 99ab6316b4ae9058f22d9f57d21e795ca45797fd.
2026-07-16Merge branch 'release/26.3' into marchcat/slua-26.3Andrey Lihatskiy
# Conflicts: # .github/workflows/build.yaml # autobuild.xml # indra/llcommon/llsys.cpp # indra/llrender/llimagegl.cpp # indra/llrender/llimagegl.h # indra/newview/CMakeLists.txt # indra/newview/featuretable.txt # indra/newview/featuretable_linux.txt # indra/newview/featuretable_mac.txt # indra/newview/llvoavatar.cpp # indra/newview/llvoiceclient.cpp # indra/newview/llvoicevivox.cpp # indra/newview/viewer_manifest.py
2026-05-22Move texture quality to auto detect on VRAMJonathan "Geenz" Goodman
2026-03-12Merge branch 'main' into marchcat/slua-26.1Andrey Lihatskiy
# Conflicts: # autobuild.xml # indra/llwindow/llwindowwin32.cpp # indra/newview/llappviewer.cpp # indra/newview/llinventorygallerymenu.cpp
2026-01-30Merge tag 'Second_Life_Release#3caf20f4-2026.01' into 2026.01Erik Kundiman
2026-01-29#2639 Fix benchmarked render level being too high for Apple SiliconAndrey Kleshchev
After benchmark fixes, render level jumped from lowest to high+, cap it at med+ until shadows get fixed to have less impact
2025-12-04Merge remote-tracking branch 'secondlife/release/2026.01' into 2026.01Erik Kundiman
2025-12-03Merge branch 'develop-linux' into marchcat/slua-linuxAndrey Lihatskiy
# Conflicts: # indra/newview/llfeaturemanager.cpp
2025-12-03Merge branch 'release/2026.01' into marchcat/devlinux-2601Andrey Lihatskiy
# Conflicts: # indra/llcommon/llprocessor.cpp # indra/llcorehttp/_refcounted.h # indra/llcorehttp/_thread.h # indra/newview/llfeaturemanager.cpp # indra/newview/llviewershadermgr.cpp
2025-12-03Merge pull request #5094 from secondlife/mainJonathan "Geenz" Goodman
2025.08 -> Develop
2025-12-01#5078 Replace boost::assign usage with modern c++ brace initializationRye
Signed-off-by: Rye <rye@alchemyviewer.org>
2025-11-19Merge branch 'develop-linux' into marchcat/slua-linuxAndrey Lihatskiy
# Conflicts: # indra/newview/llfeaturemanager.cpp # indra/newview/llstartup.cpp
2025-11-15Merge tag 'Second_Life_Release#ad6008a5-2025.08' into 2025.08Erik Kundiman
2025-11-14Disable the benchmark & occlusion on RDNA3.5 (#4999)Jonathan "Geenz" Goodman
2025-11-13Merge tag 'Second_Life_Release#0ceefe6d-2025.08' into 2025.08Erik Kundiman
2025-11-12Disable shader profiles on RDNA3.5 to prevent freezes on startup. (#4992)Jonathan "Geenz" Goodman
* Disable shader profiling for certain AMD Radeon GPUs Added logic to detect AMD Radeon 8060 GPUs and disable shader profiling to prevent client freezes and instability. Introduced sCanProfile flag in LLGLSLShader and mSkipProfiling in LLFeatureManager to control profiling behavior based on detected hardware. * Add RDNA3.5 and check the vendor string for a known current family of bad drivers * Update llfeaturemanager.cpp * Make sure to check that this is a Radeon.
2025-11-01Merge tag 'Second_Life_Release#f7516a46-2025.08' into 2025.08Erik Kundiman
2025-10-31Rework anisotropic filtering options into a dropdown with levels for better ↵Rye
performance tuning of low end gpu Signed-off-by: Rye <rye@alchemyviewer.org>
2025-10-29#4604 Turn off cef preloading on low end hardwareAndrey Kleshchev
1. Cef instances are fairly heavy in viewer's implementation, don't preload them on systems <= 8GB 2. Move initialization into floaters where it belongs. 3. Minimal requirement is 8GB, drop gpu class to 1 on hardware under 8GB 4. Reduce cef instance count on systems under 8GB
2025-10-27Fix low memory notification appearing incorrectly on non-windows platforms ↵Rye
when changing graphics quality levels Signed-off-by: Rye <rye@alchemyviewer.org>
2024-12-06Merge remote-tracking branch 'secondlife/release/2024.09-ExtraFPS' into ↵Erik Kundiman
2024.09-ExtraFPS
2024-12-03Rename "Vintage Mode" to "HDR and Emissive" in advanced settings. (#3192)Jonathan "Geenz" Goodman
#2590 #3167
2024-12-03#3184 Fix for crash on some GPUs when setting quality to High or higher (#3201)Dave Parks
2024-11-28Merge branch 'release/2024.09-ExtraFPS' of ↵Erik Kundiman
https://github.com/secondlife/viewer.git into 2024.09-ExtraFPS
2024-11-27Make sure CAS controls are not active with vintage mode. (#3176)Jonathan "Geenz" Goodman
Also make extra sure vintage mode is enabled when GL3 is detected.
2024-11-27Merge remote-tracking branch 'secondlife/release/2024.09-ExtraFPS' into ↵Erik Kundiman
2024.09-ExtraFPS
2024-11-26fix GL3 fallback on mac intel gpu systems. secondlife/viewer#3145 (#3159)Brad Linden
2024-11-26Merge remote-tracking branch 'secondlife/release/2024.09-ExtraFPS' into ↵Erik Kundiman
2024.09-ExtraFPS
2024-11-25Drop emissive on old Intel GPUs (#3110)Jonathan "Geenz" Goodman
* #3103 Add the ability to disable the emissive buffer for older GPUs with low memory bandwidth. * #3135 Add a "vintage" mode for slower GPUs * #2719 Fix for skies being overbrightened * #2632 Do not apply tonemapping on legacy skies
2024-11-22Minor cleanups and logging/ViewerStats improvements for GL3 fallback trigger ↵Brad Linden
for intel HD 4X00 gpus
2024-11-20Merge remote-tracking branch 'secondlife/release/2024.09-ExtraFPS' into ↵Erik Kundiman
2024.09-ExtraFPS
2024-11-19brad/2744 handle shader errors (#3105)Brad Linden
* Partial solution to secondlife/viewer#2744 crash with better error handling. Handles shader compile errors better, and should turn crash into an LL_ERRS assertion failure. Strengthed more assertions and improved shader error line numbers * Even more error handling to get a handle on crash secondlife/viewer#2744 * Improved GLSL correctness on Intel chips that lack OpenGL 4.6 support. secondlife/viewer#2744 * Removed non-working fallback code for gDeferredPostProgram * Fixed incorrect llmax call
2024-10-18Merge remote-tracking branch 'secondlife/release/2024.09-ExtraFPS' into ↵Erik Kundiman
2024.09-ExtraFPS
2024-09-18Make Develop->Render Tests->Frame Profile dump JSON to a file too.Nat Goodspeed
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)
2024-09-17#2590 Fix for horrible FPS on Intel Mac (#2591)Dave Parks
* Work around for GHA mac runners not playing nice with Tracy * Delay VBO deletion for a few frames * Enable multithreaded GL driver and multithreaded media textures on Apple silicon
2024-07-28Merge remote-tracking branch 'secondlife/release/2024.06-atlasaurus' into ↵Erik Kundiman
2024.06-atlasaurus
2024-06-20Merge remote-tracking branch 'secondlife/release/maint-b' into maint-bErik Kundiman
2024-06-14Merge branch 'release/maint-b' into marchcat/b-mergeAndrey Lihatskiy
# Conflicts: # .github/workflows/build.yaml # indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl # indra/newview/app_settings/shaders/class3/deferred/reflectionProbeF.glsl # indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl # indra/newview/llfilepicker.cpp
2024-06-11Merge tag '7.1.8-release'Erik Kundiman
source for viewer 7.1.8.9375512768
2024-06-10Merge remote-tracking branch 'origin/DRTVWR-600-maint-A' into ↵Brad Linden
project/gltf_development
2024-06-06Change LL_FREEBSD to already existing __FreeBSD__Erik Kundiman
So we don't need to have a custom environment -DLL_FREEBSD=1 setting.
2024-06-01Re-enable a lot of compiler warnings for MSVC and address the C4267 ↵Ansariel
"possible loss of precision" warnings
2024-05-28Fix up llexception.h's cross-platform SEH wrapper.Nat Goodspeed
Introduce AlwaysReturn<void> specialization, which always discards any result of calling the specified callable with specified args. Derive new Windows_SEH_exception from LLException, not std::runtime_error. Put the various SEH functions in LL::seh nested namespace, e.g. LL::seh::catcher() as the primary API. Break out more levels of Windows SEH handler to work around the restrictions on functions containing __try/__except. The triadic catcher() overload now does little save declare a std::string stacktrace before forwarding the call to catcher_inner(), passing a reference to stacktrace along with the trycode, filter and handler functions. catcher_inner() accepts the stacktrace and the three function template arguments. It contains the __try/__except logic. It calls a new filter_() wrapper template, which calls fill_stacktrace() before forwarding the call to the caller's filter function. fill_stacktrace(), in the .cpp file, contains the logic to populate the stacktrace string -- unless the Structured Exception is stack overflow, in which case it puts an explanatory string instead. catcher_inner()'s __except clause passes not only the code, but also the stacktrace string, to the caller's handler function. It wraps the caller's handler function in always_return<rtype>(), where rtype is the type returned by the trycode function. This allows a handler to return a value, while also supporting the void handler case, e.g. one that throws a C++ exception. (This is why we need AlwaysReturn<void>: some trycode() functions are themselves void.) For the dyadic catcher() overload, introduce common_filter() containing the logic to distinguish a C++ exception from any other kind of Structured Exception. The fact that the stacktrace is captured before the filter function is called should permit capturing a stacktrace for a C++ exception as well as for most other Structured Exceptions. As before, the monadic catcher() overload supplies the rethrow() handler, in the .cpp file. Change existing calls from seh_catcher() to LL::seh::catcher().
2024-05-24Promote seh_catcher() et al. to llexception.{h,cpp} for general use.Nat Goodspeed
2024-05-23Merge remote-tracking branch 'origin/DRTVWR-600-maint-A' into ↵Brad Linden
brad/merge-maint-a-to-dev