Retaining Pivot points from a Maya exported USD file

   4281   8   1
User Avatar
Member
9 posts
Joined: May 2017
Offline
Hello,

Is there a way to edit(translate or rotate) a geo in Solaris, using the original pivot point position that was assigned to it?
In my case, I'm exporting my model from Maya as an USD file with a certain specific pivot point. (The pivot points seems to be retained if I were to open it again in Maya)

I also noticed that the attribute of the pivot does get carried over in Solaris under the xformOp:Translate:pivot attribute. But if we were to move the object using the edit lop, we seem to only have two choices where the pivot is either at the origin, or at the center of the geo.

Would appreciate some advice, thanks.
User Avatar
Member
127 posts
Joined: Feb. 2021
Offline
What if you use a transform node with the primpath pointing to your geo. Does the pivot transform values match then?
Andreas Weidman
VFX Supervisor - Dupe VFX
www.dupevfx.com
User Avatar
Member
9 posts
Joined: May 2017
Offline
Hello Andreas,

Thanks for taking the time to reply.

I just tried with the transform node, and it's the same as well, the pivot doesn't match.
If I were to manually insert the values from the geo's xformOp:Translate:pivot attribute, to the Transform(or edit) node's Pivot Transform, then the pivot snaps to the correct place.

I assume that perhaps it's possible to create a relative reference that points the pivot transform value to an USD attribute?
User Avatar
Member
7726 posts
Joined: Sept. 2011
Offline
FoamFX
I assume that perhaps it's possible to create a relative reference that points the pivot transform value to an USD attribute?

should be possible with python
User Avatar
Member
127 posts
Joined: Feb. 2021
Offline
FoamFX
Hello Andreas,.
If I were to manually insert the values from the geo's xformOp:Translate:pivot attribute, to the Transform(or edit) node's Pivot Transform, then the pivot snaps to the correct place.

Seems like this should be the default behavior? Perhaps someone from staff can shed some light on this. Otherwise, try filing it as a bug or feature rewquest.
Andreas Weidman
VFX Supervisor - Dupe VFX
www.dupevfx.com
User Avatar
Member
9 posts
Joined: May 2017
Offline
Thanks for the replies everyone, it never occurred to me that perhaps this could be categorized as a bug. Will definitely try to lodge a request.
User Avatar
Staff
4158 posts
Joined: Sept. 2007
Online
FWIW, I tend to recommend using an xform primitive to preserve a pivot/transform location, rather than an xformOp. The pivotxformOps are useful/interesting, but pretty much only if every tool is only reading/writing xforms in that pattern. Whenever there are additional transforms added to a primitive, the pivot and its inverse don't make as much sense any more as "the" pivot; they're just another xformOp applied. You end up needed much more tooling to preserve pivots.

If the pivot is instead a real xform prim, it's a more concrete thing tools can simply transform.
I'm o.d.d.
User Avatar
Member
9 posts
Joined: May 2017
Offline
Hello Goldleaf,

Thanks for the suggestion, just tried out using an xform prim as pivot method, (basically creating a group in maya with the position as the desired pivot) and I think this is a great solution, and the one I shall be implementing. Definitely appreciate the help, thanks!
Edited by FoamFX - Aug. 2, 2021 09:53:57
User Avatar
Member
4 posts
Joined: Oct. 2021
Online
I have a related issue,

I'm exporting my geometry from Maya as an USD file. The geometry is made of few primitives with specific pivot points ( a few boxes with pivot at one of the corner )

I want to process( ie polyreduce ) and export the geometry as USD from Houdini retaining the original pivots.
Any directions would be appreaciated!



1 - In the scene graph details I cannot see the "xformOp:Translate:pivot" attribute as FoamFX is.
But if I reload the same USD in Maya the pivots exist and are correct.


2 - In USD ROP Lop (usd_rop) I cannot find any option regarding the pivot. Am I missing it? Is there a special attribute that I can use to override it ?
  • Quick Links