A container for rotation information. All rotation values are stored in degrees.
This structure is Open Sourced at https://github.com/nanos-world/nanos-world-lua-lib. Feel free to push merge requests and suggest changes!
Rotators are internally and automatically compressed, which reduces it's size in the network up to 90%. Their components are usually compressed into 1 byte each (with some exceptions which we need more precision).
local new_rotator = Rotator(-90, 153, 24.5)
|number||Pitch||Rotation around the right axis (around Y axis), Looking up and down (0=Straight Ahead, +Up, -Down)|
|number||Yaw||Rotation around the up axis (around Z axis), Running in circles 0=East, +North, -South.|
|number||Roll||Rotation around the forward axis (around X axis), Tilting your head, 0=Straight, +Clockwise, -CCW.|
Note: This structure supports
|Vector||Get the forward (X) unit direction vector from this component, in world space.|
|Vector||Get the right (Y) unit direction vector from this component, in world space.|
|Vector||Get the up (Z) unit direction vector from this component, in world space.|
|Vector||Rotate a vector rotated by this rotator.|
|In-place normalize, removes all winding and creates the “shortest route” rotation.|
|Vector||Returns the vector rotated by the inverse of this rotator.|
|Quat||Get Rotation as a quaternion.|
|Rotator||Returns a new Rotator normalized.|
|boolean||Checks whether rotator is near to zero within a specified tolerance|
|boolean||Checks whether all components of the rotator are exactly zero|
⏩ Static Functions
|Rotator||Generates a random rotation, with optional random roll|