Support Dispersion in Standard Surface to glTF PBR#2636
Merged
jstone-lucasfilm merged 4 commits intoAcademySoftwareFoundation:mainfrom Oct 30, 2025
Merged
Support Dispersion in Standard Surface to glTF PBR#2636jstone-lucasfilm merged 4 commits intoAcademySoftwareFoundation:mainfrom
jstone-lucasfilm merged 4 commits intoAcademySoftwareFoundation:mainfrom
Conversation
Signed-off-by: Jonathan Stone <jstone@lucasfilm.com>
Signed-off-by: Jonathan Stone <jstone@lucasfilm.com>
jstone-lucasfilm
approved these changes
Oct 30, 2025
Member
jstone-lucasfilm
left a comment
There was a problem hiding this comment.
This looks great to me, thanks @bowald, and let's save the documentation of missing inputs for our future Technical Artist Guide, which will be more visible to artists than comments in our data libraries.
96c5870
into
AcademySoftwareFoundation:main
32 checks passed
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
closes #2585
This PR adds
dispersioninput togltf_pbrand a translation fromtransmission_dispersionin standard surface to glTFs equivalent.Note
Dispersion in this PR is only an input to gltf_pbr, it is not implemented in any render backends.
This is similar how dispersion is treated in OpenPBR and Standard surface, as they are also missing implementations. For more info, check Issue: #2202 and PR: #2203.
The motivation to add this is to be able to bake dispersion inputs into gltf_pbr even if we cant render this is the MaterialX Viewer.
Dispersion in gltf
number0From KHR_materials_dispersion
Translation from Standard surface to gltf_pbr
The translation is implemented as
0.0 if transmission_dispersion==0.0 else 20.0/transmission_dispersionDiscussion
Dispersionunder theuifolderDispersionas it seems like we add folders based on extensions. However, I think it may be added toVolumeand orTransmissionas you need the volume extension as well as transmission, and ior extensions to use dispersion. But perhaps this is a separate topic all together, how to group phenomenon's so it makes sense from an artistic level,.