Added
- Asset resolver support (thanks, @expenses!)
- Command line option to print licenses
- Display name attribute for most glTF objects
- Dynamic emitMtlx Sdf file format argument
- Explicit documentation of GUC_BUILD_USDGLTF to README (thanks, @expenses!)
- Help (-h / --help) command-line option
- Support for KHR_materials_unlit extension
- Third-party licenses to LICENSE file
Changed
- Default input values are not authored anymore in MaterialX networks
- Default material binding is now used when MaterialX is disabled (thanks, @lanxinger!)
- Fallback tangents are now only generated if MaterialX is enabled
- Improved prim naming heuristics
- MaterialX 1.38.6 is now required
- Prebuilt binaries do not require a specific Python version anymore
- Primvar naming does not emit suffix for index 0 anymore
- Removed dependency on OpenImageIO (stb_image is used as a fallback)
- Removed explicit color space transformations
- Removed glTF PBR implementation options
- Renamed Sdf plugin id from 'glTF' to 'gltf' to conform with other projects
- Reorder command line arguments to conform with UNIX conventions
Fixed
- False-positive MSVC warning caused by Boost macros
- Incorrect UsdPreviewSurface Sdf value types
- Incorrect warning about greyscale texture alpha channel
- Material name not being preserved if it starts with an underscore
- Missing '.glb' extension in Sdf plugin definition
- Missing UsdLux extents
- Typo in Sdf plugin that could prevent file reading
- UsdLuxShapingAPI not being applied
Added
- Binaries for USD v23.08 with MaterialX 1.38.7
- Metainfo that UsdGlTF plugin does not support writing
- Support for KHR_materials_emissive_strength extension
- Support for KHR_materials_iridescence extension
- Support for KHR_materials_variants extension
- Support for KHR_texture_transform extension
- Warnings about unsupported optional extensions
Changed
- Disabled file glTF PBR implementation option on USD v23.08+ due to an internal crash
- Renamed 'tangentSigns' primvar to 'bitangentSigns'
- Updated Ecosystem Limitations document with latest USD/MaterialX versions
Fixed
- Normalmap UsdUVTexture:scale[3] not matching USD complianceChecker
Added
- CMake config file installation for libguc
- Custom data for generated mesh attributes
- Display color estimation from material properties
- Documentation on Ecosystem Limitations and Structure Mapping
- Extent computation
- GitHub Actions builds
- Omittance of MaterialX multiplication nodes with factor 1
- Option to export MaterialX glTF PBR as file
- Sdf file format plugin
- Support for glTF libraries (no scenes)
- Test suite with graphical tests
- Transmission as alpha-as-coverage to UsdPreviewSurfaces
- UsdModelAPI metadata
- USDZ export
- Version information to header, executable and converted assets
- Workaround for glTF assets referencing the wrong texture channel for alpha
Changed
- CMake 3.15 is now required
- MikkTSpace is now linked statically
- Refined output USD file structure
- Renamed
guc_params
struct toguc_options
- Updated USD version to 22.11
- Vertex colors are now stored as dedicated primvars (not as displayColors)
- Vertex opacities are not generated for opaque materials
Fixed
- Bug with base64 output buffer size estimation
- Erroneous C11 compiler requirement
- Fallback tangent generation
- Flat normals and tangents being attempted to generate for line and point topologies
- Flat normal generation not unindexing primvars
- Handling of MaterialX C++ exceptions
- Inactive scenes being visible
- Incorrect MaterialX glTF PBR default values
- Link errors with Boost and TBB (thanks, @ix-dcourtois!)
- Location of MaterialX and OIIO libraries (thanks, @ix-dcourtois!)
- MaterialX exception for very small or large float values
- MaterialX inputs having multiple data source attributes
- Missing MaterialX vertex color multiplication in case of missing base color texture
- Mtlx-as-UsdShade error with USD 22.11
- Multiple compiler warnings
- Normal map tangent handling
- Position independent code not being enabled for static library builds
- Shared library symbols not being exported on Windows (thanks, @ix-dcourtois!)
- USD MaterialBindingAPI schema not being applied
Initial release