@Vision Pro Engineer Thank you for the reply. I think I have this figured out now. To answer your questions.
The characters have both the Model and Skeleton components in RCP3.
The entity itself is just a root node with a reference to the prototype (SkeletonMage).
I'm exporting via the file menu File > Export Selected > Reality
I believe the problem that I'm running into is that my findModelEntity method is exiting out too soon for reality files. The Model and Skeleton are expected to be on the second Rig_Medium. It does this correctly for the entity loaded via USD. For the entity loaded via Reality File, it sees that SkeletonMage is a ModelEntity and returns early.
// output for usd file
Rig_Medium is a model entity
joint: head exists
tree for SkeletonMage USD
+
+ root
+ Rig_Medium
+ Rig_Medium
+ Skeleton_Mage_ArmRight
+ Skeleton_Mage_ArmRight
+ Skeleton_Mage_LegRight
+ Skeleton_Mage_LegRight
+ Skeleton_Mage_Eyes
+ Skeleton_Mage_Eyes
+ Skeleton_Mage_Hat
+ Skeleton_Mage_Hat
+ Skeleton_Mage_ArmLeft
+ Skeleton_Mage_ArmLeft
+ Skeleton_Mage_LegLeft
+ Skeleton_Mage_LegLeft
+ Skeleton_Mage_Body
+ Skeleton_Mage_Body
+ Skeleton_Mage_Skull
+ Skeleton_Mage_Skull
+ Skeleton_Mage_Jaw
+ Skeleton_Mage_Jaw
// output for reality file
Skeleton_Mage is a model entity
target: Skeleton_Mage is a model entity but our joint is in another castle
tree for SkeletonMage Reality
+ SkeletonMage
+ Skeleton_Mage
+ root
+ Rig_Medium
+ Rig_Medium
+ Skeleton_Mage_Hat
+ Skeleton_Mage_Hat
I changed how I was searching for the rig and verified that the desired joint is present before creating the pin.
And thanks for the tip on AttachedTransformComponent. You're right that I should be using that instead of a custom system. I had other plans for the PinnedEntitySystem that I just don't need at the moment.
Topic:
Spatial Computing
SubTopic:
Reality Composer Pro