For some reason when I multiply a parts CFrame by CFrame.new(x, y, z, R00, R01, R02, R10, R11, R12, R20, R21, R22) I sometimes get very strange rotations and the object tilts back slightly and rotates about 10 degrees. Does anyone know why this is?
To get the x, y, z, r00, .....etc values I used toObjectSpace.
It is basically a system where the player places furniture in their house in a certain rotation and this rotation is then saved in a datastore as a relative rotation from the houses primary part and in it's components. However when I try to load this and multiply the players house's primary part's CFrame by the saved CFrame, I get the strange rotation.
Anybody have any other way to save relative rotations or am I doing something wrong?