When I use
rowParentBone.CFrame = CFrame.new(rowPosition) * CFrame.Angles(math.rad(90), math.rad(180), math.rad(0))
Why the Orientation becomes -90,-180, 0. I need it to be 90, 180, 0
When I use
rowParentBone.CFrame = CFrame.new(rowPosition) * CFrame.Angles(math.rad(90), math.rad(180), math.rad(0))
Why the Orientation becomes -90,-180, 0. I need it to be 90, 180, 0
Thats weird, try to use fromEulerAnglesYXZ instead of Angles. Im not sure if this is going work though.
You can also try adjusting it with something like this, again, this might not work:
rowParentBone.CFrame = CFrame.new(rowPosition) * CFrame.Angles(math.rad(-270), math.rad(180), math.rad(0))
I found this funny, local rotation = CFrame.Angles(0, math.rad(180), 0) * CFrame.Angles(math.rad(90), 0, 0) = 90, 180, 0
But the rowParentBone.CFrame = CFrame.new(rowPosition) * CFrame.Angles(math.rad(90), math.rad(180), math.rad(0)) = -90, -180, 0
it is kind of weird though, it shouldn’t be doing that. It might be the order it applies the rotation makes it weird.
Try out:
rowParentBone.CFrame = CFrame.new(rowPosition) * CFrame.fromEulerAnglesYXZ(math.rad(90), math.rad(180), math.rad(0))
Or just use your solution ig:
local rotation = CFrame.Angles(0, math.rad(180), 0) * CFrame.Angles(math.rad(90), 0, 0)
I can confirm @JAcoboiskaka1121 result, it’s due to rotation angle order and also floating point number rounding. Also 180 and -180 in the y axis doesn’t make a difference for this scenario.
local part = script.Parent
part.CFrame = CFrame.fromOrientation(math.rad(90), math.rad(179.99), math.rad(0)) + part.Position
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.