Creates an empty matrix (filled with zeros)
Gets the update flag of the matrix which is an unique number for the matrix. It will be incremented every time the matrix data change. You can use it to speed the comparison between two versions of the same matrix.
Gets the internal data of the matrix
Gets an identity matrix that must not be updated
add a value at the specified position in the current Matrix
the index of the value within the matrix. between 0 and 15.
the value to be added
the current updated matrix
Returns the matrix as a Float32Array
the matrix underlying array.
Clone the current matrix
a new matrix from the current matrix
Populates the given array from the starting index with the current matrix values
defines the target array
defines the offset in the target array where to start storing values
the current matrix
Decomposes the current Matrix into a translation, rotation and scaling components
defines the scale vector3 given as a reference to update
defines the rotation quaternion given as a reference to update
defines the translation vector3 given as a reference to update
true if operation was successful
Gets the determinant of the matrix
the matrix determinant
Check equality between this matrix and a second one
defines the second matrix to compare
true is the current matrix and the given one values are strictly equal
Returns the name of the current matrix class
the string "Matrix"
Gets the hash code of the current matrix
the hash code
Gets only rotation part of the current matrix
a new matrix sets to the extracted rotation matrix from the current one
Gets specific row of the matrix
defines the number of the row to get
the index-th row of the current matrix as a new Vector4
Gets the translation value of the current matrix
a new Vector3 as the extracted translation from the matrix
Inverts the current matrix in place
the current inverted matrix
Check if the current matrix is identity
true is the matrix is the identity matrix
Check if the current matrix is identity as a texture matrix (3x2 store in 4x4)
true is the matrix is the identity matrix
mutiply the specified position in the current Matrix by a value
the index of the value within the matrix. between 0 and 15.
the value to be added
the current updated matrix
Sets the Float32Array "result" from the given index "offset" with the multiplication of the current matrix and the given one
defines the second operand
defines the array where to store the multiplication
defines the offset in the target array where to start storing values
the current matrix
Remove rotation and scaling part from the matrix
the updated matrix
Sets all the matrix elements to zero
the current matrix
Compute a new matrix set with the current matrix values multiplied by scale (float)
defines the scale factor
a new matrix
Sets the index-th row of the current matrix with the given 4 x float values
defines the row index
defines the x component to set
defines the y component to set
defines the z component to set
defines the w component to set
the updated current matrix
Inserts the translation vector (using 3 floats) in the current matrix
defines the 1st component of the translation
defines the 2nd component of the translation
defines the 3rd component of the translation
the current updated matrix
Returns the matrix as a Float32Array
the matrix underlying array
Writes to the given matrix a normal matrix, computed from this one (using values from identity matrix for fourth row and column).
matrix to store the result
Toggles model matrix from being right handed to left handed in place and vice versa
Toggles projection matrix from being right handed to left handed in place and vice versa
Compute the transpose of the matrix
the new transposed matrix
Creates a new matrix composed by merging scale (vector3), rotation (quaternion) and translation (vector3)
defines the scale vector3
defines the rotation quaternion
defines the translation vector3
a new matrix
Sets a matrix to a value composed by merging scale (vector3), rotation (quaternion) and translation (vector3)
defines the scale vector3
defines the rotation quaternion
defines the translation vector3
defines the target matrix
Builds a new matrix whose values are computed by:
defines the first matrix
defines the second matrix
defines the gradient between the two matrices
the new matrix
Update a matrix to values which are computed by:
defines the first matrix
defines the second matrix
defines the gradient between the two matrices
defines the target matrix
Creates a matrix from an array
defines the source array
defines an offset in the source array
a new Matrix set from the starting index of the given array
Copy the content of an array into a given matrix
defines the source array
defines an offset in the source array
defines the target matrix
Stores an array into a matrix after having multiplied each component by a given factor
defines the source array
defines the offset in the source array
defines the scaling factor
defines the target matrix
Creates a rotation matrix from a quaternion and stores it in a target matrix
defines the quaternion to use
defines the target matrix
Creates new matrix from a list of values (16)
defines 1st value of 1st row
defines 2nd value of 1st row
defines 3rd value of 1st row
defines 4th value of 1st row
defines 1st value of 2nd row
defines 2nd value of 2nd row
defines 3rd value of 2nd row
defines 4th value of 2nd row
defines 1st value of 3rd row
defines 2nd value of 3rd row
defines 3rd value of 3rd row
defines 4th value of 3rd row
defines 1st value of 4th row
defines 2nd value of 4th row
defines 3rd value of 4th row
defines 4th value of 4th row
the new matrix
Stores a list of values (16) inside a given matrix
defines 1st value of 1st row
defines 2nd value of 1st row
defines 3rd value of 1st row
defines 4th value of 1st row
defines 1st value of 2nd row
defines 2nd value of 2nd row
defines 3rd value of 2nd row
defines 4th value of 2nd row
defines 1st value of 3rd row
defines 2nd value of 3rd row
defines 3rd value of 3rd row
defines 4th value of 3rd row
defines 1st value of 4th row
defines 2nd value of 4th row
defines 3rd value of 4th row
defines 4th value of 4th row
defines the target matrix
Extracts a 2x2 matrix from a given matrix and store the result in a Float32Array
defines the matrix to use
a new Float32Array array with 4 elements : the 2x2 matrix extracted from the given matrix
Extracts a 3x3 matrix from a given matrix and store the result in a Float32Array
defines the matrix to use
a new Float32Array array with 9 elements : the 3x3 matrix extracted from the given matrix
Computes a complete transformation matrix
defines the viewport to use
defines the world matrix
defines the view matrix
defines the projection matrix
defines the near clip plane
defines the far clip plane
the transformation matrix
Creates a new identity matrix
a new identity matrix
Creates a new identity matrix and stores the result in a given matrix
defines the target matrix
Returns a new Matrix whose values are the interpolated values for "gradient" (float) between the ones of the matrices "startValue" and "endValue".
defines the start value
defines the end value
defines the gradient factor
the new matrix
Set the given matrix "result" as the interpolated values for "gradient" (float) between the ones of the matrices "startValue" and "endValue".
defines the start value
defines the end value
defines the gradient factor
defines the Matrix object where to store data
Gets a new rotation matrix used to rotate an entity so as it looks at the target vector3, from the eye vector3 position, the up vector3 being oriented like "up" This function works in left handed mode
defines the final position of the entity
defines where the entity should look at
defines the up vector for the entity
the new matrix
Sets the given "result" Matrix to a rotation matrix used to rotate an entity so that it looks at the target vector3, from the eye vector3 position, the up vector3 being oriented like "up". This function works in left handed mode
defines the final position of the entity
defines where the entity should look at
defines the up vector for the entity
defines the target matrix
Gets a new rotation matrix used to rotate an entity so as it looks at the target vector3, from the eye vector3 position, the up vector3 being oriented like "up" This function works in right handed mode
defines the final position of the entity
defines where the entity should look at
defines the up vector for the entity
the new matrix
Sets the given "result" Matrix to a rotation matrix used to rotate an entity so that it looks at the target vector3, from the eye vector3 position, the up vector3 being oriented like "up". This function works in right handed mode
defines the final position of the entity
defines where the entity should look at
defines the up vector for the entity
defines the target matrix
Create a left-handed orthographic projection matrix
defines the viewport width
defines the viewport height
defines the near clip plane
defines the far clip plane
a new matrix as a left-handed orthographic projection matrix
Store a left-handed orthographic projection to a given matrix
defines the viewport width
defines the viewport height
defines the near clip plane
defines the far clip plane
defines the target matrix
Create a left-handed orthographic projection matrix
defines the viewport left coordinate
defines the viewport right coordinate
defines the viewport bottom coordinate
defines the viewport top coordinate
defines the near clip plane
defines the far clip plane
a new matrix as a left-handed orthographic projection matrix
Stores a left-handed orthographic projection into a given matrix
defines the viewport left coordinate
defines the viewport right coordinate
defines the viewport bottom coordinate
defines the viewport top coordinate
defines the near clip plane
defines the far clip plane
defines the target matrix
Creates a right-handed orthographic projection matrix
defines the viewport left coordinate
defines the viewport right coordinate
defines the viewport bottom coordinate
defines the viewport top coordinate
defines the near clip plane
defines the far clip plane
a new matrix as a right-handed orthographic projection matrix
Stores a right-handed orthographic projection into a given matrix
defines the viewport left coordinate
defines the viewport right coordinate
defines the viewport bottom coordinate
defines the viewport top coordinate
defines the near clip plane
defines the far clip plane
defines the target matrix
Creates a left-handed perspective projection matrix
defines the horizontal field of view
defines the aspect ratio
defines the near clip plane
defines the far clip plane
a new matrix as a left-handed perspective projection matrix
Stores a left-handed perspective projection into a given matrix
defines the horizontal field of view
defines the aspect ratio
defines the near clip plane
defines the far clip plane
defines the target matrix
defines it the fov is vertically fixed (default) or horizontally
Creates a right-handed perspective projection matrix
defines the horizontal field of view
defines the aspect ratio
defines the near clip plane
defines the far clip plane
a new matrix as a right-handed perspective projection matrix
Stores a right-handed perspective projection into a given matrix
defines the horizontal field of view
defines the aspect ratio
defines the near clip plane
defines the far clip plane
defines the target matrix
defines it the fov is vertically fixed (default) or horizontally
Stores a perspective projection for WebVR info a given matrix
defines the field of view
defines the near clip plane
defines the far clip plane
defines the target matrix
defines if the matrix must be in right-handed mode (false by default)
Creates a left-handed perspective projection matrix
defines the viewport width
defines the viewport height
defines the near clip plane
defines the far clip plane
a new matrix as a left-handed perspective projection matrix
Creates a new rotation matrix for "angle" radians around the X axis
defines the angle (in radians) to use
the new matrix
Creates a new rotation matrix for "angle" radians around the X axis and stores it in a given matrix
defines the angle (in radians) to use
defines the target matrix
Creates a new rotation matrix for "angle" radians around the Y axis
defines the angle (in radians) to use
the new matrix
Creates a new rotation matrix for "angle" radians around the Y axis and stores it in a given matrix
defines the angle (in radians) to use
defines the target matrix
Creates a rotation matrix
defines the yaw angle in radians (Y axis)
defines the pitch angle in radians (X axis)
defines the roll angle in radians (X axis)
the new rotation matrix
Creates a rotation matrix and stores it in a given matrix
defines the yaw angle in radians (Y axis)
defines the pitch angle in radians (X axis)
defines the roll angle in radians (X axis)
defines the target matrix
Creates a new rotation matrix for "angle" radians around the Z axis
defines the angle (in radians) to use
the new matrix
Creates a new rotation matrix for "angle" radians around the Z axis and stores it in a given matrix
defines the angle (in radians) to use
defines the target matrix
Creates a scaling matrix
defines the scale factor on X axis
defines the scale factor on Y axis
defines the scale factor on Z axis
the new matrix
Creates a scaling matrix and stores it in a given matrix
defines the scale factor on X axis
defines the scale factor on Y axis
defines the scale factor on Z axis
defines the target matrix
Creates a translation matrix
defines the translation on X axis
defines the translation on Y axis
defines the translationon Z axis
the new matrix
Creates a translation matrix and stores it in a given matrix
defines the translation on X axis
defines the translation on Y axis
defines the translationon Z axis
defines the target matrix
Creates a new zero matrix
a new zero matrix
Class used to store matrix data (4x4)