If we detect that there are material attributes on a non-material type location, we create a child material which will have a naming conventions as follows: `<parentPrimName>_<originalAssignedMaterialName>_resolved`.
Such that in a scene:
`/root`
`/root/cube` Originally Assigned Material = `/root/materials/metal`
We would by default make the child material named: `cube_metal_resolved`.
Making a Material prim (along with the shading network beneath):
`/root/cube/cube_metal_resolved`
There is also some support for customising this via an attribute:
`info.usdExport.resolvedMaterialName`, where if set to a non empty string we'll use that instead.
Added a new section to the UsdExport docs to describe this behaviour.
Actual behaviour
When running the material through the MaterialResolve node, the attributes are converted from a separate SceneGraph location to a group attribute on the existing geometry.
Workaround
Unknown.
Reproduced by support
This bug has been reproduced in:
Katana 6.5v1 - Windows 11 / CentOS7
Katana 6.0v4 - Windows 11 / CentOS7
Katana 5.0v7 - Windows 11 / CentOS7
Katana 4.5v7 - Windows 11 / CentOS7
Katana 4.5v1 - Windows 11 / CentOS7
Unable to reproduce bug in:
Katana 4.0v1 - Windows 11 / CentOS7
Earliest version tested
Katana 4.0v1 - This feature did not exist before this version