Commit Graph

117 Commits (d0dfffe659b24f5a6bfadc5cc612869e1f08bb93)

Author SHA1 Message Date
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
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 cb3bd8865a Fix a bunch of uninitialized variable warnings that showed up in Visual Studio 2024-05-30 15:41:36 +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
Dave Parks 2f41200384
Remove tinygltf dependency from LL::GLTF (#1541)
* #1535 Image loading/saving support in boost::json driven GLTF parser
* #1536 GLB Support in boost::json drvien GLTF parser
2024-05-28 09:45:40 -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
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
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
Ansariel b2c2713672 Convert BOOL to bool in llrender 2024-02-20 02:14:01 +02:00
Lars Næsbye Christensen 7316441f22 llrender: BOOL (int) to real bool 2024-02-12 23:17:22 +02: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
Cosmic Linden 754fe9d4b7 DRTVWR-592: (WIP) Triplanar mapping 2023-10-13 10:39:09 -07:00
Jonathan "Geenz" Goodman d8dd4d9c0c Just about got hero reflection maps working.
DRTVWR-583
2023-06-27 20:01:52 -07:00
Rye Mutt 87bda55268
Add a binary cache for compiled shaders using glProgramBinary (#216)
* Add a binary cache for compiled shaders using glProgramBinary

* Add additional sanity checking to shader binary save and load, hook up cache clear and menu option

* Fix default init of shader cache data struct and clear gl errors before glGetError calls

---------

Co-authored-by: RunitaiLinden <davep@lindenlab.com>
2023-05-17 18:30:27 -05:00
RunitaiLinden e09475713b DRTVWR-559 Optimization pass, make it so profileAvatar can read back GPU timer without a frame stall. 2023-05-02 18:47:21 -05:00
Jonathan "Geenz" Goodman f4274ba64e Move mipmap generation into LLRenderTarget.
DRTVWR-583
2023-04-14 03:08:28 -07:00
Jonathan "Geenz" Goodman b44ad50f75 Move glow extract to be after tonemapping.
SL-19513
2023-03-31 10:54:19 -07:00
Dave Parks a2647e953a SL-18229 Fix for PBR materials on HUDs misbehaving. Incidental decruft. 2023-02-07 18:25:22 -06:00
Dave Parks c8fb3ad4de SL-19148 Decruft followthrough -- fix for crash when running from installer. Feed fresnel component into PBR alpha. Remove obsolete "shader_hierarchy.txt", remove redundant LL_PROFILE_ZONE_SCOPED, remove unused shader feature flag. 2023-02-06 10:28:26 -06:00
Dave Parks 1c2410b8af SL-19148 Decruft followthrough -- decruft shader tree and some remaining forward rendering code. 2023-02-03 19:45:31 -06:00
Dave Parks 830cb6b665 SL-19148 Decruft some forward shaders and drawpools. Fix HUDs being in wrong color space. 2023-02-03 17:18:39 -06:00
Dave Parks c9d56e212a SL-19015 Balance sun/sky ambiance with punctual light ambiance. Prevent irradiance maps from being brighter than the environment. 2023-01-31 15:01:05 -06:00
Dave Parks a851aa83e7 SL-18958 Fix for broken water distortion map and depth buffer. Incidental decruft. 2023-01-24 12:50:17 -06:00
Dave Parks 493d501cde SL-18869 Optimizations -- Revive "Frame Profile" and GL_DEPTH_CLAMP. Remove usage of gl_FragDepth from shadow shaders. 2023-01-10 19:49:18 -06:00
Brad Kittenbrink a887c486b4 Merge remote-tracking branch 'origin/DRTVWR-528' into DRTVWR-559 2022-11-28 16:24:53 -08:00
Dave Parks e2d1af5c4f SL-18154 Profile guided optimizations -- remove some unneeded operations and make LLDrawPoolMaterials less branchy. 2022-11-17 13:35:39 -06:00
Dave Parks 8d2ac419b2 SL-18154 Profile guided optimizations vs release viewer. Trim some unused abilities and remove some more fast timers. 2022-11-16 14:49:17 -06:00
Jonathan Goodman 97277e74a9 Merged in SL-18332 (pull request #1194)
First pass of Screen Space Reflections

Approved-by: Dave Parks
2022-11-14 18:12:22 +00:00
Dave Parks b6e576c7c2 SL-18190 Cleanup -- convert some vec4's to vec3's (as they really are), remove some unused glsl files. 2022-10-11 20:20:39 -05:00
Geenz Linden db92f95649 Switch away from std::string
API expects const char* anyways.
2022-10-06 15:18:17 -04:00
Geenz be1cdc1aaa Initial pass at adding KHR_debug support
This still needs some work - I'm not super satisfied with the overall structure of the code.  Will continue to iterate as I add in proper RenderDoc support.
2022-10-05 09:48:18 -07:00
Howard Stearns 2082443220 SL-17967 - Git rid of ARB that is in core 2022-09-01 10:58:27 -07:00
Ptolemy 7ac0923e33 SL-17274: Document which shader encodesNormal includes 2022-06-27 14:09:44 -07:00
Dave Houlton 02c71b0ac2 Merge branch 'master' v 6.6.1 into DRTVWR-528 2022-05-26 11:18:44 -06:00
Dave Parks 3564b24e2a SL-17286 Reflection probe alpha/fullbright support. 2022-05-19 22:24:41 -05:00
Dave Parks 3400e5fd30 SL-17284 Reflection probe tuning and optimization take 1 2022-05-16 17:21:08 +00:00
Dave Parks 93260cfeff SL-17283 LLReflectionMapManager prototype. Remove snapshot code related overhead from reflection map renders. Add parallax correction and support for multiple reflection maps. 2022-05-04 16:07:50 +00:00
Dave Houlton 68e09edad0 SL-16386 remove references to (const true) LLGLSLShader::sNoFixedFunction 2021-11-30 17:04:35 -07:00
Dave Parks 28f9fb06a9 SL-16289 Rigged mesh rendering overhaul 2021-11-20 18:49:19 +00:00
Dave Parks d2dce17803 SL-16197 Optimize LLEnvironment handling of shader uniforms. Instrument LLSD. Enable Fast Timers when Tracy is enabled to catch Fast Timer overhead. 2021-10-19 02:26:41 +00:00
Ptolemy 3f4b8423a4 SL-14113: Merge duplicate shader constant for clarity. 2021-04-29 14:17:01 -07:00
Ptolemy e371fdbf31 SL-14113: Remove magic numbers. Take advantage of existing shader #defines injection by extending shader loading to make use of addConstant() instead of hard-coding magic number constants in each GLSL file. 2021-04-29 14:07:57 -07:00