﻿Matrix Structure

# Matrix Structure

RAGE Plugin Hook Documentation

[This is preliminary documentation and is subject to change.]

Defines a 4x4 matrix.

Namespace:  Rage
Assembly:  RagePluginHook (in RagePluginHook.dll) Version: 0.0.0.0 (0.56.1131.11510)
Syntax

```[SerializableAttribute]
public struct Matrix : IEquatable<Matrix>```

The Matrix type exposes the following members.

Properties

NameDescription
Columns
Identity
Gets a Matrix that represents an identity matrix.
IsIdentity
Gets a value indicating whether this instance is an identity matrix.
Item
Rows
Top
Methods

NameDescription
Determines the sum of two matrices.
Determines the sum of two matrices.
AffineTransformation(Single, Vector3, Quaternion, Vector3)
Creates a 3D affine transformation matrix.
AffineTransformation(Single, Vector3, Quaternion, Vector3, Matrix)
Creates a 3D affine transformation matrix.
AffineTransformation2D(Single, Vector2, Single, Vector2)
Creates a 2D affine transformation matrix.
AffineTransformation2D(Single, Vector2, Single, Vector2, Matrix)
Creates a 2D affine transformation matrix.
Billboard(Vector3, Vector3, Vector3, Vector3)
Creates a spherical billboard that rotates around a specified object position.
Billboard(Vector3, Vector3, Vector3, Vector3, Matrix)
Creates a spherical billboard that rotates around a specified object position.
Decompose
Decomposes the matrix into its scalar, rotational, and translational elements.
Determinant
Calculates the determinant of the matrix.
Divide(Matrix, Matrix)
Determines the quotient of two matrices.
Divide(Matrix, Single)
Scales a matrix by the given value.
Divide(Matrix, Matrix, Matrix)
Determines the quotient of two matrices.
Divide(Matrix, Single, Matrix)
Scales a matrix by the given value.
Equals(Object)
Returns a value that indicates whether the current instance is equal to a specified object.
(Overrides ValueTypeEquals(Object).)
Equals(Matrix)
Returns a value that indicates whether the current instance is equal to the specified object.
Equals(Matrix, Matrix)
Determines whether the specified object instances are considered equal.
GetHashCode
Returns the hash code for this instance.
(Overrides ValueTypeGetHashCode.)
Invert
Inverts the matrix.
Invert(Matrix)
Calculates the inverse of the specified matrix.
Invert(Matrix, Matrix)
Calculates the inverse of the specified matrix.
Lerp(Matrix, Matrix, Single)
Performs a linear interpolation between two matricies.
Lerp(Matrix, Matrix, Single, Matrix)
Performs a linear interpolation between two matricies.
LookAtLH(Vector3, Vector3, Vector3)
Creates a left-handed, look-at matrix.
LookAtLH(Vector3, Vector3, Vector3, Matrix)
Creates a left-handed, look-at matrix.
LookAtRH(Vector3, Vector3, Vector3)
Creates a right-handed, look-at matrix.
LookAtRH(Vector3, Vector3, Vector3, Matrix)
Creates a right-handed, look-at matrix.
Multiply(Matrix, Matrix)
Determines the product of two matrices.
Multiply(Matrix, Single)
Scales a matrix by the given value.
Multiply(Matrix, Matrix, Matrix)
Determines the product of two matrices.
Multiply(Matrix, Single, Matrix)
Scales a matrix by the given value.
Multiply(Matrix, Matrix, Matrix)
Determines the products of of an array of matrices by a single matrix.
Multiply(Matrix, Matrix, Matrix)
Determines the products of two arrays of matrices.
Multiply(Matrix*, Matrix*, Matrix*, Int32)
Determines the products of two arrays of matrices.
Multiply(Matrix, Matrix, Matrix, Int32, Int32)
Determines the products of of an array of matrices by a single matrix.
Multiply(Matrix, Matrix, Matrix, Int32, Int32)
Determines the products of two arrays of matrices.
Negate(Matrix)
Negates a matrix.
Negate(Matrix, Matrix)
Negates a matrix.
OrthoLH(Single, Single, Single, Single)
Creates a left-handed, orthographic projection matrix.
OrthoLH(Single, Single, Single, Single, Matrix)
Creates a left-handed, orthographic projection matrix.
OrthoOffCenterLH(Single, Single, Single, Single, Single, Single)
Creates a left-handed, customized orthographic projection matrix.
OrthoOffCenterLH(Single, Single, Single, Single, Single, Single, Matrix)
Creates a left-handed, customized orthographic projection matrix.
OrthoOffCenterRH(Single, Single, Single, Single, Single, Single)
Creates a right-handed, customized orthographic projection matrix.
OrthoOffCenterRH(Single, Single, Single, Single, Single, Single, Matrix)
Creates a right-handed, customized orthographic projection matrix.
OrthoRH(Single, Single, Single, Single)
Creates a right-handed, orthographic projection matrix.
OrthoRH(Single, Single, Single, Single, Matrix)
Creates a right-handed, orthographic projection matrix.
PerspectiveFovLH(Single, Single, Single, Single)
Creates a left-handed, perspective projection matrix based on a field of view.
PerspectiveFovLH(Single, Single, Single, Single, Matrix)
Creates a left-handed, perspective projection matrix based on a field of view.
PerspectiveFovRH(Single, Single, Single, Single)
Creates a right-handed, perspective projection matrix based on a field of view.
PerspectiveFovRH(Single, Single, Single, Single, Matrix)
Creates a right-handed, perspective projection matrix based on a field of view.
PerspectiveLH(Single, Single, Single, Single)
Creates a left-handed, perspective projection matrix.
PerspectiveLH(Single, Single, Single, Single, Matrix)
Creates a left-handed, perspective projection matrix.
PerspectiveOffCenterLH(Single, Single, Single, Single, Single, Single)
Creates a left-handed, customized perspective projection matrix.
PerspectiveOffCenterLH(Single, Single, Single, Single, Single, Single, Matrix)
Creates a left-handed, customized perspective projection matrix.
PerspectiveOffCenterRH(Single, Single, Single, Single, Single, Single)
Creates a right-handed, customized perspective projection matrix.
PerspectiveOffCenterRH(Single, Single, Single, Single, Single, Single, Matrix)
Creates a right-handed, customized perspective projection matrix.
PerspectiveRH(Single, Single, Single, Single)
Creates a right-handed, perspective projection matrix.
PerspectiveRH(Single, Single, Single, Single, Matrix)
Creates a right-handed, perspective projection matrix.
RotationAxis(Vector3, Single)
Creates a matrix that rotates around an arbitary axis.
RotationAxis(Vector3, Single, Matrix)
Creates a matrix that rotates around an arbitary axis.
RotationQuaternion(Quaternion)
Creates a rotation matrix from a quaternion.
RotationQuaternion(Quaternion, Matrix)
Creates a rotation matrix from a quaternion.
RotationX(Single)
Creates a matrix that rotates around the x-axis.
RotationX(Single, Matrix)
Creates a matrix that rotates around the x-axis.
RotationY(Single)
Creates a matrix that rotates around the y-axis.
RotationY(Single, Matrix)
Creates a matrix that rotates around the y-axis.
RotationYawPitchRoll(Single, Single, Single)
Creates a rotation matrix with a specified yaw, pitch, and roll.
RotationYawPitchRoll(Single, Single, Single, Matrix)
Creates a rotation matrix with a specified yaw, pitch, and roll.
RotationZ(Single)
Creates a matrix that rotates around the z-axis.
RotationZ(Single, Matrix)
Creates a matrix that rotates around the z-axis.
Scaling(Vector3)
Creates a matrix that scales along the x-axis, y-axis, and y-axis.
Scaling(Vector3, Matrix)
Creates a matrix that scales along the x-axis, y-axis, and y-axis.
Scaling(Single, Single, Single)
Creates a matrix that scales along the x-axis, y-axis, and y-axis.
Scaling(Single, Single, Single, Matrix)
Creates a matrix that scales along the x-axis, y-axis, and y-axis.
Subtract(Matrix, Matrix)
Determines the difference between two matrices.
Subtract(Matrix, Matrix, Matrix)
Determines the difference between two matrices.
ToArray
ToString
Converts the value of the object to its equivalent string representation.
(Overrides ValueTypeToString.)
Transformation(Vector3, Quaternion, Vector3, Vector3, Quaternion, Vector3)
Creates a transformation matrix.
Transformation(Vector3, Quaternion, Vector3, Vector3, Quaternion, Vector3, Matrix)
Creates a transformation matrix.
Transformation2D(Vector2, Single, Vector2, Vector2, Single, Vector2)
Creates a 2D transformation matrix.
Transformation2D(Vector2, Single, Vector2, Vector2, Single, Vector2, Matrix)
Creates a 2D transformation matrix.
Translation(Vector3)
Creates a translation matrix using the specified offsets.
Translation(Vector3, Matrix)
Creates a translation matrix using the specified offsets.
Translation(Single, Single, Single)
Creates a translation matrix using the specified offsets.
Translation(Single, Single, Single, Matrix)
Creates a translation matrix using the specified offsets.
Transpose(Matrix)
Calculates the transpose of the specified matrix.
Transpose(Matrix, Matrix)
Calculates the transpose of the specified matrix.
Top
Operators

