Struct Matrix44
- Namespace
- Lime
- Assembly
- Lime.dll
public struct Matrix44 : IEquatable<Matrix44>
- Implements
- Inherited Members
Constructors
Matrix44(float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float)
public Matrix44(float m11, float m12, float m13, float m14, float m21, float m22, float m23, float m24, float m31, float m32, float m33, float m34, float m41, float m42, float m43, float m44)
Parameters
m11
floatm12
floatm13
floatm14
floatm21
floatm22
floatm23
floatm24
floatm31
floatm32
floatm33
floatm34
floatm41
floatm42
floatm43
floatm44
float
Fields
M11
[YuzuMember("0")]
public float M11
Field Value
M12
[YuzuMember("1")]
public float M12
Field Value
M13
[YuzuMember("2")]
public float M13
Field Value
M14
[YuzuMember("3")]
public float M14
Field Value
M21
[YuzuMember("4")]
public float M21
Field Value
M22
[YuzuMember("5")]
public float M22
Field Value
M23
[YuzuMember("6")]
public float M23
Field Value
M24
[YuzuMember("7")]
public float M24
Field Value
M31
[YuzuMember("8")]
public float M31
Field Value
M32
[YuzuMember("9")]
public float M32
Field Value
M33
[YuzuMember("A")]
public float M33
Field Value
M34
[YuzuMember("B")]
public float M34
Field Value
M41
[YuzuMember("C")]
public float M41
Field Value
M42
[YuzuMember("D")]
public float M42
Field Value
M43
[YuzuMember("E")]
public float M43
Field Value
M44
[YuzuMember("F")]
public float M44
Field Value
Properties
Backward
public Vector3 Backward { get; set; }
Property Value
Down
public Vector3 Down { get; set; }
Property Value
Forward
public Vector3 Forward { get; set; }
Property Value
Identity
public static Matrix44 Identity { get; }
Property Value
Left
public Vector3 Left { get; set; }
Property Value
Right
public Vector3 Right { get; set; }
Property Value
Rotation
public Quaternion Rotation { get; }
Property Value
Scale
public Vector3 Scale { get; }
Property Value
Translation
public Vector3 Translation { get; set; }
Property Value
Up
public Vector3 Up { get; set; }
Property Value
Methods
CalcDeterminant()
public float CalcDeterminant()
Returns
CalcInverted()
public Matrix44 CalcInverted()
Returns
CreateFromAxisAngle(Vector3, float)
public static Matrix44 CreateFromAxisAngle(Vector3 axis, float angle)
Parameters
Returns
CreateFromAxisAngle(ref Vector3, float, out Matrix44)
public static void CreateFromAxisAngle(ref Vector3 axis, float angle, out Matrix44 result)
Parameters
CreateLookAt(Vector3, Vector3, Vector3)
public static Matrix44 CreateLookAt(Vector3 cameraPosition, Vector3 cameraTarget, Vector3 cameraUpVector)
Parameters
Returns
CreateLookAt(ref Vector3, ref Vector3, ref Vector3, out Matrix44)
public static void CreateLookAt(ref Vector3 cameraPosition, ref Vector3 cameraTarget, ref Vector3 cameraUpVector, out Matrix44 result)
Parameters
CreateOrthographic(float, float, float, float)
public static Matrix44 CreateOrthographic(float width, float height, float zNear, float zFar)
Parameters
Returns
CreateOrthographicOffCenter(float, float, float, float, float, float)
public static Matrix44 CreateOrthographicOffCenter(float left, float right, float bottom, float top, float zNear, float zFar)
Parameters
Returns
CreatePerspective(float, float, float, float)
public static Matrix44 CreatePerspective(float width, float height, float zNear, float zFar)
Parameters
Returns
CreatePerspectiveFieldOfView(float, float, float, float)
public static Matrix44 CreatePerspectiveFieldOfView(float vFov, float aspectRatio, float zNear, float zFar)
Parameters
Returns
CreatePerspectiveOffCenter(float, float, float, float, float, float)
public static Matrix44 CreatePerspectiveOffCenter(float left, float right, float bottom, float top, float zNear, float zFar)
Parameters
Returns
CreateReflection(Plane)
public static Matrix44 CreateReflection(Plane plane)
Parameters
plane
Plane
Returns
CreateRotation(Quaternion)
public static Matrix44 CreateRotation(Quaternion quaternion)
Parameters
quaternion
Quaternion
Returns
CreateRotation(ref Quaternion, out Matrix44)
public static void CreateRotation(ref Quaternion quaternion, out Matrix44 result)
Parameters
quaternion
Quaternionresult
Matrix44
CreateRotationX(float)
public static Matrix44 CreateRotationX(float radians)
Parameters
radians
float
Returns
CreateRotationX(float, out Matrix44)
public static void CreateRotationX(float radians, out Matrix44 result)
Parameters
CreateRotationY(float)
public static Matrix44 CreateRotationY(float radians)
Parameters
radians
float
Returns
CreateRotationY(float, out Matrix44)
public static void CreateRotationY(float radians, out Matrix44 result)
Parameters
CreateRotationZ(float)
public static Matrix44 CreateRotationZ(float radians)
Parameters
radians
float
Returns
CreateRotationZ(float, out Matrix44)
public static void CreateRotationZ(float radians, out Matrix44 result)
Parameters
CreateScale(Vector3)
public static Matrix44 CreateScale(Vector3 scales)
Parameters
scales
Vector3
Returns
CreateScale(float, float, float)
public static Matrix44 CreateScale(float x, float y, float z)
Parameters
Returns
CreateTranslation(Vector3)
public static Matrix44 CreateTranslation(Vector3 position)
Parameters
position
Vector3
Returns
CreateTranslation(float, float, float)
public static Matrix44 CreateTranslation(float x, float y, float z)
Parameters
Returns
Decompose(out Vector3, out Matrix44, out Vector3)
Decomposes a matrix into a scale, rotation, and translation.
public void Decompose(out Vector3 scale, out Matrix44 rotation, out Vector3 translation)
Parameters
scale
Vector3When the method completes, contains the scaling component of the decomposed matrix.
rotation
Matrix44When the method completes, contains the rtoation component of the decomposed matrix.
translation
Vector3When the method completes, contains the translation component of the decomposed matrix.
Remarks
This method is designed to decompose an SRT transformation matrix only.
Decompose(out Vector3, out Quaternion, out Vector3)
Decomposes a matrix into a scale, rotation, and translation.
public void Decompose(out Vector3 scale, out Quaternion rotation, out Vector3 translation)
Parameters
scale
Vector3When the method completes, contains the scaling component of the decomposed matrix.
rotation
QuaternionWhen the method completes, contains the rtoation component of the decomposed matrix.
translation
Vector3When the method completes, contains the translation component of the decomposed matrix.
Remarks
This method is designed to decompose an SRT transformation matrix only.
Equals(Matrix44)
Indicates whether the current object is equal to another object of the same type.
public bool Equals(Matrix44 other)
Parameters
other
Matrix44An object to compare with this object.
Returns
Equals(object)
Indicates whether this instance and a specified object are equal.
public override bool Equals(object obj)
Parameters
obj
objectThe object to compare with the current instance.
Returns
- bool
true if
obj
and this instance are the same type and represent the same value; otherwise, false.
GetHashCode()
Returns the hash code for this instance.
public override int GetHashCode()
Returns
- int
A 32-bit signed integer that is the hash code for this instance.
GetScale(bool)
public Vector3 GetScale(bool checkReflexion)
Parameters
checkReflexion
bool
Returns
Invert(Matrix44)
public static Matrix44 Invert(Matrix44 matrix)
Parameters
matrix
Matrix44
Returns
Invert(ref Matrix44, out Matrix44)
public static void Invert(ref Matrix44 matrix, out Matrix44 result)
Parameters
Lerp(Matrix44, Matrix44, float)
public static Matrix44 Lerp(Matrix44 value1, Matrix44 value2, float amount)
Parameters
Returns
ProjectVector(Vector2)
public Vector2 ProjectVector(Vector2 position)
Parameters
position
Vector2
Returns
ProjectVector(Vector3)
public Vector3 ProjectVector(Vector3 position)
Parameters
position
Vector3
Returns
ToFloatArray()
public float[] ToFloatArray()
Returns
- float[]
ToString()
Returns the fully qualified type name of this instance.
public override string ToString()
Returns
- string
The fully qualified type name.
TransformNormal(Vector2)
public Vector2 TransformNormal(Vector2 normal)
Parameters
normal
Vector2
Returns
TransformNormal(Vector3)
public Vector3 TransformNormal(Vector3 normal)
Parameters
normal
Vector3
Returns
TransformVector(Vector2)
public Vector2 TransformVector(Vector2 position)
Parameters
position
Vector2
Returns
TransformVector(Vector3)
public Vector3 TransformVector(Vector3 position)
Parameters
position
Vector3
Returns
TransformVector(Vector4)
public Vector4 TransformVector(Vector4 position)
Parameters
position
Vector4
Returns
Transpose()
public Matrix44 Transpose()
Returns
Transpose(Matrix44)
public static Matrix44 Transpose(Matrix44 matrix)
Parameters
matrix
Matrix44
Returns
Transpose(ref Matrix44, out Matrix44)
public static void Transpose(ref Matrix44 matrix, out Matrix44 result)
Parameters
Operators
operator +(Matrix44, Matrix44)
public static Matrix44 operator +(Matrix44 matrix1, Matrix44 matrix2)
Parameters
Returns
operator ==(Matrix44, Matrix44)
public static bool operator ==(Matrix44 matrix1, Matrix44 matrix2)
Parameters
Returns
operator !=(Matrix44, Matrix44)
public static bool operator !=(Matrix44 matrix1, Matrix44 matrix2)
Parameters
Returns
operator *(Matrix44, Matrix44)
public static Matrix44 operator *(Matrix44 matrix1, Matrix44 matrix2)
Parameters
Returns
operator *(Matrix44, float)
public static Matrix44 operator *(Matrix44 matrix, float scaleFactor)
Parameters
Returns
operator *(Vector2, Matrix44)
public static Vector2 operator *(Vector2 a, Matrix44 b)
Parameters
Returns
operator *(Vector3, Matrix44)
public static Vector3 operator *(Vector3 a, Matrix44 b)
Parameters
Returns
operator -(Matrix44, Matrix44)
public static Matrix44 operator -(Matrix44 matrix1, Matrix44 matrix2)
Parameters
Returns
operator -(Matrix44)
public static Matrix44 operator -(Matrix44 matrix)
Parameters
matrix
Matrix44