Commit Graph

266 Commits (e0d14e02e152b4e75ff8bdd974677f9669163d68)

Author SHA1 Message Date
Jonathan "Geenz" Goodman e0d14e02e1 Merge branch 'release/2025.03' into rye/forevermac 2025-03-11 22:44:49 -04:00
Jonathan "Geenz" Goodman d450295cf5
Additional water fixes and tweaks. (#3524)
* Incorporation of feedback for #3456
2025-02-11 13:49:24 -05:00
Rye fd94dc0cd0 Disable old GPU hacks on macos when running against Apple GPU 2025-02-11 05:04:10 -05:00
Jonathan "Geenz" Goodman 93a88e6025
Water Exclusion Surfaces (#3517)
* #3455 Add support for water exclusion surfaces
2025-02-07 05:55:47 -05:00
Brad Linden d5c6eb92da
Attempt to get more log info in secondlife/viewer#3335 crash reports (#3470)
when failing to load basic vertex shaders
2025-01-24 11:30:47 -08:00
Rye f8fad89dd0 Fix mesa failing to link shaders due to missing vertex shader outputs 2024-12-11 08:49:38 -08:00
Rye d17fd56dc4 Fix crashes from shader load failures under RenderMaxOpenGLVersion 3.1/3.2/3.3 (#3184) 2024-12-10 17:24:39 -08:00
Jonathan "Geenz" Goodman d65fb7cec8
Drop emissive on old Intel GPUs (#3110)
* #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-25 20:56:03 -05:00
Brad Linden 7be9c43f28
brad/2744 handle shader errors (#3105)
* 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-11-19 10:49:09 -08:00
Rye Mutt 958afaa7a7 Integrate SMAA and rework post process chain for better visual quality
Add SMAA buffer generation passes
Add quality levels for both FXAA and SMAA
Separate gamma correction and tonemapping for effects that require linear-but-tonemapped inputs
Move application of noise to final render pass to screen to avoid damaging other post process effects
2024-08-29 17:24:50 -04:00
Rye Cogtail 2ca193ce46 Improve FXAA quality and performance when GL version is greater then 4
Adds gather4 support under GLSL 4.0+
2024-08-24 00:55:34 -04:00
Cosmic Linden 6aa9110b2a secondlife/viewer#1883: Local-only PBR terrain paintmap with developer tools 2024-08-06 16:28:47 -07:00
Rye Mutt e101d1aa28
Fix excessive clearing of shader cache when toggling mirrors (#1950) 2024-07-09 19:51:02 -05:00
Ansariel 9fdca96f8b Re-enable compiler warnings C4244 and C4396 except for lltracerecording.h and llunittype.h for now 2024-07-08 20:27:14 +02:00
Dave Parks 80ea30af1a
#1769 gltf optimization pass (#1816)
#1814 and #1517 Fix mirror update rate and occlusion culling
2024-06-21 13:13:08 -05:00
Dave Parks 375555012f
1736 audit texture image unit usage on os x (#1739)
* #1736 Remove some unused samplers from glsl files and refactor shader manager to assume 16 texture image units and 4 indexed texture units all the time.
2024-06-14 17:06:07 -05:00
Brad Linden d12c897bfc Merge remote-tracking branch 'origin/project/gltf_development' into brad/maint-a-merge-to-gltf-dev
# Conflicts:
 #	indra/newview/gltf/primitive.cpp
2024-06-12 10:31:27 -07:00
Dave Parks f40fbdf4ad
#1718 Add GLTF support for multiple texcoords (#1720)
* Fix for GLTF MeshPrimitiveModes test
2024-06-11 17:10:13 -05:00
Dave Parks 429c92ad75
#1687 Add support for KHR_texture_transform (#1717) 2024-06-11 13:27:54 -05:00
Brad Linden 7c42711ca3 Merge remote-tracking branch 'origin/DRTVWR-600-maint-A' into project/gltf_development 2024-06-10 16:22:12 -07:00
Dave Parks 227e9be068
#1654 generate normals and tangents according to gltf specification (#1662)
* Disable unloading of objects in background. 
* Add unlit GLTF shader variant
2024-06-10 10:43:38 -05:00
Ansariel c0fad3028f Re-enable compiler warnings C4018, C4100, C4231 and C4506 2024-06-10 16:42:43 +02:00
Ansariel b42f9d836b Re-enable a lot of compiler warnings for MSVC and address the C4267 "possible loss of precision" warnings 2024-06-01 15:49:26 +02:00
Dave Parks 15fd13f830
#1530 Increase joint limit for GLTF Assets (#1582)
* Migrate GLTF scene rendering to its own shaders
* Add support for ambient occlusion map separate from metallic roughness map (or absent)
* Use UBO's for GLTF joints
* Better error handling of downloading GLTF assets
2024-05-29 16:56:39 -05:00
Brad Linden a1f49564d6 Merge remote-tracking branch 'origin/DRTVWR-600-maint-A' into brad/merge-maint-a-to-dev 2024-05-23 11:31:19 -07:00
Ansariel e2e37cced8 Fix line endlings 2024-05-22 22:40:26 +03:00
Ansariel 1b67dd855c Merge remote-tracking branch 'origin/main' into DRTVWR-600-maint-A
# 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
2024-05-22 19:04:52 +02:00
Dave Parks d21f29b643
Merge branch 'project/gltf_development' into project/gltf_development 2024-05-14 14:22:46 -05:00
Cosmic Linden 9441608623 secondlife/viewer#907: Local PBR terrain texture transforms 2024-05-10 17:42:54 -07:00
Ansariel 799ebf2162 Fix broken merge and BOOL/bool issues 2024-05-10 15:16:06 +02:00
RunitaiLinden c6d752b880 Merge remote-tracking branch 'origin/DRTVWR-600-maint-A' into gltf-dev-maint-a-merge 2024-05-06 16:48:58 -05:00
Brad Linden 9b6979f458
Fix for SL-20652 shadows on mac breaking alpha blended objects. (#1264)
* Fix for SL-20652 shadows on mac breaking alpha blended objects.

fix secondlife/jira-archive-internal#71030

* clean up surrounding indentation

* Skip unnecessary casting

* Clean up LLGLSLShader::sIndexedTextureChannels usage and improve fix for SL-20652
2024-04-30 19:06:27 -05:00
Andrey Lihatskiy 1b68f71348 #824 Process source files in bulk: replace tabs with spaces, convert CRLF to LF, and trim trailing whitespaces as needed 2024-04-29 07:56:09 +03:00
RunitaiLinden 2880e5ceee
#1139 Fix for world going black/white in some scenes (NaNs) (#1273)
* #1139 Fix for world going black/white in some scenes (NaNs)

NaNs were coming from normal encode/decode.  Take advantage of available gbuffer space to send full normal instead of encoding.

* #1139 Cleanup

remove now unused encodeNormF.glsl

* #1139 Remove final reference to encodeNormF

* #1139 Fix for getNormalEnvIntensityFlags referencing wrong sampler for env intensity

* Mac build fix
2024-04-19 11:59:28 -05:00
RunitaiLinden c1bde75768
HDRI Local Preview (#953)
* #926 WIP - HDRI import prototype v0

* #926 WIP -- add OpenEXR to autobuild.xml

* #926 WIP -- Add OpenEXR cmake

* #926 WIP -- Attempt at using OpenEXR autobuild package and don't hard code .exr file to load

* #926 Unmangle autobuild.xml and get dll's in the right place (thanks, Caladbolg!)

* implement mac shared libs plumbing for OpenEXR for secondlife/viewer#926

* Fix Xcode/clang compile error regarding new[]/delete[] mismatch

* #926 HDRI Preview finishing touches.

- Full ACES when HDRI is enabled
- Fix for probes getting stuck paused
- Add exposure and rotation controls

---------

Co-authored-by: Brad Linden <brad@lindenlab.com>
2024-03-08 12:01:20 -06:00
Ansariel b2c2713672 Convert BOOL to bool in llrender 2024-02-20 02:14:01 +02:00
Jonathan "Geenz" Goodman 97d2b21621 #671 Setup the viewer to respect the MirrorsEnabled simulator feature. 2024-02-08 11:39:35 -08:00
RunitaiLinden 78cc23f89c Merge branch 'release/materials_featurette' into materials_featurette/mirrors 2024-02-07 11:20:06 -06:00
RunitaiLinden 5abc68ad43 #677 Move PBR mirror radiance mixing to reflectionProbeF so transparent PBR surfaces can be mirrors 2024-02-02 15:43:56 -06:00
RunitaiLinden b2462355a3 #677 WIP -- add mirror clipping to more shaders 2024-02-01 13:19:20 -06:00
Cosmic Linden 00c65b6270 secondlife/viewer-issues#43: Fix debug normals not rendering for terrain 2024-01-31 14:31:06 -08:00
Jonathan "Geenz" Goodman 373b06398c Merge remote-tracking branch 'origin/release/materials_featurette' into DRTVWR-583 2024-01-24 14:37:33 -08:00
RunitaiLinden 6dd260c369
Merge branch 'release/materials_featurette' into DRTVWR-592 2024-01-19 11:36:56 -06:00
RunitaiLinden 964f9e74d5 SL-20611 followup -- remove now unused glsl files. Fix transparent water. 2023-11-17 10:10:58 -06:00
RunitaiLinden bdb53fd56d SL-20611 Make haze effect local lights -- move sky and water haze to their own passes and unify sky and water haze in forward rendering shaders. 2023-11-16 16:46:12 -06:00
Jonathan "Geenz" Goodman e841c73a99 Tons of masking changes and tweaks.
We now support masking mirrors in the GBuffer.

We also now support the concept of one arbitrary clip plane.

DRTVWR-583
2023-10-16 08:45:48 -07:00
Cosmic Linden a91f08ba84 Merge branch 'DRTVWR-559' into DRTVWR-592 2023-10-13 14:02:51 -07:00
Cosmic Linden 754fe9d4b7 DRTVWR-592: (WIP) Triplanar mapping 2023-10-13 10:39:09 -07:00
Cosmic Linden a7cd5f6ef9 DRTVWR-592: (WIP) (does not run) PBR terrain rendering - more work on shaders, uniforms 2023-10-13 09:57:48 -07:00
Cosmic Linden 7376b3e4b9 DRTVWR-592: (WIP) (does not run) PBR terrain rendering - begin work on shaders, uniforms 2023-10-13 09:57:40 -07:00