RotationOrder

*此內容很快就會推出您所選的語言版本。

Euler angles encode a rotation in 3D space via a sequence of three rotations along the X, Y, and Z axes. The RotationOrder enum specifies the order in which the engine performs these rotations.

To help visualize the many rotation orders, you can test them manually in Studio with the Rotate tool or by inserting task.wait() statements between individual rotations of a cube with a unique face:


local cube = workspace.Cube
local rx, ry, rz = math.rad(90), math.rad(90), math.rad(90)
task.wait(5)
cube.CFrame *= CFrame.fromEulerAngles(rx, 0, 0) -- X
task.wait(5)
cube.CFrame *= CFrame.fromEulerAngles(0, ry, 0) -- Y
task.wait(5)
cube.CFrame *= CFrame.fromEulerAngles(0, 0, rz) -- Z

An equivalent operation is:


local cube = workspace.Cube
local rx, ry, rz = math.rad(90), math.rad(90), math.rad(90)
cube.CFrame = CFrame.fromEulerAngles(rx, ry, rz, Enum.RotationOrder.XYZ)

道具

名稱概要
XYZ0
XZY1
YZX2
YXZ3
ZXY4
ZYX5