OpenUSD icon indicating copy to clipboard operation
OpenUSD copied to clipboard

UsdImaging doesn't handle Instanceable PointInstancer-via-Inherits

Open chrisrydalch opened this issue 6 years ago • 2 comments

Description of Issue

Adding PointInstancers to an asset's class primitive (in this case water droplets), and also scoped under a variantSet, causes the PointInstancers to not display. If we use instanceable references, the droplets display just fine.

What's interesting is that if we de-instance our payload prims, then the inherited PointInstancers display (see scene/pilesOfApples_partialDeinstance.usda in attached scene), which has a few apples' payloads deinstanced:

screenshot-window-2020-03-14-033842

Steps to Reproduce

  1. Download the example (apples_and_inherits_workflows.zip)
  2. Open scene/pilesOfApples_partialDeinstance.usda in usdview
  3. Observe how only the few apples w/ de-instanced payloads display droplets, even though the prims are present on all of the apples

Thanks!

chrisrydalch avatar Mar 19 '20 02:03 chrisrydalch

Filed as internal issue #USD-5943

jilliene avatar Mar 23 '20 18:03 jilliene

Hi @chrisrydalch. I'm curious if your issue here would be fixed by @roggiezhang-nv's change #3830.

We observed that the predicate for point instancer prototypes was trying to identify imageable subgraphs, allowing prims with undefined ancestors but there was no way to do this for abstract ancestors. You're example isn't exactly the situation we ran into, but it might be similar.

nvmkuruc avatar Oct 24 '25 14:10 nvmkuruc