Frozen Matrix different
-
hi,
A parent object has 2 child objects whose global matrix are the same. They have the same frozen transform value, but the transform values are different. I used GetFrozenMln() to obtain the frozen matrix and found that the frozen matrix of the 2 child objects are *different.Why do 2 child objects have the same frozen transform value but different frozen matrix?
-
When I restart C4D, I cannot reproduce this problem. It's really confusing, c4d 2025.2.1
(And I also forgot to save the file at that time, resulting in the loss of the file on site)
-
Hi @chuanzhen,
Glad to hear the issue went away.
Just to note, the frozen matrices are designed in a way that simulate behavior of an intermediate parent null object, i.e. just as if you had an invisible parent null object with matrix being equal to the frozen one. Sometimes it can get confusing, because the way the global matrix of the object is calculated is effectively:
[Local Matrix] = [Frozen Translation] * [Frozen Rotation] * [Relative Translation] * [Relative Rotation] * [Frozen Scale] * [Relative Scale]
If the relative transform (the main one) and the frozen transform are the same for two objects, given they are children of the same parent and there're no other 3rd parties involved (e.g. plugins, python tags etc), the global transform matrices of these two objects are the same.
Please find more useful insights in our great Matrix Manual.
Cheers,
Ilia