Autodesk / maya-usd

A common USD (Universal Scene Description) plugin for Autodesk Maya
777 stars 201 forks source link

Fix a bug where newer RenderMan shading nodes would be skipped when exporting Usd from Maya #3999

Open katpet opened 1 week ago

katpet commented 1 week ago

Fix a bug where newer RenderMan shading nodes would be skipped when exporting Usd from Maya. There is a hardcoded map in maya-usd/lib/mayaUsd/fileio/shading/rfmShaderMap.h, and newer nodes that don't appear in that map were being skipped. I don't think the map is necessary for nodes that don't actually require a name mapping; it would be difficult to keep the list up to date. This change adds some code that falls back to assuming the rendermanForMaya writer is appropriate for nodes that would otherwise have been skipped.

katpet commented 1 week ago

This was my first time digging into this code, so there may be a better way to go about this. Or there may be some conditional necessary before going ahead and using the rendermanForMaya writer for unknown nodes. This change does fix the bug for my examples though. Let me know if you need advice on reproducing the problem.

seando-adsk commented 1 week ago

@katpet Thank you for submitting a pull-request, however before proceeding you will need to sign the Contributor License Agreement (CLA).

Sean