Yes. I think an "intermediate parent" is one way to put it and is a reasonable 
assumption. But it can be variable.

For example, If you know that you need local translations of Z at a specific 
non-zero orientation, you use the parent to set the orientation that governs 
the local transform axis in local Z. If you don't need that level of control 
you don't need that many parents. So it's not always a 2:1 "double depth" 
problem necessarily unless you need that level of control. Or more control than 
average.

Still, it's not uncommon for a transform group hierarchy to resemble something 
like this:

Master
                Translation
                                Offset
                                                Random_Transforms
                                                                Offset
Yaw
                                                                                
                Pitch
                                                                                
                                Roll
                                                                                
                                                GeometryMaster
                                                                                
                                                                Etc

Every case is unique of course so not everything would look like this but this 
would be fairly common for me if I were setting up a UAV or other aircraft. 
Generally though I'll make new attributes at the Master transform group and 
connect them back to each position or rotation atrribute on the rig as needed 
so I only have one place to go for all needed transformations. And stuff like 
the Random_Transforms would be driven by expressions with attributes also 
placed at the Master level to drive the random behavior.

Freezes and Resets are always relative to the object its parented to. If not 
parented under anything, it zeroes to world "zero". If it has a parent, it 
zeros to the parent "zero" or center. Everything is always relative its 
parent's transform coordinates unless otherwise constrained on not a child of 
anything.

If you find you need to make significant changes, you remove the geometry, or 
whatever, from the hierarchy (using Unparent) then send it back to world zero 
(using Reset). For example, in the case above I would just remove the Geometry 
Master (likely an aircraft) from the hierarchy since I know it was created at 
world zero. After I translate/rotate it back to world zero and rework it there, 
I then drop it back into the hierarchy below Roll where it was originally 
located. When back in the hierarchy I execute Reset on GeometryMaster again. It 
should then move to be in exactly the same place it was before relative Roll, 
assuming I've managed not change the Geo's relation to transform and pivot zero 
too drastically.

To summarize:
Select geometry object
Unparent
Reset Transformations
Edit object at world zero coordinates
Reinsert object into hierarchy
Reset Transformations

If you develop a good set of habits in structuring and managing your 
hierarchies, placing at least one group transform above each geometry object, 
that kind of thing, its fairly painless. The parenting required is relative the 
articulation that is needed.

This way of doing things may not likely be familiar  if you're coming to Maya 
from XSI. When I learned Maya transforms I was coming from SI 3D, but I also 
had some experience on Wavefront TAV, so it was less difficult to understand 
why they did it this way. Funny thing is when I transitioned back to XSI from 
Maya, about XSI 5 I think, at some point I noted XSI had implemented Transform 
Groups. As a result I started using the Transform Groups in XSI to continue 
using the Maya structural "habit"  in XSI. I found that in time I rarely ever 
touched the Center again.

Bear in mind that Maya does provide a "global" abstraction through Move Tools' 
setting Axis Orientation. If you set it to world you can move an object 
according to World XYZ axis via the manipulator, but it will show up as local 
transform values local to its parent unless you remove it from the hierarchy. 
(This abstraction also seems kind of buggy in 2017 as it doesn't update the 
manipulator sometimes when switching from Object to World or back).

If you need to move something to a world specific position, use a locator or 
group that is not inserted in the hierarchy, set its world position, then snap 
the object to that world positioned locator(via Snap to Point).  Bear in mind 
that the object is still relative its parent. It can be nonzero to its parent 
without much issue if all you are doing is positioning it relative the 
articulation xform of its parent.

So it becomes kind of a game to know how to set up the hierarchy to manage 
articulations. What gets a lot of depth and what doesn't. And typically this 
means you rarely articulate a piece of geometry by itself without a transform 
group. Granted rigid body simulations, envelopes, and shape animations are 
typically exclusions to that kind of need for structural depth.

Joey

--
__________________________________________________
Opinions stated here-in are strictly those of the author and do not
represent the opinions of NASA or any other party.



From: [email protected] 
[mailto:[email protected]] On Behalf Of Jason S
Sent: Wednesday, September 13, 2017 3:41 PM
To: Official Softimage Users Mailing List. 
https://groups.google.com/forum/#!forum/xsi_list 
<[email protected]>
Subject: Re: Maya - what were they thinking 2 - transforms

It seems to be the same issue in these threads.




    CGTalk - how to "zero to 
parent"<http://forums.cgsociety.org/showthread.php?f=7&t=1256382&highlight=local+global>



    CGTalk - roll / pan / tilt of 
camera<http://forums.cgsociety.org/showthread.php?f=89&t=1141823&highlight=local+global>



So any item you would want to animate  by it's local axis (or to refer to it's 
local transforms in expressions) needs an intermediate parent item?



Doesn't that make sub-sub level items become  sub-sub-sub-sub level? (double 
the items at double depth?)



What happens when you reset the transforms of a child of a parent that's 
somewhere in space, pointing somewhere?

 (0 zeroing it's transforms)

the item snaps to world center?  and not to whatever position/orientation of 
it's parent?



On 09/11/17 11:01, Morten Bartholdy wrote:

Thanks guys - there is plenty to investigate here :)



//MB


------
Softimage Mailing List.
To unsubscribe, send a mail to [email protected] with 
"unsubscribe" in the subject, and reply to confirm.

Reply via email to