My goal: Rebuild the latest emHdBindings related files with the ThreeJsRenderDelegate from the Autodesk fork branch and have it display USD assets that have UsdPreviewSurface materials.
Current result: I’m able to build all of the files and display geometry information however I get the following error when trying to display assets with UsdPreviewSurface materials
Invalid info:id UsdPreviewSurface node: /RedMetalMaterial/UsdPreviewSurface : this comes from this line of code. The shaderReg at this point in the code only knows about light related identifiers (
SphereLight ). Why doesn’t this shaderReg know about UsdPreviewSurface nodes? How can I add that info / initialize the registry with that info?
ChatGPT’ing led me to believe that usdImaging is not being included in the build, but it does show up as ON when running the python build script listed on the github page.
Lastly there is another error that shows up around plugin management :
USD/pxr/usd/ndr/registry.cpp -- Failed verification: ' pluginFactory '. This comes from this line. Is this related? Does support of UsdPreviewSurface materials need something from this pluginFactory?
Since UsdPreviewSurface materials show fine on my local normal build of USD, I assume I don’t need any special plugins or environment variables to include the support of UsdPreviewSurface materials in general, is it possible this is necessary for the web? Am I looking in a completely wrong place? Is this supposed to be supported / a known issue?
Thanks so much for any help! (Will cross post in #wg-usd-web)