NameDescription
Division(Matrix, Matrix)
Divides two matricies.
Division(Matrix, Single)
Scales a matrix by a given value.
Equality
Tests for equality between two objects.
Inequality
Tests for inequality between two objects.
Multiply(Single, Matrix)
Scales a matrix by a given value.
Multiply(Matrix, Matrix)
Multiplies two matricies.
Multiply(Matrix, Single)
Scales a matrix by a given value.
Subtraction
Subtracts two matricies.
UnaryNegation
Negates a matrix.
Top
Fields

NameDescription
M11
Gets or sets the element of the matrix that exists in the first row and first column.
M12
Gets or sets the element of the matrix that exists in the first row and second column.
M13
Gets or sets the element of the matrix that exists in the first row and third column.
M14
Gets or sets the element of the matrix that exists in the first row and fourth column.
M21
Gets or sets the element of the matrix that exists in the second row and first column.
M22
Gets or sets the element of the matrix that exists in the second row and second column.
M23
Gets or sets the element of the matrix that exists in the second row and third column.
M24
Gets or sets the element of the matrix that exists in the second row and fourth column.
M31
Gets or sets the element of the matrix that exists in the third row and first column.
M32
Gets or sets the element of the matrix that exists in the third row and second column.
M33
Gets or sets the element of the matrix that exists in the third row and third column.
M34
Gets or sets the element of the matrix that exists in the third row and fourth column.
M41
Gets or sets the element of the matrix that exists in the fourth row and first column.
M42
Gets or sets the element of the matrix that exists in the fourth row and second column.
M43
Gets or sets the element of the matrix that exists in the fourth row and third column.
M44
Gets or sets the element of the matrix that exists in the fourth row and fourth column.
Top