Announcements

Between mid-October and November, the content on AREA will be relocated to the Autodesk Community M&E Hub and the Autodesk Community Gallery. Learn more HERE.

A few questions about freeze transformations and point constraints

A few questions about freeze transformations and point constraints

hzhou3
Advocate Advocate
4,907 Views
5 Replies
Message 1 of 6

A few questions about freeze transformations and point constraints

hzhou3
Advocate
Advocate

I have a few questions when reading the following section of a book:

 

Untitled1.png

 

My questions are all in the third paragraph.

(1) Why freeze transformations resets only Rotate channels of a joint but leaves Translate channels unchanged?

(2) Why can’t rely ...? What does the author mean here? For example, I can parent a joint to a cube object. When I wove the cube, the joint follows as expected, very reliably.

Thanks a lot for your clarification of my question and confusions.

0 Likes
Accepted solutions (2)
4,908 Views
5 Replies
Replies (5)
Message 2 of 6

brentmc
Autodesk
Autodesk
Accepted solution

When you freeze a transformation you are really just baking the current translation values into the geometry. (and a transformGeometry node is applied to the shape)

 

Joints don't have any geometry so there is no place to bake the translation. When you bake a joint's rotation it bakes the current rotation values into the joint orientation attribute on the joint.

 

Regarding the "rely" comment. I just think the author is saying that an object's translation is relative to it's parent but constraints can be used to enforce a world-space position regardless of what space the joint is in.

--

Brent

Brent McPherson
Principle Engineer
Message 3 of 6

hzhou3
Advocate
Advocate

Thank you for the reply but I don't fully understand it. For example, what does "bake" mean? Toast? BBQ? I checked the dictionary but can not find an explanatory item that is related to computer graphics 😞

0 Likes
Message 4 of 6

brentmc
Autodesk
Autodesk
Accepted solution

Sorry, "baking" is often used in computer graphics to refer to the process of moving data from one location to another or applying it onto the geometry.

 

Freeze transforms is taking the transform values in the transform matrix, applying it to points on the mesh (using a transformGeometry node) and then zeroing out the transform values. The freeze operation has moved (or baked) the transform values into the mesh.

 

In the case of joints there is no underlying geometry to hold the translation values so all you can do is freeze the rotation which just moves the rotation values into the joint orient attribute and zeroes out the rotation attribute.

--

Brent

Brent McPherson
Principle Engineer
Message 5 of 6

hzhou3
Advocate
Advocate

Thank you very much for the follow-up. Now I have had some understanding of the answer. It looks more like a bug of Maya because, based on the answer, it seems that the first step of the Freeze Transformations -- baking -- crashed due to lack of underlying geometry, which quits the whole process of Freeze Transformations so the following zeroing out step was not executed. Maybe Autodesk should add a try...except block around the baking. Thank you again for the help.

0 Likes
Message 6 of 6

brentmc
Autodesk
Autodesk

Hi,

 

I don't think is is correct to characterize this as a crash or bug. Rather when freezing joints Maya simply ignores the channels (like translate) that cannot be frozen.

 

If you still think there is a bug here can you give me a Mel script or the exact steps to reproduce the issue.

 

 

Thanks.

--

Brent

Brent McPherson
Principle Engineer
0 Likes