Jungle_Week1_Team2
Loading...
Searching...
No Matches
FMatrix Struct Reference

#include <Matrix.h>

Public Member Functions

constexpr FMatrix () noexcept
constexpr FMatrix (float M00, float M01, float M02, float M03, float M10, float M11, float M12, float M13, float M20, float M21, float M22, float M23, float M30, float M31, float M32, float M33) noexcept
constexpr FMatrix (const FVector4 &Row0, const FVector4 &Row1, const FVector4 &Row2, const FVector4 &Row3) noexcept
 FMatrix (CXMMatrix InMatrix) noexcept
 FMatrix (const FMatrix &) noexcept=default
 FMatrix (FMatrix &&) noexcept=default
FMatrixoperator= (const FMatrix &) noexcept=default
FMatrixoperator= (FMatrix &&) noexcept=default
float * operator[] (int32 Row) noexcept
const float * operator[] (int32 Row) const noexcept
bool operator== (const FMatrix &Other) const noexcept
bool operator!= (const FMatrix &Other) const noexcept
FMatrix operator- () const noexcept
FMatrix operator+ (const FMatrix &Other) const noexcept
FMatrix operator- (const FMatrix &Other) const noexcept
FMatrix operator* (float Scalar) const noexcept
FMatrix operator/ (float Scalar) const noexcept
FMatrixoperator+= (const FMatrix &Other) noexcept
FMatrixoperator-= (const FMatrix &Other) noexcept
FMatrixoperator*= (float Scalar) noexcept
FMatrixoperator/= (float Scalar) noexcept
FMatrix operator* (const FMatrix &Other) const noexcept
FMatrixoperator*= (const FMatrix &Other) noexcept
XMMatrix ToXMMatrix () const noexcept
bool Equals (const FMatrix &Other, float Tolerance=1.e-6f) const noexcept
FMatrix GetTransposed () const noexcept
FVector TransformVector (const FVector &V) const noexcept
FVector TransformPosition (const FVector &V) const noexcept
FVector GetOrigin () const noexcept
void SetOrigin (const FVector &Origin) noexcept
FVector GetScaledAxis (EAxis Axis) const noexcept
FVector GetUnitAxis (EAxis Axis) const noexcept
void RemoveTranslation () noexcept
FMatrix GetMatrixWithoutTranslation () const noexcept
FMatrix GetMatrixWithoutScale (float Tolerance=1.e-8f) const noexcept
FVector GetScaleVector () const noexcept
bool IsIdentity (float Tolerance=1.e-6f) const noexcept
float Determinant () const noexcept
FMatrix GetInverse (float Tolerance=1.e-8f) const noexcept
bool Inverse (float Tolerance=1.e-8f) noexcept
bool IsInvertible (float Tolerance=1.e-8f) const noexcept
FMatrix ApplyScale (const FVector &Scale) const noexcept
FMatrix ApplyScale (float Scale) const noexcept
FMatrix GetRotationMatrix (float Tolerance=1.e-8f) const noexcept
FVector GetForwardVector () const noexcept
FVector GetRightVector () const noexcept
FVector GetUpVector () const noexcept
void SetAxes (const FVector &XAxis, const FVector &YAxis, const FVector &ZAxis, const FVector &Origin=FVector::ZeroVector) noexcept
bool Decompose (FVector &OutTranslation, FMatrix &OutRotation, FVector &OutScale, float Tolerance=1.e-8f) const noexcept
FVector GetTranslation () const noexcept
void SetTranslation (const FVector &Translation) noexcept

Static Public Member Functions

static FMatrix MakeTranslation (const FVector &Translation) noexcept
static FMatrix MakeScale (const FVector &Scale) noexcept
static FMatrix MakeRotationX (float AngleRad) noexcept
static FMatrix MakeRotationY (float AngleRad) noexcept
static FMatrix MakeRotationZ (float AngleRad) noexcept
static FMatrix MakeScale (float Scale) noexcept
static FMatrix MakeFromX (const FVector &XAxis) noexcept
static FMatrix MakeFromY (const FVector &YAxis) noexcept
static FMatrix MakeFromZ (const FVector &ZAxis) noexcept
static FMatrix MakeLookAt (const FVector &Eye, const FVector &Target, const FVector &Up=FVector::UpVector) noexcept
static FMatrix MakePerspectiveFovLH (float FovYRad, float AspectRatio, float NearZ, float FarZ) noexcept
static FMatrix MakeOrthographicLH (float ViewWidth, float ViewHeight, float NearZ, float FarZ) noexcept
static FMatrix MakeViewLookAtLH (const FVector &Eye, const FVector &Target, const FVector &Up=FVector::UpVector) noexcept
static FMatrix MakeBillboard (const FVector &Position, const FVector &CameraPosition, const FVector &Up=FVector::UpVector) noexcept
static FMatrix MakeWorld (const FVector &Translation, const FMatrix &RotationMatrix, const FVector &Scale) noexcept
static FMatrix MakeTRS (const FVector &Translation, const FMatrix &RotationMatrix, const FVector &Scale) noexcept

