Please 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 1 (through 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.
One 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 Space
In 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 Utilization
In 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 Help
We 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)
Resolved Issues
SL-18963 Write unit test for material asset validation
SL-18947 No-copy/no-modify materials can break material floater
SL-18932 Canceling material selection removes previous
SL-18907 Add Reflection Probe Ambiance slider to Personal Lighting Floater
SL-18887 Material size is not displayed in materials picker
BUG-233110 [PBR] - Very transparent faces can no longer be selected through Edit>Select Face
BUG-233089 [PBR] - GLTF material importer silently adds alpha channel to base color map
BUG-233082 [PBR} - Strange drag'n drop of plain textures on faces in PBR mode
BUG-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-18820 Build floater should preserve GLTF transforms when changing the PBR material
SL-18532 llSetRenderMaterial does not remove overrides
SL-18531 Swatches do not look gray in the edit tools of an object when selecting Multi-select object faces with different materials
SL-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" tab
SL-18522 ”Alpha blending” or “Alpha masking” option is cut off when selected from the ”Alpha mode” drop-down when uploading a Material
SL-18520 GLTF Material parameters cannot be set to default values
SL-18518 Move LLGLTFMaterialList::getMaterial work to background thread
SL-18500 Live Material Editor reverts to base asset values when elements lose focus