Mesh pivotMatrix may be error?

SetPiovtPoint(0, -0.5, 0).Then get pivot translation from pivotMatrix,it shows (0, 0.5, 0);
PG:

It’s expected, setPivotPoint is implemented as:

this.setPivotMatrix(Matrix.Translation(-point.x, -point.y, -point.z), true)
1 Like

I think it’s a little weird. For example, the world matrix like a grid, in which direction I translate, the translation obtained by the matrix is the corresponding value.
For example, if I translate the box by 1 in the x direction, the translation x I get from the world matrix of the box is still 1. Why does the pivot matrix need to take the opposite number?

I guess it’s simply a convention, the code that is using the pivot/matrix needs it this way.

If we didn’t negate the pivot in the first place, the code would simply do the negate itself.