Class Matrix
Hierarchy
- Matrix
Index
Constructors
Properties
Accessors
Methods
- add
- add
AtIndex - add
ToRef - add
ToSelf - add
Translation From Floats - as
Array - clone
- copy
From - copy
ToArray - decompose
- determinant
- equals
- get
Class Name - get
Hash Code - get
Rotation Matrix - get
Rotation Matrix ToRef - get
Row - get
Translation - get
Translation ToRef - invert
- invert
ToRef - is
Identity - is
Identity As3x2 - multiply
- multiply
AtIndex - multiply
ToArray - multiply
ToRef - remove
Rotation And Scaling - reset
- scale
- scale
And Add ToRef - scale
ToRef - set
Row - set
Row From Floats - set
Translation - set
Translation From Floats - to
Array - to
Normal Matrix - toggle
Model Matrix Hand InPlace - toggle
Projection Matrix Hand InPlace - transpose
- transpose
ToRef - Compose
- Compose
ToRef - Decompose
Lerp - Decompose
Lerp ToRef - From
Array - From
Array ToRef - From
Float32 Array ToRef Scaled - From
Quaternion ToRef - From
Values - From
Values ToRef - FromXYZAxes
ToRef - Get
AsMatrix2x2 - Get
AsMatrix3x3 - Get
Final Matrix - Identity
- Identity
ToRef - Invert
- Lerp
- Lerp
ToRef - Look
AtLH - Look
AtLHTo Ref - Look
AtRH - Look
AtRHTo Ref - OrthoLH
- OrthoLHTo
Ref - Ortho
Off CenterLH - Ortho
Off CenterLHTo Ref - Ortho
Off CenterRH - Ortho
Off CenterRHTo Ref - Perspective
FovLH - Perspective
FovLHTo Ref - Perspective
FovRH - Perspective
FovRHTo Ref - Perspective
Fov ReverseLHTo Ref - Perspective
Fov ReverseRHTo Ref - Perspective
Fov WebVRTo Ref - PerspectiveLH
- Reflection
- Reflection
ToRef - Rotation
Align ToRef - Rotation
Axis - Rotation
Axis ToRef - RotationX
- RotationXTo
Ref - RotationY
- RotationYTo
Ref - Rotation
Yaw Pitch Roll - Rotation
Yaw Pitch Roll ToRef - RotationZ
- RotationZTo
Ref - Scaling
- Scaling
ToRef - Translation
- Translation
ToRef - Transpose
- Transpose
ToRef - Zero
Constructors
constructor
-
Creates an empty matrix (filled with zeros)
Returns Matrix
Properties
update FlagSearch playground for updateFlag
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.
Accessors
m
-
Gets the internal data of the matrix
Returns DeepImmutable<Float32Array | Array<number>>
Static Identity Read Only
-
Gets an identity matrix that must not be updated
Returns DeepImmutable<Matrix>
Static Use64 Bits
-
Gets the precision of matrix computations
Returns boolean
Methods
addSearch playground for add
-
Adds the current matrix with a second one
Parameters
-
other: DeepImmutable<Matrix>
defines the matrix to add
Returns Matrix
a new matrix as the addition of the current matrix and the given one
-
add AtIndexSearch playground for addAtIndex
-
add a value at the specified position in the current Matrix
Parameters
-
index: number
the index of the value within the matrix. between 0 and 15.
-
value: number
the value to be added
Returns Matrix
the current updated matrix
-
add ToRefSearch playground for addToRef
-
Sets the given matrix "result" to the addition of the current matrix and the given one
Parameters
-
other: DeepImmutable<Matrix>
defines the matrix to add
-
result: Matrix
defines the target matrix
Returns Matrix
the current matrix
-
add ToSelfSearch playground for addToSelf
-
Adds in place the given matrix to the current matrix
Parameters
-
other: DeepImmutable<Matrix>
defines the second operand
Returns Matrix
the current updated matrix
-
add Translation From FloatsSearch playground for addTranslationFromFloats
-
Adds the translation vector (using 3 floats) in the current matrix
Parameters
-
x: number
defines the 1st component of the translation
-
y: number
defines the 2nd component of the translation
-
z: number
defines the 3rd component of the translation
Returns Matrix
the current updated matrix
-
as Array
Returns DeepImmutable<Float32Array | Array<number>>
the matrix underlying array.
cloneSearch playground for clone
-
Clone the current matrix
Returns Matrix
a new matrix from the current matrix
copy FromSearch playground for copyFrom
-
Copy the current matrix from the given one
Parameters
-
other: DeepImmutable<Matrix>
defines the source matrix
Returns Matrix
the current updated matrix
-
copy ToArraySearch playground for copyToArray
-
Populates the given array from the starting index with the current matrix values
Parameters
-
array: Float32Array | Array<number>
defines the target array
-
Optional offset: number
defines the offset in the target array where to start storing values
Returns Matrix
the current matrix
-
decomposeSearch playground for decompose
-
Decomposes the current Matrix into a translation, rotation and scaling components
Parameters
-
Optional scale: Vector3
defines the scale vector3 given as a reference to update
-
Optional rotation: Quaternion
defines the rotation quaternion given as a reference to update
-
Optional translation: Vector3
defines the translation vector3 given as a reference to update
Returns boolean
true if operation was successful
-
determinantSearch playground for determinant
-
Gets the determinant of the matrix
Returns number
the matrix determinant
equalsSearch playground for equals
-
Check equality between this matrix and a second one
Parameters
-
value: DeepImmutable<Matrix>
defines the second matrix to compare
Returns boolean
true is the current matrix and the given one values are strictly equal
-
get Class NameSearch playground for getClassName
-
Returns the name of the current matrix class
Returns string
the string "Matrix"
get Hash CodeSearch playground for getHashCode
-
Gets the hash code of the current matrix
Returns number
the hash code
get Rotation MatrixSearch playground for getRotationMatrix
-
Gets only rotation part of the current matrix
Returns Matrix
a new matrix sets to the extracted rotation matrix from the current one
get Rotation Matrix ToRefSearch playground for getRotationMatrixToRef
get RowSearch playground for getRow
get TranslationSearch playground for getTranslation
-
Gets the translation value of the current matrix
Returns Vector3
a new Vector3 as the extracted translation from the matrix
get Translation ToRefSearch playground for getTranslationToRef
invertSearch playground for invert
-
Inverts the current matrix in place
Returns Matrix
the current inverted matrix
invert ToRefSearch playground for invertToRef
is IdentitySearch playground for isIdentity
-
Check if the current matrix is identity
Returns boolean
true is the matrix is the identity matrix
is Identity As3x2Search playground for isIdentityAs3x2
-
Check if the current matrix is identity as a texture matrix (3x2 store in 4x4)
Returns boolean
true is the matrix is the identity matrix
multiplySearch playground for multiply
-
Multiply two matrices
Parameters
-
other: DeepImmutable<Matrix>
defines the second operand
Returns Matrix
a new matrix set with the multiplication result of the current Matrix and the given one
-
multiply AtIndexSearch playground for multiplyAtIndex
-
mutiply the specified position in the current Matrix by a value
Parameters
-
index: number
the index of the value within the matrix. between 0 and 15.
-
value: number
the value to be added
Returns Matrix
the current updated matrix
-
multiply ToArraySearch playground for multiplyToArray
-
Sets the Float32Array "result" from the given index "offset" with the multiplication of the current matrix and the given one
Parameters
-
other: DeepImmutable<Matrix>
defines the second operand
-
result: Float32Array | Array<number>
defines the array where to store the multiplication
-
offset: number
defines the offset in the target array where to start storing values
Returns Matrix
the current matrix
-
multiply ToRefSearch playground for multiplyToRef
-
Sets the given matrix "result" with the multiplication result of the current Matrix and the given one
Parameters
-
other: DeepImmutable<Matrix>
defines the second operand
-
result: Matrix
defines the matrix where to store the multiplication
Returns Matrix
the current matrix
-
remove Rotation And ScalingSearch playground for removeRotationAndScaling
-
Remove rotation and scaling part from the matrix
Returns Matrix
the updated matrix
resetSearch playground for reset
-
Sets all the matrix elements to zero
Returns Matrix
the current matrix
scaleSearch playground for scale
-
Compute a new matrix set with the current matrix values multiplied by scale (float)
Parameters
-
scale: number
defines the scale factor
Returns Matrix
a new matrix
-
scale And Add ToRefSearch playground for scaleAndAddToRef
scale ToRefSearch playground for scaleToRef
set RowSearch playground for setRow
set Row From FloatsSearch playground for setRowFromFloats
-
Sets the index-th row of the current matrix with the given 4 x float values
Parameters
-
index: number
defines the row index
-
x: number
defines the x component to set
-
y: number
defines the y component to set
-
z: number
defines the z component to set
-
w: number
defines the w component to set
Returns Matrix
the updated current matrix
-
set TranslationSearch playground for setTranslation
-
Inserts the translation vector in the current matrix
Parameters
-
vector3: DeepImmutable<Vector3>
defines the translation to insert
Returns Matrix
the current updated matrix
-
set Translation From FloatsSearch playground for setTranslationFromFloats
-
Inserts the translation vector (using 3 floats) in the current matrix
Parameters
-
x: number
defines the 1st component of the translation
-
y: number
defines the 2nd component of the translation
-
z: number
defines the 3rd component of the translation
Returns Matrix
the current updated matrix
-
to Array
Returns DeepImmutable<Float32Array | Array<number>>
the matrix underlying array
to Normal MatrixSearch playground for toNormalMatrix
-
Writes to the given matrix a normal matrix, computed from this one (using values from identity matrix for fourth row and column).
Parameters
-
ref: Matrix
matrix to store the result
Returns void
-
toggle Model Matrix Hand InPlaceSearch playground for toggleModelMatrixHandInPlace
-
Toggles model matrix from being right handed to left handed in place and vice versa
Returns void
toggle Projection Matrix Hand InPlaceSearch playground for toggleProjectionMatrixHandInPlace
-
Toggles projection matrix from being right handed to left handed in place and vice versa
Returns void
transposeSearch playground for transpose
-
Compute the transpose of the matrix
Returns Matrix
the new transposed matrix
transpose ToRefSearch playground for transposeToRef
Static ComposeSearch playground for Compose
-
Creates a new matrix composed by merging scale (vector3), rotation (quaternion) and translation (vector3)
Parameters
-
scale: DeepImmutable<Vector3>
defines the scale vector3
-
rotation: DeepImmutable<Quaternion>
defines the rotation quaternion
-
translation: DeepImmutable<Vector3>
defines the translation vector3
Returns Matrix
a new matrix
-
Static Compose ToRefSearch playground for ComposeToRef
-
Sets a matrix to a value composed by merging scale (vector3), rotation (quaternion) and translation (vector3)
Parameters
-
scale: DeepImmutable<Vector3>
defines the scale vector3
-
rotation: DeepImmutable<Quaternion>
defines the rotation quaternion
-
translation: DeepImmutable<Vector3>
defines the translation vector3
-
result: Matrix
defines the target matrix
Returns void
-
Static Decompose LerpSearch playground for DecomposeLerp
-
Builds a new matrix whose values are computed by:
- decomposing the the "startValue" and "endValue" matrices into their respective scale, rotation and translation matrices
- interpolating for "gradient" (float) the values between each of these decomposed matrices between the start and the end
- recomposing a new matrix from these 3 interpolated scale, rotation and translation matrices
Parameters
-
startValue: DeepImmutable<Matrix>
defines the first matrix
-
endValue: DeepImmutable<Matrix>
defines the second matrix
-
gradient: number
defines the gradient between the two matrices
Returns Matrix
the new matrix
Static Decompose Lerp ToRefSearch playground for DecomposeLerpToRef
-
Update a matrix to values which are computed by:
- decomposing the the "startValue" and "endValue" matrices into their respective scale, rotation and translation matrices
- interpolating for "gradient" (float) the values between each of these decomposed matrices between the start and the end
- recomposing a new matrix from these 3 interpolated scale, rotation and translation matrices
Parameters
-
startValue: DeepImmutable<Matrix>
defines the first matrix
-
endValue: DeepImmutable<Matrix>
defines the second matrix
-
gradient: number
defines the gradient between the two matrices
-
result: Matrix
defines the target matrix
Returns void
Static From ArraySearch playground for FromArray
-
Creates a matrix from an array
Parameters
-
array: DeepImmutable<ArrayLike<number>>
defines the source array
-
Optional offset: number
defines an offset in the source array
Returns Matrix
a new Matrix set from the starting index of the given array
-
Static From Array ToRefSearch playground for FromArrayToRef
-
Copy the content of an array into a given matrix
Parameters
-
array: DeepImmutable<ArrayLike<number>>
defines the source array
-
offset: number
defines an offset in the source array
-
result: Matrix
defines the target matrix
Returns void
-
Static From Float32 Array ToRef ScaledSearch playground for FromFloat32ArrayToRefScaled
-
Stores an array into a matrix after having multiplied each component by a given factor
Parameters
-
array: DeepImmutable<Float32Array | Array<number>>
defines the source array
-
offset: number
defines the offset in the source array
-
scale: number
defines the scaling factor
-
result: Matrix
defines the target matrix
Returns void
-
Static From Quaternion ToRefSearch playground for FromQuaternionToRef
-
Creates a rotation matrix from a quaternion and stores it in a target matrix
Parameters
-
quat: DeepImmutable<Quaternion>
defines the quaternion to use
-
result: Matrix
defines the target matrix
Returns void
-
Static From ValuesSearch playground for FromValues
-
Creates new matrix from a list of values (16)
Parameters
-
initialM11: number
defines 1st value of 1st row
-
initialM12: number
defines 2nd value of 1st row
-
initialM13: number
defines 3rd value of 1st row
-
initialM14: number
defines 4th value of 1st row
-
initialM21: number
defines 1st value of 2nd row
-
initialM22: number
defines 2nd value of 2nd row
-
initialM23: number
defines 3rd value of 2nd row
-
initialM24: number
defines 4th value of 2nd row
-
initialM31: number
defines 1st value of 3rd row
-
initialM32: number
defines 2nd value of 3rd row
-
initialM33: number
defines 3rd value of 3rd row
-
initialM34: number
defines 4th value of 3rd row
-
initialM41: number
defines 1st value of 4th row
-
initialM42: number
defines 2nd value of 4th row
-
initialM43: number
defines 3rd value of 4th row
-
initialM44: number
defines 4th value of 4th row
Returns Matrix
the new matrix
-
Static From Values ToRefSearch playground for FromValuesToRef
-
Stores a list of values (16) inside a given matrix
Parameters
-
initialM11: number
defines 1st value of 1st row
-
initialM12: number
defines 2nd value of 1st row
-
initialM13: number
defines 3rd value of 1st row
-
initialM14: number
defines 4th value of 1st row
-
initialM21: number
defines 1st value of 2nd row
-
initialM22: number
defines 2nd value of 2nd row
-
initialM23: number
defines 3rd value of 2nd row
-
initialM24: number
defines 4th value of 2nd row
-
initialM31: number
defines 1st value of 3rd row
-
initialM32: number
defines 2nd value of 3rd row
-
initialM33: number
defines 3rd value of 3rd row
-
initialM34: number
defines 4th value of 3rd row
-
initialM41: number
defines 1st value of 4th row
-
initialM42: number
defines 2nd value of 4th row
-
initialM43: number
defines 3rd value of 4th row
-
initialM44: number
defines 4th value of 4th row
-
result: Matrix
defines the target matrix
Returns void
-
Static FromXYZAxes ToRefSearch playground for FromXYZAxesToRef
-
Sets the given matrix as a rotation matrix composed from the 3 left handed axes
Parameters
-
xaxis: DeepImmutable<Vector3>
defines the value of the 1st axis
-
yaxis: DeepImmutable<Vector3>
defines the value of the 2nd axis
-
zaxis: DeepImmutable<Vector3>
defines the value of the 3rd axis
-
result: Matrix
defines the target matrix
Returns void
-
Static Get AsMatrix2x2Search playground for GetAsMatrix2x2
-
Extracts a 2x2 matrix from a given matrix and store the result in a Float32Array
Parameters
-
matrix: DeepImmutable<Matrix>
defines the matrix to use
Returns Float32Array | Array<number>
a new Float32Array array with 4 elements : the 2x2 matrix extracted from the given matrix
-
Static Get AsMatrix3x3Search playground for GetAsMatrix3x3
-
Extracts a 3x3 matrix from a given matrix and store the result in a Float32Array
Parameters
-
matrix: DeepImmutable<Matrix>
defines the matrix to use
Returns Float32Array | Array<number>
a new Float32Array array with 9 elements : the 3x3 matrix extracted from the given matrix
-
Static Get Final MatrixSearch playground for GetFinalMatrix
-
Computes a complete transformation matrix
Parameters
-
viewport: DeepImmutable<Viewport>
defines the viewport to use
-
world: DeepImmutable<Matrix>
defines the world matrix
-
view: DeepImmutable<Matrix>
defines the view matrix
-
projection: DeepImmutable<Matrix>
defines the projection matrix
-
zmin: number
defines the near clip plane
-
zmax: number
defines the far clip plane
Returns Matrix
the transformation matrix
-
Static IdentitySearch playground for Identity
-
Creates a new identity matrix
Returns Matrix
a new identity matrix
Static Identity ToRefSearch playground for IdentityToRef
-
Creates a new identity matrix and stores the result in a given matrix
Parameters
-
result: Matrix
defines the target matrix
Returns void
-
Static InvertSearch playground for Invert
-
Creates a new matrix as the invert of a given matrix
Parameters
-
source: DeepImmutable<Matrix>
defines the source matrix
Returns Matrix
the new matrix
-
Static LerpSearch playground for Lerp
-
Returns a new Matrix whose values are the interpolated values for "gradient" (float) between the ones of the matrices "startValue" and "endValue".
Parameters
-
startValue: DeepImmutable<Matrix>
defines the start value
-
endValue: DeepImmutable<Matrix>
defines the end value
-
gradient: number
defines the gradient factor
Returns Matrix
the new matrix
-
Static Lerp ToRefSearch playground for LerpToRef
-
Set the given matrix "result" as the interpolated values for "gradient" (float) between the ones of the matrices "startValue" and "endValue".
Parameters
-
startValue: DeepImmutable<Matrix>
defines the start value
-
endValue: DeepImmutable<Matrix>
defines the end value
-
gradient: number
defines the gradient factor
-
result: Matrix
defines the Matrix object where to store data
Returns void
-
Static Look AtLHSearch playground for LookAtLH
-
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
Parameters
-
eye: DeepImmutable<Vector3>
defines the final position of the entity
-
target: DeepImmutable<Vector3>
defines where the entity should look at
-
up: DeepImmutable<Vector3>
defines the up vector for the entity
Returns Matrix
the new matrix
-
Static Look AtLHTo RefSearch playground for LookAtLHToRef
-
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
Parameters
-
eye: DeepImmutable<Vector3>
defines the final position of the entity
-
target: DeepImmutable<Vector3>
defines where the entity should look at
-
up: DeepImmutable<Vector3>
defines the up vector for the entity
-
result: Matrix
defines the target matrix
Returns void
-
Static Look AtRHSearch playground for LookAtRH
-
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
Parameters
-
eye: DeepImmutable<Vector3>
defines the final position of the entity
-
target: DeepImmutable<Vector3>
defines where the entity should look at
-
up: DeepImmutable<Vector3>
defines the up vector for the entity
Returns Matrix
the new matrix
-
Static Look AtRHTo RefSearch playground for LookAtRHToRef
-
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
Parameters
-
eye: DeepImmutable<Vector3>
defines the final position of the entity
-
target: DeepImmutable<Vector3>
defines where the entity should look at
-
up: DeepImmutable<Vector3>
defines the up vector for the entity
-
result: Matrix
defines the target matrix
Returns void
-
Static OrthoLHSearch playground for OrthoLH
-
Create a left-handed orthographic projection matrix
Parameters
-
width: number
defines the viewport width
-
height: number
defines the viewport height
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
Returns Matrix
a new matrix as a left-handed orthographic projection matrix
-
Static OrthoLHTo RefSearch playground for OrthoLHToRef
-
Store a left-handed orthographic projection to a given matrix
Parameters
-
width: number
defines the viewport width
-
height: number
defines the viewport height
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
-
result: Matrix
defines the target matrix
Returns void
-
Static Ortho Off CenterLHSearch playground for OrthoOffCenterLH
-
Create a left-handed orthographic projection matrix
Parameters
-
left: number
defines the viewport left coordinate
-
right: number
defines the viewport right coordinate
-
bottom: number
defines the viewport bottom coordinate
-
top: number
defines the viewport top coordinate
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
Returns Matrix
a new matrix as a left-handed orthographic projection matrix
-
Static Ortho Off CenterLHTo RefSearch playground for OrthoOffCenterLHToRef
-
Stores a left-handed orthographic projection into a given matrix
Parameters
-
left: number
defines the viewport left coordinate
-
right: number
defines the viewport right coordinate
-
bottom: number
defines the viewport bottom coordinate
-
top: number
defines the viewport top coordinate
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
-
result: Matrix
defines the target matrix
Returns void
-
Static Ortho Off CenterRHSearch playground for OrthoOffCenterRH
-
Creates a right-handed orthographic projection matrix
Parameters
-
left: number
defines the viewport left coordinate
-
right: number
defines the viewport right coordinate
-
bottom: number
defines the viewport bottom coordinate
-
top: number
defines the viewport top coordinate
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
Returns Matrix
a new matrix as a right-handed orthographic projection matrix
-
Static Ortho Off CenterRHTo RefSearch playground for OrthoOffCenterRHToRef
-
Stores a right-handed orthographic projection into a given matrix
Parameters
-
left: number
defines the viewport left coordinate
-
right: number
defines the viewport right coordinate
-
bottom: number
defines the viewport bottom coordinate
-
top: number
defines the viewport top coordinate
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
-
result: Matrix
defines the target matrix
Returns void
-
Static Perspective FovLHSearch playground for PerspectiveFovLH
-
Creates a left-handed perspective projection matrix
Parameters
-
fov: number
defines the horizontal field of view
-
aspect: number
defines the aspect ratio
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
Returns Matrix
a new matrix as a left-handed perspective projection matrix
-
Static Perspective FovLHTo RefSearch playground for PerspectiveFovLHToRef
-
Stores a left-handed perspective projection into a given matrix
Parameters
-
fov: number
defines the horizontal field of view
-
aspect: number
defines the aspect ratio
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
-
result: Matrix
defines the target matrix
-
Optional isVerticalFovFixed: boolean
defines it the fov is vertically fixed (default) or horizontally
Returns void
-
Static Perspective FovRHSearch playground for PerspectiveFovRH
-
Creates a right-handed perspective projection matrix
Parameters
-
fov: number
defines the horizontal field of view
-
aspect: number
defines the aspect ratio
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
Returns Matrix
a new matrix as a right-handed perspective projection matrix
-
Static Perspective FovRHTo RefSearch playground for PerspectiveFovRHToRef
-
Stores a right-handed perspective projection into a given matrix
Parameters
-
fov: number
defines the horizontal field of view
-
aspect: number
defines the aspect ratio
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
-
result: Matrix
defines the target matrix
-
Optional isVerticalFovFixed: boolean
defines it the fov is vertically fixed (default) or horizontally
Returns void
-
Static Perspective Fov ReverseLHTo RefSearch playground for PerspectiveFovReverseLHToRef
-
Stores a left-handed perspective projection into a given matrix with depth reversed
Parameters
-
fov: number
defines the horizontal field of view
-
aspect: number
defines the aspect ratio
-
znear: number
defines the near clip plane
-
zfar: number
not used as infinity is used as far clip
-
result: Matrix
defines the target matrix
-
Optional isVerticalFovFixed: boolean
defines it the fov is vertically fixed (default) or horizontally
Returns void
-
Static Perspective Fov ReverseRHTo RefSearch playground for PerspectiveFovReverseRHToRef
-
Stores a right-handed perspective projection into a given matrix
Parameters
-
fov: number
defines the horizontal field of view
-
aspect: number
defines the aspect ratio
-
znear: number
defines the near clip plane
-
zfar: number
not used as infinity is used as far clip
-
result: Matrix
defines the target matrix
-
Optional isVerticalFovFixed: boolean
defines it the fov is vertically fixed (default) or horizontally
Returns void
-
Static Perspective Fov WebVRTo RefSearch playground for PerspectiveFovWebVRToRef
-
Stores a perspective projection for WebVR info a given matrix
Parameters
-
fov: { downDegrees: number; leftDegrees: number; rightDegrees: number; upDegrees: number }
defines the field of view
-
down
Degrees: number -
left
Degrees: number -
right
Degrees: number -
up
Degrees: number
-
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
-
result: Matrix
defines the target matrix
-
Optional rightHanded: boolean
defines if the matrix must be in right-handed mode (false by default)
Returns void
-
Static PerspectiveLHSearch playground for PerspectiveLH
-
Creates a left-handed perspective projection matrix
Parameters
-
width: number
defines the viewport width
-
height: number
defines the viewport height
-
znear: number
defines the near clip plane
-
zfar: number
defines the far clip plane
Returns Matrix
a new matrix as a left-handed perspective projection matrix
-
Static ReflectionSearch playground for Reflection
-
Computes a reflection matrix from a plane
Parameters
-
plane: DeepImmutable<IPlaneLike>
defines the reflection plane
Returns Matrix
a new matrix
-
Static Reflection ToRefSearch playground for ReflectionToRef
-
Computes a reflection matrix from a plane
Parameters
-
plane: DeepImmutable<IPlaneLike>
defines the reflection plane
-
result: Matrix
defines the target matrix
Returns void
-
Static Rotation Align ToRefSearch playground for RotationAlignToRef
-
Takes normalised vectors and returns a rotation matrix to align "from" with "to". Taken from http://www.iquilezles.org/www/articles/noacos/noacos.htm
Parameters
-
from: DeepImmutable<Vector3>
defines the vector to align
-
to: DeepImmutable<Vector3>
defines the vector to align to
-
result: Matrix
defines the target matrix
Returns void
-
Static Rotation AxisSearch playground for RotationAxis
-
Creates a new rotation matrix for "angle" radians around the given axis
Parameters
-
axis: DeepImmutable<Vector3>
defines the axis to use
-
angle: number
defines the angle (in radians) to use
Returns Matrix
the new matrix
-
Static Rotation Axis ToRefSearch playground for RotationAxisToRef
-
Creates a new rotation matrix for "angle" radians around the given axis and stores it in a given matrix
Parameters
-
axis: DeepImmutable<Vector3>
defines the axis to use
-
angle: number
defines the angle (in radians) to use
-
result: Matrix
defines the target matrix
Returns void
-
Static RotationXSearch playground for RotationX
-
Creates a new rotation matrix for "angle" radians around the X axis
Parameters
-
angle: number
defines the angle (in radians) to use
Returns Matrix
the new matrix
-
Static RotationXTo RefSearch playground for RotationXToRef
-
Creates a new rotation matrix for "angle" radians around the X axis and stores it in a given matrix
Parameters
-
angle: number
defines the angle (in radians) to use
-
result: Matrix
defines the target matrix
Returns void
-
Static RotationYSearch playground for RotationY
-
Creates a new rotation matrix for "angle" radians around the Y axis
Parameters
-
angle: number
defines the angle (in radians) to use
Returns Matrix
the new matrix
-
Static RotationYTo RefSearch playground for RotationYToRef
-
Creates a new rotation matrix for "angle" radians around the Y axis and stores it in a given matrix
Parameters
-
angle: number
defines the angle (in radians) to use
-
result: Matrix
defines the target matrix
Returns void
-
Static Rotation Yaw Pitch RollSearch playground for RotationYawPitchRoll
-
Creates a rotation matrix
Parameters
-
yaw: number
defines the yaw angle in radians (Y axis)
-
pitch: number
defines the pitch angle in radians (X axis)
-
roll: number
defines the roll angle in radians (Z axis)
Returns Matrix
the new rotation matrix
-
Static Rotation Yaw Pitch Roll ToRefSearch playground for RotationYawPitchRollToRef
-
Creates a rotation matrix and stores it in a given matrix
Parameters
-
yaw: number
defines the yaw angle in radians (Y axis)
-
pitch: number
defines the pitch angle in radians (X axis)
-
roll: number
defines the roll angle in radians (Z axis)
-
result: Matrix
defines the target matrix
Returns void
-
Static RotationZSearch playground for RotationZ
-
Creates a new rotation matrix for "angle" radians around the Z axis
Parameters
-
angle: number
defines the angle (in radians) to use
Returns Matrix
the new matrix
-
Static RotationZTo RefSearch playground for RotationZToRef
-
Creates a new rotation matrix for "angle" radians around the Z axis and stores it in a given matrix
Parameters
-
angle: number
defines the angle (in radians) to use
-
result: Matrix
defines the target matrix
Returns void
-
Static ScalingSearch playground for Scaling
-
Creates a scaling matrix
Parameters
-
x: number
defines the scale factor on X axis
-
y: number
defines the scale factor on Y axis
-
z: number
defines the scale factor on Z axis
Returns Matrix
the new matrix
-
Static Scaling ToRefSearch playground for ScalingToRef
-
Creates a scaling matrix and stores it in a given matrix
Parameters
-
x: number
defines the scale factor on X axis
-
y: number
defines the scale factor on Y axis
-
z: number
defines the scale factor on Z axis
-
result: Matrix
defines the target matrix
Returns void
-
Static TranslationSearch playground for Translation
-
Creates a translation matrix
Parameters
-
x: number
defines the translation on X axis
-
y: number
defines the translation on Y axis
-
z: number
defines the translationon Z axis
Returns Matrix
the new matrix
-
Static Translation ToRefSearch playground for TranslationToRef
-
Creates a translation matrix and stores it in a given matrix
Parameters
-
x: number
defines the translation on X axis
-
y: number
defines the translation on Y axis
-
z: number
defines the translationon Z axis
-
result: Matrix
defines the target matrix
Returns void
-
Static TransposeSearch playground for Transpose
-
Compute the transpose of a given matrix
Parameters
-
matrix: DeepImmutable<Matrix>
defines the matrix to transpose
Returns Matrix
the new matrix
-
Static Transpose ToRefSearch playground for TransposeToRef
-
Compute the transpose of a matrix and store it in a target matrix
Parameters
-
matrix: DeepImmutable<Matrix>
defines the matrix to transpose
-
result: Matrix
defines the target matrix
Returns void
-
Static ZeroSearch playground for Zero
-
Creates a new zero matrix
Returns Matrix
a new zero matrix
Class used to store matrix data (4x4)