I have a kinefx rig which is failing to be parsed into USD via the sop character importer. I've narrowed it down to the sop character importer > convert to agent > transfer pose > sort roots node. Specifically the function:
getdescendants(0, pt, /* maxdepth */ -1, all_children, all_parents);
I can find zero documentation for this function.
The rig I'm using is for splitting a product up, and has quite a few joints right at the end of the chain:
On the attached image the green blob at the bottom shows where I've fanned them out so you can better see how the parenting works i.e. all parented to a single joint. The green blob at the top is the root.
If I remove these fanned joints then everything works as expected. as soon as they're there the function never completes (it's run for over an hour, and still nothing - also, even if it did, this is far from ideal as I believe it would need to compute per frame).
Can anyone suggest anything I can do to get decent performance back.
Many thanks,
Jules