Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Incorrect behavior in Hydra when changing a variant on a shader #1487

Closed
sirpalee opened this issue Apr 8, 2021 · 1 comment
Closed

Incorrect behavior in Hydra when changing a variant on a shader #1487

sirpalee opened this issue Apr 8, 2021 · 1 comment

Comments

@sirpalee
Copy link
Contributor

sirpalee commented Apr 8, 2021

Description of Issue

We found an incorrect behavior in Hydra when changing a variant on a shader, which makes the Arnold render delegate crash. (Autodesk/arnold-usd#717). Attaching a file to recreate the issue: variant_crash.zip.

arnold_vari_hang_modified.usda, where the variant is on the material, changing the variant will cause the following (this is the expected/correct behavior):

Calling HdRenderDelegate::DestroySPrim on the material
Calling HdRenderDelegate::CreateSPrim to create a new material (and syncing the material)
Calling HdMesh::Sync to let the polymesh know the material id has changed

arnold_vari_hang.usda, where the variant is on the material, changing the variant will cause the following:

Calling HdRenderDelegate::DestroySPrim on the material
Sync finishes, and the next iteration of the render pass is requested
Arnold crashes because the material has been destroyed, Arnold nodes deleted, and the polymeshes point to an invalid shader

System Information (OS, Hardware)

CentOS 7

Package Versions

USD 21.02 / #6be11aafc203cc97ffca3e934b92c9a497b5d103

@jilliene
Copy link

jilliene commented Apr 8, 2021

Filed as internal issue #USD-6647

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants