Show / Hide Table of Contents

# Struct Matrix4x4

##### Implements

IEquatable<Matrix4x4>

##### Inherited Members

System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.ReferenceEquals(System.Object, System.Object)

###### Namespace: FFXIVClientStructs.FFXIV.Common.Math

###### Assembly: FFXIVClientStructs.dll

##### Syntax

    public struct Matrix4x4

### Constructors

| Improve this Doc View Source

#### Matrix4x4(Single)

##### Declaration

    public Matrix4x4(float value)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Single | value |

### Fields

| Improve this Doc View Source

#### Identity

##### Declaration

    public static readonly Matrix4x4 Identity

##### Field Value

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### M11

##### Declaration

    public float M11

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M12

##### Declaration

    public float M12

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M13

##### Declaration

    public float M13

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M14

##### Declaration

    public float M14

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M21

##### Declaration

    public float M21

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M22

##### Declaration

    public float M22

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M23

##### Declaration

    public float M23

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M24

##### Declaration

    public float M24

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M31

##### Declaration

    public float M31

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M32

##### Declaration

    public float M32

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M33

##### Declaration

    public float M33

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M34

##### Declaration

    public float M34

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M41

##### Declaration

    public float M41

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M42

##### Declaration

    public float M42

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M43

##### Declaration

    public float M43

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### M44

##### Declaration

    public float M44

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Matrix

##### Declaration

    public float *Matrix

##### Field Value

Type | Description
--- | ---
System.Single* |

| Improve this Doc View Source

#### Zero

##### Declaration

    public static readonly Matrix4x4 Zero

##### Field Value

Type | Description
--- | ---
Matrix4x4 |

### Properties

| Improve this Doc View Source

#### IsIdentity

##### Declaration

    public readonly bool IsIdentity { get; }

##### Property Value

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Item[Int32]

##### Declaration

    public float this[int index] { get; set; }

##### Parameters

Type | Name | Description
--- | --- | ---
System.Int32 | index |

##### Property Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Item[Int32, Int32]

##### Declaration

    public float this[int row, int column] { get; set; }

##### Parameters

Type | Name | Description
--- | --- | ---
System.Int32 | row |
System.Int32 | column |

##### Property Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Translation

##### Declaration

    public Vector3 Translation { readonly get; set; }

##### Property Value

Type | Description
--- | ---
Vector3 |

### Methods

| Improve this Doc View Source

#### CreateFromQuaternion(Quaternion)

##### Declaration

    public static Matrix4x4 CreateFromQuaternion(Quaternion quaternion)

##### Parameters

Type | Name | Description
--- | --- | ---
Quaternion | quaternion |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### CreateFromYawPitchRoll(Single, Single, Single)

##### Declaration

    public static Matrix4x4 CreateFromYawPitchRoll(float yaw, float pitch, float roll)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Single | yaw |
System.Single | pitch |
System.Single | roll |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### CreateLookAt(Vector3, Vector3, Vector3)

##### Declaration

    public static Matrix4x4 CreateLookAt(Vector3 cameraPosition, Vector3 cameraTarget, Vector3 cameraUpVector)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | cameraPosition |
Vector3 | cameraTarget |
Vector3 | cameraUpVector |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### CreateWorld(Vector3, Vector3, Vector3)

##### Declaration

    public static Matrix4x4 CreateWorld(Vector3 position, Vector3 forward, Vector3 up)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | position |
Vector3 | forward |
Vector3 | up |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### Decompose(Matrix4x4, out Vector3, out Quaternion, out Vector3)

##### Declaration

    public static bool Decompose(Matrix4x4 matrix, out Vector3 scale, out Quaternion rotation, out Vector3 translation)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | matrix |
Vector3 | scale |
Quaternion | rotation |
Vector3 | translation |

##### Returns

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Equals(Matrix4x4)

##### Declaration

    public bool Equals(Matrix4x4 other)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | other |

##### Returns

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Equals(Object)

##### Declaration

    public override bool Equals(object obj)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Object | obj |

##### Returns

Type | Description
--- | ---
System.Boolean |

##### Overrides

System.ValueType.Equals(System.Object)
| Improve this Doc View Source

#### GetHashCode()

##### Declaration

    public override int GetHashCode()

##### Returns

Type | Description
--- | ---
System.Int32 |

##### Overrides

System.ValueType.GetHashCode()
| Improve this Doc View Source

#### Invert(Matrix4x4, out Matrix4x4)

##### Declaration

    public static bool Invert(Matrix4x4 matrix, out Matrix4x4 result)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | matrix |
Matrix4x4 | result |

##### Returns

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Lerp(Matrix4x4, Matrix4x4, Single)

##### Declaration

    public static Matrix4x4 Lerp(Matrix4x4 start, Matrix4x4 end, float amount)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | start |
Matrix4x4 | end |
System.Single | amount |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### LerpUnclamped(Matrix4x4, Matrix4x4, Single)

##### Declaration

    public static Matrix4x4 LerpUnclamped(Matrix4x4 start, Matrix4x4 end, float amount)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | start |
Matrix4x4 | end |
System.Single | amount |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### SmoothStep(Matrix4x4, Matrix4x4, Single)

##### Declaration

    public static Matrix4x4 SmoothStep(Matrix4x4 start, Matrix4x4 end, float amount)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | start |
Matrix4x4 | end |
System.Single | amount |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### ToString()

##### Declaration

    public override string ToString()

##### Returns

Type | Description
--- | ---
System.String |

##### Overrides

System.ValueType.ToString()
| Improve this Doc View Source

#### Transpose(Matrix4x4)

##### Declaration

    public static Matrix4x4 Transpose(Matrix4x4 matrix)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | matrix |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

### Operators

| Improve this Doc View Source

#### Addition(Matrix4x4, Matrix4x4)

##### Declaration

    public static Matrix4x4 operator +(Matrix4x4 a, Matrix4x4 b)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | a |
Matrix4x4 | b |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### Equality(Matrix4x4, Matrix4x4)

##### Declaration

    public static bool operator ==(Matrix4x4 left, Matrix4x4 right)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | left |
Matrix4x4 | right |

##### Returns

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Implicit(Matrix4x4 to Matrix4x4)

##### Declaration

    public static implicit operator Matrix4x4(Matrix4x4 matrix)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | matrix |

##### Returns

Type | Description
--- | ---
System.Numerics.Matrix4x4 |

| Improve this Doc View Source

#### Implicit(Matrix4x4 to Matrix4x4)

##### Declaration

    public static implicit operator Matrix4x4(Matrix4x4 matrix)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Matrix4x4 | matrix |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### Inequality(Matrix4x4, Matrix4x4)

##### Declaration

    public static bool operator !=(Matrix4x4 left, Matrix4x4 right)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | left |
Matrix4x4 | right |

##### Returns

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Multiply(Matrix4x4, Matrix4x4)

##### Declaration

    public static Matrix4x4 operator *(Matrix4x4 a, Matrix4x4 b)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | a |
Matrix4x4 | b |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### Multiply(Matrix4x4, Single)

##### Declaration

    public static Matrix4x4 operator *(Matrix4x4 a, float b)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | a |
System.Single | b |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### Subtraction(Matrix4x4, Matrix4x4)

##### Declaration

    public static Matrix4x4 operator -(Matrix4x4 a, Matrix4x4 b)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | a |
Matrix4x4 | b |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

| Improve this Doc View Source

#### UnaryNegation(Matrix4x4)

##### Declaration

    public static Matrix4x4 operator -(Matrix4x4 a)

##### Parameters

Type | Name | Description
--- | --- | ---
Matrix4x4 | a |

##### Returns

Type | Description
--- | ---
Matrix4x4 |

### Implements

IEquatable<>