Public Attributes

float M [4][4]

Static Public Attributes

static const FMatrix Identity

Constructor & Destructor Documentation

◆ FMatrix() [1/6]

FMatrix::FMatrix ( )
inlineconstexprnoexcept

◆ FMatrix() [2/6]

FMatrix::FMatrix ( float M00,
float M01,
float M02,
float M03,
float M10,
float M11,
float M12,
float M13,
float M20,
float M21,
float M22,
float M23,
float M30,
float M31,
float M32,
float M33 )
inlineconstexprnoexcept

◆ FMatrix() [3/6]

FMatrix::FMatrix ( const FVector4 & Row0,
const FVector4 & Row1,
const FVector4 & Row2,
const FVector4 & Row3 )
inlineconstexprnoexcept

◆ FMatrix() [4/6]

FMatrix::FMatrix ( CXMMatrix InMatrix)
inlineexplicitnoexcept

◆ FMatrix() [5/6]

FMatrix::FMatrix ( const FMatrix & )
defaultnoexcept

◆ FMatrix() [6/6]

FMatrix::FMatrix ( FMatrix && )
defaultnoexcept

Member Function Documentation

◆ ApplyScale() [1/2]

FMatrix FMatrix::ApplyScale ( const FVector & Scale) const
inlinenoexcept

◆ ApplyScale() [2/2]

FMatrix FMatrix::ApplyScale ( float Scale) const
inlinenoexcept

◆ Decompose()

bool FMatrix::Decompose ( FVector & OutTranslation,
FMatrix & OutRotation,
FVector & OutScale,
float Tolerance = 1.e-8f ) const
inlinenoexcept

◆ Determinant()

float FMatrix::Determinant ( ) const
inlinenoexcept

◆ Equals()

bool FMatrix::Equals ( const FMatrix & Other,
float Tolerance = 1.e-6f ) const
inlinenoexcept

◆ GetForwardVector()

FVector FMatrix::GetForwardVector ( ) const
inlinenoexcept

◆ GetInverse()

FMatrix FMatrix::GetInverse ( float Tolerance = 1.e-8f) const
inlinenoexcept

◆ GetMatrixWithoutScale()

FMatrix FMatrix::GetMatrixWithoutScale ( float Tolerance = 1.e-8f) const
inlinenoexcept

◆ GetMatrixWithoutTranslation()

FMatrix FMatrix::GetMatrixWithoutTranslation ( ) const
inlinenoexcept

◆ GetOrigin()

FVector FMatrix::GetOrigin ( ) const
inlinenoexcept

◆ GetRightVector()

FVector FMatrix::GetRightVector ( ) const
inlinenoexcept

◆ GetRotationMatrix()

FMatrix FMatrix::GetRotationMatrix ( float Tolerance = 1.e-8f) const
inlinenoexcept

◆ GetScaledAxis()

FVector FMatrix::GetScaledAxis ( EAxis Axis) const
inlinenoexcept

◆ GetScaleVector()

FVector FMatrix::GetScaleVector ( ) const
inlinenoexcept

◆ GetTranslation()

FVector FMatrix::GetTranslation ( ) const
inlinenoexcept

◆ GetTransposed()

FMatrix FMatrix::GetTransposed ( ) const
inlinenoexcept

◆ GetUnitAxis()

FVector FMatrix::GetUnitAxis ( EAxis Axis) const
inlinenoexcept

◆ GetUpVector()

FVector FMatrix::GetUpVector ( ) const
inlinenoexcept

◆ Inverse()

bool FMatrix::Inverse ( float Tolerance = 1.e-8f)
inlinenodiscardnoexcept

◆ IsIdentity()

bool FMatrix::IsIdentity ( float Tolerance = 1.e-6f) const
inlinenoexcept

◆ IsInvertible()

bool FMatrix::IsInvertible ( float Tolerance = 1.e-8f) const
inlinenoexcept

◆ MakeBillboard()

FMatrix FMatrix::MakeBillboard ( const FVector & Position,
const FVector & CameraPosition,
const FVector & Up = FVector::UpVector )
inlinestaticnoexcept

◆ MakeFromX()

FMatrix FMatrix::MakeFromX ( const FVector & XAxis)
inlinestaticnoexcept

◆ MakeFromY()

FMatrix FMatrix::MakeFromY ( const FVector & YAxis)
inlinestaticnoexcept

◆ MakeFromZ()

FMatrix FMatrix::MakeFromZ ( const FVector & ZAxis)
inlinestaticnoexcept

◆ MakeLookAt()

FMatrix FMatrix::MakeLookAt ( const FVector & Eye,
const FVector & Target,
const FVector & Up = FVector::UpVector )
inlinestaticnoexcept

