7.0.0.578526 - Second Life Project GLTF PBR Materials Friday, March 3, 2023 Release Notes
GLTF Materials ProjectPlease note that this feature is currently an early Alpha Project stage and only available for use on our Beta grid (Aditi) and then only on specific regions:
Materials1 Materials Adult Rumpus Room (and Rumpus Room 2, 3, and 4) Refer to the “Known Issues” section for more information.
Second Life is excited to expand material support with the ability to import and edit GLTF Physically Based Rendering (PBR) Materials. This format is a widely supported open standard for 3D content creation and transmission. By adopting the GLTF PBR material standard, Second Life can provide interoperability with industry standard content creation tools such as Blender and Adobe Substance Painter, and can guarantee consistent visual results between third party tools and in-world Second Life experiences. For a list of tools and libraries that support GLTF, see https://github.khronos.org/glTF-Project-Explorer/
Note that for this release Second Life will support GLTF PBR materials only. This is the first step into what will eventually become a robust GLTF enabled toolchain.
The GLTF was created by the Khronos Group https://www.khronos.org/ , a standards body responsible for many open standards such as OpenGL, OpenXR, Vulkan, and many others. They are a great resource for learning more about how to create assets and offer recurring webinars and classes. Notably, they have a Nov. 3rd GLTF asset creation webinar https://www.khronos.org/events/how-do-we-solve-the-challenges-of-gltf-asset-creation
Reflection ProbesOne of the requirements for high quality PBR materials is Image Based Lighting (IBL). IBL, as the name implies, uses images of the environment to produce realistic reflections and lighting. These images are automatically generated on demand through the use of Reflection Probes. While Reflection Probes are automatically placed in-world near objects and terrain, probes must be manually placed to achieve the best visual results.
How do they work? Watch this space in future GLTF release notes for informational links!
Reflection Probes will also replace the legacy reflection map that’s applied to shiny/glossy objects with reflections from the environment. While this allows legacy content to exist seamlessly alongside PBR enabled content, this will change the appearance of legacy content. Users can opt-out of this new look by disabling reflections in advanced preferences.
Linear Color SpaceIn order to be compliant with the GLTF specification and conform to industry norms, alpha blending and atmospherics have been moved from sRGB Color Space to Linear Color Space. Expect some generally subtle but sometimes not so subtle differences in rendering of transparent objects and application of atmospheric effects.
Improved VRAM UtilizationIn order to better facilitate the increased number of textures associated with GLTF PBR materials, improvements have been made to the viewer texture streaming and VRAM utilization. Textures should load more quickly and should downres less often, and Second Life should make full use of available VRAM.
We Need Your HelpWe want to be able to get GLTF materials out the door faster and we need your help to make sure we don’t break Second Life in the process!
Please file any bug reports in our official Jira and first, review the currently open issues to avoid any duplicate reports. https://jira.secondlife.com
Known Issues: The following are known issues that will be addressed before a full release:
Degraded performance Degraded stability Lower quality water reflections/refractions and reflection/refraction visual artifacts Poor mixing of reflection probes (seams visible in reflection maps) Deleting a reflection probe does not always take affect Sometimes an object will render the wrong GLTF material until it receives a full update from the simulator Texture repeats/offsets/rotations do not work on GLTF materials when set from the UI (works when set via LSL) Some material parameter values will have no effect (tinting to “white”, setting metalness/roughness to “1”, etc) llSetLinkPrimitiveParams does not work as expected with GLTF materials (always modifies prim that’s running the script) llSetRenderMaterial does not work if a material has been edited on an object after being applied from inventory Occlusion culling does not work Editing PBR materials across region borders does not work Material assets and related LSL APIs do not respect permissions SL-18772 [Win32] Crash: LLGLSLShader::bind(1032) OSX crash when turning on Shaders Resolved Issues SL-19279 Improve performance from SL-19265SL-19277 Water is too dark at the horizonSL-19276 fullbright alpha blended objects should not reflect light.SL-19269 Texture animation on PBR texture transforms has undesirable effectsSL-19265 Numerical accuracy issue in GLTF texture transformsBUG-233411 PBR Material creating a foggy haze on model - for DavePSL-19233 [PBR] The attached HUDs are not visible on low graphics settingsSL-19229 Reimplement water glow and determine what it looks likeSL-19228 Investigate if gLTF texture transform is not correctly appliedSL-19226 Reimplement water fresnel and determine what it looks likeSL-19220 Sphere probes do not immediately update in reflection probe displaySL-19218 Hard transition between manual and automatic probesBUG-233382 [PBR] Moon! What are you doing there?BUG-233381 [PBR] Legacy materials - Alpha blended texture faces don't show specular highlightsSL-19201 [PBR] Media brightness is different between prims using texture and material on a faceSL-19200 No-copy materials cannot be moved on objects using drag and dropSL-19195 World map sea tiles not loading if emptySL-19191 [PBR] [Mac] Crash on startup Mac M1SL-19187 Render Metadata->Occlusion and Shadow Frusta not functioning correctlySL-19186 SSR affected by Render Metadata settingsSL-19185 Reflection Probes generated on water under terrainSL-19183 PBR mapping scale values start on zeroSL-19181 "Glow" applied to a PBR material ignores emissive channelSL-19171 Erratic Render Metadata->OcclusionBUG-233342 HUDs hover-text blurry in PBR project viewerBUG-233311 [PBR] This is pre-existing bug got worse...BUG-233314 static mottled texture in viewerSL-19150 Real time reflections are stutteringSL-19148 HUD: Textures are darkerSL-19146 Backwards facing normals become front facing.BUG-233285 Object Culling vs LOD stuck for objects entering the viewSL-19124 Reflections of water in reflections appear to be rotatedSL-19110 [Contribution] Fast hashing classes for use in place of the slow LLMD5SL-19081 Fix assert when uploading textureSL-19029 [PBR] Property Lines are displayed through the avatar and itemsSL-19023 Shiny skyscrapers are marred by automatic reflection probes.SL-19022 Reflection probe circles on the waterSL-19015 Visual polish -- banding and brightnessSL-19014 Handle edge case in multiple selections when setting overrides from client when material ID is undefinedSL-19012 Newly encountered material does not load on prim when applied via scriptSL-19010 BugSplat Crash #1155937: Second Life Project GLTF PBR Mat...!0x100d3b000SL-19006 Document changes to LSL edge cases for clearing materials on the wikiBUG-233240 [PBR] - Unable to upload .gltf material files. Save buttons are greyed out.SL-19002 Handle edge case in client networking when setting overrides from client when material ID is undefinedBUG-233202 [PBR] - Show Hidden Selection is always onSL-18983 [PBR] Some HUDs do not display their menu itemsSL-18966 HUD: Hollow objects show inside texturesSL-18965 HUD: Alpha textures completely transparentSL-18962 [PBR] "You don't have permission to view this material" notificationBUG-233241 [PBR] Alt-camming shows incorrect horizon handling and ghost imagesSL-18947 No-copy/no-modify materials can break material floaterSL-18932 Canceling material selection removes previousSL-18916 Projector sometimes does not project through a semi-transparent objectSL-18915 Property lines should be obscured by terrain.SL-18908 Media not observed on PBR facesSL-18907 Add Reflection Probe Ambiance slider to Personal Lighting FloaterSL-18887 Material size is not displayed in materials pickerBUG-233110 [PBR] - Very transparent faces can no longer be selected through Edit>Select FaceSL-18869 GLTF framerate is poor on GTX 1080BUG-233089 [PBR] - GLTF material importer silently adds alpha channel to base color mapBUG-233082 [PBR} - Strange drag'n drop of plain textures on faces in PBR modeBUG-233081 [PBR] - Highlight transparent not working on alpha Mask PBR materials.BUG-233080 [PBR] - PBR materials with alpha mode set to Opaque don't cast shadows.SL-18849 Screen Based Reflections affected by HUDsSL-18820 Build floater should preserve GLTF transforms when changing the PBR materialSL-18811 Manual reflection probes aren't completely removedBUG-233041 [PBR] - Highlight transparent texture still missingSL-18795 Overrides are not applied to one faceSL-18790 Transparency shadowsBUG-233017 [PBR] - Disabling reflection probes render highly reflective sufaces blackBUG-233016 [PBR] - Switching Reflections from Disabled to Static modes enables Realtime insteadBUG-233018 [PBR] - Render Metadata > Physics Shapes is non-functionalSL-18783 Improve Reflection Probe Debug Display and move to Build menu.SL-18782 Make "Reflection Probes" checkbox implicitly make prims invisible and phantom and educate usersSL-18780 Shadows are darker on GLTF viewer.SL-18779 Water is still lit when all light source are offBUG-233008 [PBR] If upload fails, material upload panel becomes stuckSL-18771 LSL event CHANGED_RENDER_MATERIAL should trigger for any GLTF material changeSL-18769 Switching the material ID in the build floater does not preserve transformsSL-18768 PBR texture transform controls should be disabled when no PBR material is setSL-18764 The 'Horizontal offset' option is grayed out after removing align media in the 'Edit' floaterSL-18762 The transparency plane has a different shade from the solid planeSL-18760 Built in bump maps do not render.SL-18746 Some controls for editing in build floater may have been displaced or missingSL-18745 assertion triggered when shutting down: "ASSERT (0 == sAllocatedBytes)"SL-18742 Upload materials option is missing from inventory's menuSL-18741 Bulk upload for gltf materialsSL-18740 Texture animations are not working on GLTF materialsSL-18739 Shininess texture does not loadSL-18732 GLTF texture transform controls in build floater are jumpy/unresponsiveSL-18731 Ambiance set to 1 can cause increasing light feedback loopSL-18730 [OSX] Object part looks damaged under the waterSL-18728 Save Material to Inventory failedSL-18727 Right-click any face > Save material to Inventory will save the material from face 0SL-18725 Error message for use of fully permissive texturesSL-18719 BugSplat Crash #1128468: SecondLifeViewer!LLGLSLShader::bind(1012)SL-18710 The texture and colors are not displayed properly in the "GLTF PBR Materials" viewerSL-18708 Crash at LLDrawPoolWLSky::renderHeavenlyBodies(467)SL-18704 llSetLinkRenderMaterial will not overwrite an existing override parameterSL-18703 Chris outfit is light by a point light on the opposite side. (Bumpiness texture does not load)SL-18702 Glowing from objects appears through HUDsSL-18701 BugSplat Crash: SecondLifeViewer!LLSD::get(886)SL-18700 Shiny-full bright objects not rendering on WindowsBUG-232961 [PBR] Particles that use a texture just render as squares on the PBR viewerBUG-232960 [PBR] "Ultraspace" particles do not render correctly on the PBR viewerBUG-232959 [PBR] Avatar name tags render on top of HUDsBUG-232953 HUD texture depth incorrectly calculated in DoF blurSL-18683 Reflection has concentric circles at certain anglesBUG-232945 [PBR] Textures flash constantly on the PBR ViewerSL-18680 HUDs not showing specular mapsSL-18678 Greg default outfit is too shinySL-18677 Viewer should hide/disable materials UI when materials caps are not availableSL-18671 Environment looks too bright underwaterBUG-232943 [PBR] Bird-E avatar face renders washed out on the PBR viewerBUG-232942 [PBR] Unkbown crash: SecondLifeViewer!?A0x5f7a2cb5::makeMap(816)SL-18666 Allow tabbing between fields in Material editor floaterSL-18664 The horizon line is broken on the 7.0.0.576664 buildSL-18662 Ambient Occlusion adds spots to scene when alt-zooming inSL-18648 Only fully permissive textures should be allowed in a MaterialSL-18647 Make default Material Editor match a New MaterialSL-18634 GLTF Texture transform does not serialize when base color override is nullSL-18632 Allow setting GLTF texture transforms from build floaterSL-18630 Automatic probes generating underneath regionSL-18627 Make space for pbr transform controls in build floaterSL-18625 Material cannot be reset in material file picker windowSL-18622 Materials in inventory becoming blankSL-18616 Should be able to change Alpha mode to Opaque if the texture is 24-bit.SL-18615 [PBR] beacons do not renderSL-18614 Glitch in the Reflection probeSL-18602 Assigning a material doesn't drop overridesSL-18595 Copy&Paste support for materialsSL-18583 In live pbr editor texture picker's 'Cancel' doesn't work correctly for multi selectionBUG-232858 [PBR] - HUD hover text not the same color as specified.BUG-232859 [PBR] - Hover text of rezzed objects bleeds through HUDs.BUG-232861 [PBR] - Attached light sources bleed through HUDs.BUG-232862 [PBR] - Only one shadow is rendered from 2 projector light sourcesBUG-232857 [PBR] - Legacy transparency is rendering opaque underwater.SL-18560 The new Material is saved in the inventory with local loaded textures, which end up greySL-18559 Material preview does not work on previously selected objectSL-18548 BugSplat Crash #1113740: SecondLifeViewer!<lambda_2a35147a9611f835a719dfb058ed147a>::operator()(1193)SL-18532 llSetRenderMaterial does not remove overridesSL-18531 Swatches do not look gray in the edit tools of an object when selecting Multi-select object faces with different materialsSL-18523 The "Normal" and "Metallic/roughness" PBR Option radio buttons parameters are not saved after switching to the "Color/emissive" radio button option and back in the "Edit" mode "Texture" tabSL-18522 ”Alpha blending” or “Alpha masking” option is cut off when selected from the ”Alpha mode” drop-down when uploading a MaterialSL-18520 GLTF Material parameters cannot be set to default valuesSL-18518 Move LLGLTFMaterialList::getMaterial work to background threadSL-18513 Instrument and profile LLGLTFMaterialSL-18500 Live Material Editor reverts to base asset values when elements lose focusSL-18493 Material edits are not taking effect.SL-18485 Use KHR_texture_transform for rendering of GLTF materialsSL-18483 [AMD] Manual Reflection probes are missingBUG-232813 [PBR] - Point lights don't lit alpha blending materials. (GLTF & Legacy Materials)SL-18472 Assert on changing sphere to box when overrides presentSL-18471 Depth of Field effects HUD attachmentsSL-18469 GLTF overrides only apply to face 0SL-18466 BugSplat Crash #1109811: SecondLifeViewer!LLFloaterReg::findInstance(133)SL-18465 Crash: LLFloaterReg::findInstance(133) on Material EditorSL-18454 HUDs with alpha mask applied are brighterSL-18451 Override tint, then replace material, fails to show new material.SL-18450 assertion in getGLTFRenderMaterialSL-18448 Material Editor and Tools floater UI adjustments for overridesSL-18444 Live Material Editor doesn't reflect current selectionSL-18443 Cannot apply material from inventory after editing material on objectSL-18442 Emissive override parameters don't takeSL-18441 "Override" UI cleanupSL-18435 Sort out Textures vs. Materials vs. PBR names in the Edit toolsSL-18414 Selecting Cancel after 'Edit PBR Material' clears materialSL-18391 GLTF Materials lifetime managementSL-18377 Make viewer power nap instead of burning powerSL-18376 The default hairbase (eg. Ruth) does not render.SL-18368 Reflection probe is shading the water behind this treeSL-18367 GLTF viewer incorrectly renders some fullbright objects purpleSL-18362 Login screen is black on MacSL-18346 Build menu PBR editing texturesBUG-232740 PBR - Auto updating locally loaded GLTF materials not workingSL-18340 Transparent GLTF materials do not respect spot light cone angleSL-18326 Material functionality in a NotecardSL-18316 Attachments to HUD are transparentSL-18313 One or more of the terrain textures is gray (sometimes)SL-18293 Broken debug displaysSL-18244 [Server] Materials in object's inventory should respect permissionsBUG-232703 PBR - Ambient Occlusion different from PBR ON vs PBR OFFSL-18233 Double clicking material in object shows notecardSL-18229 PBR: HUDs with Materials should not receive shadowsSL-18200 Texture with Alpha mask gets lighter when PBR is enabled.SL-18197 Materials folder doesn't appear on loginBUG-232675 PBR: Blended alpha flickering issuesSL-18187 32-bit builds broken due to llmath.lib not being accessible.SL-18161 Materials aren't listed in Preferences UploadsBUG-232636 [PBR] Huge drop in performance after recent changesBUG-232626 Bakes On Mesh textures not showing in-world when selected as Albedo mapSL-18141 Clothing and Body parts cannot be wornSL-18134 Rename Albedo to Base Color to be in line with the GLTF spec.SL-18132 Camera creates shadowSL-18128 Objects without normal maps are invisible on MacSL-18125 Material asset doesn't exist for Default PermissionsSL-18122 Some settext is not rendering on Materials viewer.SL-18120 A texture's Specular > Environment influences the color and texture when PBR is enabledBUG-232599 PBR - MikkTSpace synced workflow. Are we there yet?BUG-232577 PBR: Random visual corruption on rotation gizmo.BUG-232564 The faces of objects using PBR material does not reflects on waterBUG-232567 PBR: Edges of spotlight projection textures unexpectedly bright, causing a seam at edge.BUG-232563 Normal map compression artifacts ruin highly reflective smooth surfacesBUG-232559 performance regression from test 7.0.0.574607 to 7.0.0.574697BUG-232554 PBR: Legacy texture items with transparency sometimes ignore lightingBUG-232560 [PBR viewer] DRTVWR-563 merge screwed up texture fetchingSL-18059 Shiny objects show black sky in reflection while sky is not black.BUG-232556 PBR: Cubemaps on PBR-enabled items are unexpectedly soft.SL-18044 No-copy textures not applying to objectsSL-18039 Material upload floater too large on small screensSL-18038 Texture tab UI overlapsBUG-232538 PBR: Latest AMD Drivers (22.7.1 +) cause viewer to CTD prior to getting to login screenSL-18023 Material reaction to prim path cutsSL-18008 Add "Save/Edit" buttons to right click menu for materials.SL-18001 Add LSL functionality for setting Material by asset ID/nameSL-17987 New Material Emissive is white instead of blackSL-17975 Materials abnormally affected by lightsSL-17967 BugSplat Crash #1066730: Second Life Test!LLViewerShaderMgr::setShaders()(0)SL-17940 Add PBR support to rigged attachmentsSL-17937 PBR Material Batching is BrokenSL-17930 PBR SSAO not appliedSL-17929 PBR sunlight not reflecting in surfaceSL-17927 RenderObjectBump=0 causes PBR to not function despite being enabled.SL-17888 ORM (Occlusion, Roughness, Metal) all should be clamped between 0.0 and 1.0SL-17872 Object tagged as PBR is not tagged as PBR for others in the regionSL-17865 Sharing Material doesn't workSL-17855 PBR objects not preserved upon logoutSL-17766 Refactor PBR IBL from softenlight into common BRDF functionsSL-17765 Add emissiveRect to class 3 light shadersSL-17764 Add light shaders to class 3, stub in GBUFFER_FLAG_HAS_PBR testSL-17763 Debug spotLight and multiSpotLight issuesSL-17762 Add support for PBR materials for spot light shaderSL-17723 Remove use of UDP image fetch (RequestImage message) in lltexturefetch.cppSL-17706 Remove ability to disable ALMSL-17705 PBR rendering backwards compatibility pass.SL-17704 Make pbropaque handle materials that don't have a normal mapSL-17703 Apply sun/moon lighting to PBR materials.SL-17702 Add support for PBR materials to point light shaderSL-17701 PBR Transparency SupportSL-17699 Add filter to texture picker for legacy textures and PBR texturesSL-17697 Integrate override system with build floater and material editorSL-17693 Materials applied to objects are not being downloadedSL-17690 Uploaded material asset references wrong texture UUIDsSL-17689 Materials asset uploaded to SL gets null UUID on subsequent loginSL-17650 Add Material as a filter option to Inventory filter floaterBUG-232285 Beacons can flicker and disappearSL-17640 Materials Upload UISL-17623 Revise right-click menu on inventory foldersSL-17619 Add embedded texture support to GLTF ImportSL-17605 Make Build->Upload->Material open Material Editor with loaded materialSL-17586 Stub out PBR Material Editor FloaterSL-17574 Add "Dynamic Probes" checkbox to advanced graphics preferencesSL-17573 Add "Include Avatars" checkbox to reflection probesSL-17551 Add a selection mode that excludes reflection probes.SL-17523 Add Reflection Probe Ambiance to Windlight SettingsSL-17476 viewer fetches material assetsSL-17472 Add "PBR" checkbox under "ALM" checkboxSL-17416 User override reflection probes.SL-17325 Add an applier for inventory material.SL-17287 Reflection probe tuning and optimization take 2SL-17286 Reflection probe alpha supportSL-17285 Reflection probe backend support and frontend polishSL-17284 Reflection probe tuning and optimization take 1SL-17283 Reflection probe prototypeSL-17277 Implement a material pickerSL-17274 Add PBR Opaque ShaderSL-17273 Implement Draw Pools for PBR Opaque and AlphaSL-17233 Texture map feedback from Content CreatorsSL-17214 Create a new loader/importer for gltf filesSL-17198 add GLTF material type and asset types to viewerSL-17113 Choose gltf library for use in viewerSL-17111 Define format for subset of gltf that we will accept for material specSL-16436 Assert when RenderDebugGL enabledSL-16182 Frame stall in LLAudioDecodeMgr::Impl::processQueueBUG-231112 [EEP] Water lighting is wrong at certain angles (take 2)SL-15390 Remove dead code behind LLGLSLShader::sNoFixedFunction booleanSL-15110 Stars rendering at different location / rotation with ALM onSL-14885 Support option for unconstrained mousewheel zoomSL-13124 Sun shadows disappear at certain camera orientationsBUG-227856 GL_QUADS was deprecatedSL-12223 [EEP] Low-mid graphics preset does not render underwater haze for objects.BUG-227673 issues with bakes-on-mesh and alpha modesBUG-227325 [EEP] A strange gap is displayed between the sky and water