Xgen in animation, primitive bound problem

I am in need of some advice please. This is in plain Maya 2020, no service packs.

Currently we are trying to render hair which were made with Xgen. After exporting them to Arnold standin, the hair in our render would move away from where they were supposed to be in certain part of animation. The mismatch was so bad that part of the animation the hair was off the head completely.


After a couple days of troubleshooting, I realized that the problem was caused by the Primitive Bound value. This value, when using the auto set, only takes the current frame into consideration. When I scrub through frames, the auto set would generate slightly different values ranging from 22 to 24.


And sure enough, when I export those single frame to Arnold standin, they would render correctly.

Which meant the Bound had to be set per frame.


The 2 problems I ran into

  1. this value is not keyable. It’s hard-coded into the .xgen file itself.

unknown (1)

  1. after trying to look up Xgen API docs, this Auto Set doesn’t seem callable from scripts.

So my solution was to manual brute force stepping through the frames, clicking Auto Set once per description (luckily this scene only had 2 desc), and export standin. Fram by frame. (I tried using mean value every 5 frames and there would be obvious jerk between each transition)

I’m at my wit ends and really need some advice. Am I missing something. Is there a better way. How do every one handle Xgen in their rendering pipeline?