◆ MakeOrthographicLH()

FMatrix FMatrix::MakeOrthographicLH ( float ViewWidth,
float ViewHeight,
float NearZ,
float FarZ )
inlinestaticnoexcept

◆ MakePerspectiveFovLH()

FMatrix FMatrix::MakePerspectiveFovLH ( float FovYRad,
float AspectRatio,
float NearZ,
float FarZ )
inlinestaticnoexcept

◆ MakeRotationX()

FMatrix FMatrix::MakeRotationX ( float AngleRad)
inlinestaticnoexcept

◆ MakeRotationY()

FMatrix FMatrix::MakeRotationY ( float AngleRad)
inlinestaticnoexcept

◆ MakeRotationZ()

FMatrix FMatrix::MakeRotationZ ( float AngleRad)
inlinestaticnoexcept

◆ MakeScale() [1/2]

FMatrix FMatrix::MakeScale ( const FVector & Scale)
inlinestaticnoexcept

◆ MakeScale() [2/2]

FMatrix FMatrix::MakeScale ( float Scale)
inlinestaticnoexcept

◆ MakeTranslation()

FMatrix FMatrix::MakeTranslation ( const FVector & Translation)
inlinestaticnoexcept

◆ MakeTRS()

FMatrix FMatrix::MakeTRS ( const FVector & Translation,
const FMatrix & RotationMatrix,
const FVector & Scale )
inlinestaticnoexcept

◆ MakeViewLookAtLH()

FMatrix FMatrix::MakeViewLookAtLH ( const FVector & Eye,
const FVector & Target,
const FVector & Up = FVector::UpVector )
inlinestaticnoexcept

◆ MakeWorld()

FMatrix FMatrix::MakeWorld ( const FVector & Translation,
const FMatrix & RotationMatrix,
const FVector & Scale )
inlinestaticnoexcept

◆ operator!=()

bool FMatrix::operator!= ( const FMatrix & Other) const
inlinenoexcept

◆ operator*() [1/2]

FMatrix FMatrix::operator* ( const FMatrix & Other) const
inlinenoexcept

◆ operator*() [2/2]

FMatrix FMatrix::operator* ( float Scalar) const
inlinenoexcept

◆ operator*=() [1/2]

FMatrix & FMatrix::operator*= ( const FMatrix & Other)
inlinenoexcept

◆ operator*=() [2/2]

FMatrix & FMatrix::operator*= ( float Scalar)
inlinenoexcept

◆ operator+()

FMatrix FMatrix::operator+ ( const FMatrix & Other) const
inlinenoexcept

◆ operator+=()

FMatrix & FMatrix::operator+= ( const FMatrix & Other)
inlinenoexcept

◆ operator-() [1/2]

FMatrix FMatrix::operator- ( ) const
inlinenoexcept

◆ operator-() [2/2]

FMatrix FMatrix::operator- ( const FMatrix & Other) const
inlinenoexcept

◆ operator-=()

FMatrix & FMatrix::operator-= ( const FMatrix & Other)
inlinenoexcept

◆ operator/()

FMatrix FMatrix::operator/ ( float Scalar) const
inlinenoexcept

◆ operator/=()

FMatrix & FMatrix::operator/= ( float Scalar)
inlinenoexcept

◆ operator=() [1/2]

FMatrix & FMatrix::operator= ( const FMatrix & )
defaultnoexcept

◆ operator=() [2/2]

FMatrix & FMatrix::operator= ( FMatrix && )
defaultnoexcept

◆ operator==()

bool FMatrix::operator== ( const FMatrix & Other) const
inlinenoexcept

◆ operator[]() [1/2]

const float * FMatrix::operator[] ( int32 Row) const
inlinenoexcept

◆ operator[]() [2/2]

float * FMatrix::operator[] ( int32 Row)
inlinenoexcept

◆ RemoveTranslation()

void FMatrix::RemoveTranslation ( )
inlinenoexcept

◆ SetAxes()

void FMatrix::SetAxes ( const FVector & XAxis,
const FVector & YAxis,
const FVector & ZAxis,
const FVector & Origin = FVector::ZeroVector )
inlinenoexcept

◆ SetOrigin()

void FMatrix::SetOrigin ( const FVector & Origin)
inlinenoexcept

◆ SetTranslation()

void FMatrix::SetTranslation ( const FVector & Translation)
inlinenoexcept

◆ ToXMMatrix()

XMMatrix FMatrix::ToXMMatrix ( ) const
inlinenoexcept

◆ TransformPosition()

FVector FMatrix::TransformPosition ( const FVector & V) const
inlinenoexcept

◆ TransformVector()

FVector FMatrix::TransformVector ( const FVector & V) const
inlinenoexcept

Member Data Documentation

◆ Identity

const FMatrix FMatrix::Identity
static

◆ M

float FMatrix::M[4][4]

The documentation for this struct was generated from the following files: