Raised the minimum C++ version for MaterialX builds to C++14.
Upgraded the PyBind11 library to version 2.10.4, raising the minimum Python version to 3.6, and enabling support for Python versions 3.11 and beyond.
Improved the performance and convergence of GGX importance sampling in GLSL generation, leveraging insights from the HPG 2023 paper by Jonathan Dupuy and Anis Benyoub.
Added new Unified Noise, Color Correct, and Bump nodes, providing artistic interfaces over the standard procedural, adjustment, and geometric primitives.
Fixed OpenGL errors when unbinding geometry in MaterialXView on MacOS.
v1.38.5
1 year ago
Added
Added a refraction approximation for transmissive surfaces in GLSL, selected by the hwTransmissionRenderMethod generator option.
Added support for generalized Schlick transmission in GLSL and OSL.
Added support for code generation from material nodes.
Added a specialization of GlslShaderGenerator for Vulkan GLSL generation.
Added the Chess Set example from the Karma: A Beautiful Game tutorial. Contributed to the MaterialX project by SideFX, original artwork by Moeen and Mujtaba Sayed.
Added static and dynamic analysis tests to GitHub Actions builds.
Added support for GCC 12, Clang 13, and Clang 14.
Changed
Switched to relative shader includes within the MaterialX data libraries, enabling custom folder names in distributions.
Removed hardcoded references to "libraries" in calls to GenContext::registerSourceCodeSearchPath. (See Developer Notes below for additional details.)
Improved the accuracy of mx_ggx_dir_albedo_analytic and mx_fresnel_conductor in GLSL.
Updated the PyBind11 library to version 2.9.0.
Fixed
Aligned GLSL and MDL implementations of 'fractal3d' with OSL.
Fixed MDL implementations of 'sheen_bsdf' and 'thin_film_bsdf'.
Fixed an error in code generation from multi-output node graphs.
Developer Notes
This release removes hardcoded references to "libraries" in calls to GenContext::registerSourceCodeSearchPath within the MaterialX codebase. Applications with their own custom code generators should make the same change, removing hardcoded references to "libraries" in calls to GenContext::registerSourceCodeSearchPath. See pull request 877 for coding details.
v1.38.3
2 years ago
Added
Added an inheritance structure for versions of Autodesk Standard Surface.
Added versioning and customization support to MaterialX namespaces in C++.
Added preprocessor definitions for the API version to MaterialXCore.
Added color transform methods to the Image class.
Added an initial ClangFormat file for the MaterialX codebase.
Added initial support for FreeBSD.
Added support for Xcode 13.
Changed
Refactored BSDF handling in shader generation, allowing for more flexible and efficient vertical layering.
Optimized GLSL implementations for GGX specular, moving common computations to tangent space.
Refactored the TextureBaker API for clarity and flexibility.
Merged the ViewHandler and viewer camera into a new Camera class in MaterialXRender.