Materialx upgrade#33485
Conversation
📦 Bundle sizeFull ESM build, minified and gzipped.
🌳 Bundle size after tree-shakingMinimal build including a renderer, camera, empty scene, and dependencies.
|
|
This is ready for review: @sunag. I just added textile support.
|
|
FYI: I've just identified a bug in the reference renderer MaterialXView with regards to some UV issues: AcademySoftwareFoundation/MaterialX#2881. This bug has likely leaked into ThreeJS because I was trying to match those results exactly. I will try to patch this in the next day or so. |
|
Okay, I've completed my investigation of the UV space differences between MaterialX, Blender, ThreeJS. It turns out that ThreeJS allows both "bottom-left" and "top-left" UV spaces depending on how you load the assets. If you load glTF assets (meshes/textures), you get "top-left" which is the glTF native uV space, but if you create ThreeJS native assets and materials outside of the glTF loader, you get "bottom-left" uv space. Full details here: #33531 What this means is I will support both UV spaces in the MaterialXLoader so it can work on glTF and native ThreeJS assets. |
…tic_ior node implementation.
6add2e7 to
6cc970a
Compare
|
Amazing work here Ben! |
|
Some materials like Could there be some difference in the code or material sample here?
https://material-fidelity.ben3d.ca/
|




Description
fixes #20541
The goal is to increase the parity of the MaterialX implementation. I guided this improvement via this Fidelity Test website that compared, using +300 MAterialX samples, the reference MaterialX Viewer compared to the current Three.JS MaterialXLoader and my improved MaterialXLoader.
https://material-fidelity.ben3d.ca
You can see that the new loader has basically perfect MaterialX reproducibility for pretty much everything:
The number of bugs addressed is quite massive:
It also introduces these new features:
Updated MaterialX noise example with all noise types showcased:
This contribution is funded by Land of Assets