# Matrix4x4 Struct

## Definition

Represents a 4x4 matrix.

``public value class Matrix4x4 : IEquatable<System::Numerics::Matrix4x4>``
``public struct Matrix4x4 : IEquatable<System.Numerics.Matrix4x4>``
``type Matrix4x4 = struct``
``````Public Structure Matrix4x4
Implements IEquatable(Of Matrix4x4)``````
Inheritance
Matrix4x4
Implements

## Remarks

For matrix transformations, the Vector2, Vector3, and Vector4 instances are represented as rows: a vector v is transformed by a matrix M with vM multiplication.

## Constructors

 Creates a Matrix4x4 object from a specified Matrix3x2 object. Creates a 4x4 matrix from the specified components.

## Fields

 The first element of the first row. The second element of the first row. The third element of the first row. The fourth element of the first row. The first element of the second row. The second element of the second row. The third element of the second row. The fourth element of the second row. The first element of the third row. The second element of the third row. The third element of the third row. The fourth element of the third row. The first element of the fourth row. The second element of the fourth row. The third element of the fourth row. The fourth element of the fourth row.

## Properties

 Gets the multiplicative identity matrix. Indicates whether the current matrix is the identity matrix. Gets or sets the translation component of this matrix.

## Methods

 Adds each element in one matrix with its corresponding element in a second matrix. Creates a spherical billboard that rotates around a specified object position. Creates a cylindrical billboard that rotates around a specified axis. Creates a matrix that rotates around an arbitrary vector. Creates a rotation matrix from the specified Quaternion rotation value. Creates a rotation matrix from the specified yaw, pitch, and roll. Creates a view matrix. Creates an orthographic perspective matrix from the given view volume dimensions. Creates a customized orthographic projection matrix. Creates a perspective projection matrix from the given view volume dimensions. Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. Creates a customized perspective projection matrix. Creates a matrix that reflects the coordinate system about a specified plane. Creates a matrix for rotating points around the X axis. Creates a matrix for rotating points around the X axis from a center point. Creates a matrix for rotating points around the Y axis. The amount, in radians, by which to rotate around the Y axis from a center point. Creates a matrix for rotating points around the Z axis. Creates a matrix for rotating points around the Z axis from a center point. Creates a uniform scaling matrix that scale equally on each axis. Creates a scaling matrix from the specified X, Y, and Z components. Creates a scaling matrix that is offset by a given center point. Creates a uniform scaling matrix that scales equally on each axis with a center point. Creates a scaling matrix from the specified vector scale. Creates a scaling matrix with a center point. Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. Creates a translation matrix from the specified X, Y, and Z components. Creates a translation matrix from the specified 3-dimensional vector. Creates a world matrix with the specified parameters. Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. Returns a value that indicates whether this instance and another 4x4 matrix are equal. Returns a value that indicates whether this instance and a specified object are equal. Calculates the determinant of the current 4x4 matrix. Returns the hash code for this instance. Inverts the specified matrix. The return value indicates whether the operation succeeded. Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. Returns the matrix that results from multiplying two matrices together. Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. Negates the specified matrix by multiplying all its values by -1. Subtracts each element in a second matrix from its corresponding element in a first matrix. Returns a string that represents this matrix. Transforms the specified matrix by applying the specified Quaternion rotation. Transposes the rows and columns of a matrix.

## Operators

 Adds each element in one matrix with its corresponding element in a second matrix. Returns a value that indicates whether the specified matrices are equal. Returns a value that indicates whether the specified matrices are not equal. Returns the matrix that results from multiplying two matrices together. Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. Subtracts each element in a second matrix from its corresponding element in a first matrix. Negates the specified matrix by multiplying all its values by -1.