Skip to main content

Mat4

Client Server

Constructors

Mat4 Mat4(number? scalar)

Mat4 Mat4(number x1, number x2, number x3, number x4, number y1, number y2, number y3, number y4, number z1, number z2, number z3, number z4, number w1, number w2, number w3, number w4)

Mat4 Mat4(Vec4 row1, Vec4 row2, Vec4 row3, Vec4 row4)

Mat4 Mat4(Mat3 mat)

Mat4 Mat4(Mat4 mat4)

Mat4 Mat4(Quat quat)

Metamethods

Mat4 __add(Mat4 a, Mat4 b)

Mat4 __add(number a, Mat4 b)

Mat4 __add(Mat4 a, number b)

Mat4 __sub(Mat4 a, Mat4 b)

Mat4 __sub(number a, Mat4 b)

Mat4 __sub(Mat4 a, number b)

Mat4 __mul(Mat4 a, Mat4 b)

Mat4 __mul(number a, Mat4 b)

Mat4 __mul(Mat4 a, number b)

Mat4 __div(Mat4 a, Mat4 b)

Mat4 __div(number a, Mat4 b)

Mat4 __div(Mat4 a, number b)

Vec4 __index(integer index)

nil __newindex(integer index, Vec4 value)

Mat4 __unm()

boolean __eq(Mat4 a, Mat4 b)

string __tostring()

Methods

number GetDeterminant()

nil Transpose()

Mat4 GetTransposed()

nil Invert()

Mat4 GetInverted()

Mat4 Copy()

boolean IsIdentity()

boolean IsZero()

boolean IsSingular()

boolean IsAnyNaN()

Mat4 Translation(number x, number y, number z)

Mat4 Translation(Vec3 vec)

Mat4 RotationXYZ(number x, number y, number z)

Mat4 RotationXYZ(Vec3 angles)

Mat4 RotationYawPitchRoll(number angleYaw, number anglePitch, number angleRoll)

Mat4 RotationYawPitchRoll(Vec3 angles)

Mat4 Scaling(number x, number y, number z)

Mat4 Scaling(Vec3 scale)

Mat4 LookAt(Vec3 eyePos, Vec3 targetPos, Vec3 up)

Mat4 Perspective(number fovY, number aspect, number znear, number zfar)

Mat4 Ortho(number left, number right, number bottom, number top, number zNear, number zFar)

Properties

Vec4 xaxis

Vec4 yaxis

Vec4 zaxis

Vec4 translation

Vec4 row1

Vec4 row2

Vec4 row3

Vec4 row4