Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
UE::Math::TPerspectiveMatrix< T > Struct Template Reference

#include <PerspectiveMatrix.h>

+ Inheritance diagram for UE::Math::TPerspectiveMatrix< T >:
+ Collaboration diagram for UE::Math::TPerspectiveMatrix< T >:

Public Member Functions

 TPerspectiveMatrix (T HalfFOVX, T HalfFOVY, T MultFOVX, T MultFOVY, T MinZ, T MaxZ)
 
 TPerspectiveMatrix (T HalfFOV, T Width, T Height, T MinZ, T MaxZ)
 
 TPerspectiveMatrix (T HalfFOV, T Width, T Height, T MinZ)
 
template<typename FArg , TEMPLATE_REQUIRES(!std::is_same_v< T, FArg >) >
 TPerspectiveMatrix (const TPerspectiveMatrix< FArg > &From)
 
- Public Member Functions inherited from UE::Math::TMatrix< T >
FORCEINLINE void DiagnosticCheckNaN () const
 
FORCEINLINE TMatrix ()
 
FORCEINLINE TMatrix (EForceInit)
 
FORCEINLINE TMatrix (const TPlane< T > &InX, const TPlane< T > &InY, const TPlane< T > &InZ, const TPlane< T > &InW)
 
FORCEINLINE TMatrix (const TVector< T > &InX, const TVector< T > &InY, const TVector< T > &InZ, const TVector< T > &InW)
 
void SetIdentity ()
 
FORCEINLINE TMatrix< Toperator* (const TMatrix< T > &Other) const
 
FORCEINLINE void operator*= (const TMatrix< T > &Other)
 
FORCEINLINE TMatrix< Toperator+ (const TMatrix< T > &Other) const
 
FORCEINLINE void operator+= (const TMatrix< T > &Other)
 
FORCEINLINE TMatrix< Toperator* (T Other) const
 
FORCEINLINE void operator*= (T Other)
 
bool operator== (const TMatrix< T > &Other) const
 
bool Equals (const TMatrix< T > &Other, T Tolerance=UE_KINDA_SMALL_NUMBER) const
 
bool operator!= (const TMatrix< T > &Other) const
 
FORCEINLINE TVector4< TTransformFVector4 (const TVector4< T > &V) const
 
FORCEINLINE TVector4< TTransformPosition (const TVector< T > &V) const
 
FORCEINLINE TVector< TInverseTransformPosition (const TVector< T > &V) const
 
FORCEINLINE TVector4< TTransformVector (const TVector< T > &V) const
 
FORCEINLINE TVector< TInverseTransformVector (const TVector< T > &V) const
 
FORCEINLINE TMatrix< TGetTransposed () const
 
T Determinant () const
 
T RotDeterminant () const
 
TMatrix< TInverseFast () const
 
TMatrix< TInverse () const
 
TMatrix< TTransposeAdjoint () const
 
void RemoveScaling (T Tolerance=UE_SMALL_NUMBER)
 
TMatrix< TGetMatrixWithoutScale (T Tolerance=UE_SMALL_NUMBER) const
 
TVector< TExtractScaling (T Tolerance=UE_SMALL_NUMBER)
 
TVector< TGetScaleVector (T Tolerance=UE_SMALL_NUMBER) const
 
TMatrix< TRemoveTranslation () const
 
TMatrix< TConcatTranslation (const TVector< T > &Translation) const
 
bool ContainsNaN () const
 
void ScaleTranslation (const TVector< T > &Scale3D)
 
T GetMinimumAxisScale () const
 
T GetMaximumAxisScale () const
 
TMatrix< TApplyScale (T Scale) const
 
TVector< TGetOrigin () const
 
TVector< TGetScaledAxis (EAxis::Type Axis) const
 
void GetScaledAxes (TVector< T > &X, TVector< T > &Y, TVector< T > &Z) const
 
TVector< TGetUnitAxis (EAxis::Type Axis) const
 
void GetUnitAxes (TVector< T > &X, TVector< T > &Y, TVector< T > &Z) const
 
void SetAxis (int32 i, const TVector< T > &Axis)
 
void SetOrigin (const TVector< T > &NewOrigin)
 
void SetAxes (const TVector< T > *Axis0=NULL, const TVector< T > *Axis1=NULL, const TVector< T > *Axis2=NULL, const TVector< T > *Origin=NULL)
 
TVector< TGetColumn (int32 i) const
 
void SetColumn (int32 i, TVector< T > Value)
 
UE::Math::TRotator< TRotator () const
 
UE::Math::TQuat< TToQuat () const
 
FORCEINLINE bool GetFrustumNearPlane (TPlane< T > &OuTPln) const
 
FORCEINLINE bool GetFrustumFarPlane (TPlane< T > &OuTPln) const
 
FORCEINLINE bool GetFrustumLeftPlane (TPlane< T > &OuTPln) const
 
FORCEINLINE bool GetFrustumRightPlane (TPlane< T > &OuTPln) const
 
FORCEINLINE bool GetFrustumTopPlane (TPlane< T > &OuTPln) const
 
FORCEINLINE bool GetFrustumBottomPlane (TPlane< T > &OuTPln) const
 
void Mirror (EAxis::Type MirrorAxis, EAxis::Type FlipAxis)
 
FString ToString () const
 
void DebugPrint () const
 
uint32 ComputeHash () const
 
bool Serialize (FArchive &Ar)
 
bool SerializeFromMismatchedTag (FName StructTag, FArchive &Ar)
 
void To3x4MatrixTranspose (T *Out) const
 
template<typename FArg , TEMPLATE_REQUIRES(!std::is_same_v< T, FArg >) >
 TMatrix (const TMatrix< FArg > &From)
 

Additional Inherited Members

- Public Types inherited from UE::Math::TMatrix< T >
using FReal = T
 
- Public Attributes inherited from UE::Math::TMatrix< T >
T M [4][4]
 
- Static Public Attributes inherited from UE::Math::TMatrix< T >
static const TMatrix Identity
 

Detailed Description

template<typename T>
struct UE::Math::TPerspectiveMatrix< T >

Definition at line 14 of file PerspectiveMatrix.h.

Constructor & Destructor Documentation

◆ TPerspectiveMatrix() [1/4]

template<typename T >
FORCEINLINE UE::Math::TPerspectiveMatrix< T >::TPerspectiveMatrix ( T HalfFOVX,
T HalfFOVY,
T MultFOVX,
T MultFOVY,
T MinZ,
T MaxZ )

Constructor

Parameters
HalfFOVXHalf FOV in the X axis
HalfFOVYHalf FOV in the Y axis
MultFOVXmultiplier on the X axis
MultFOVYmultiplier on the y axis
MinZdistance to the near Z plane
MaxZdistance to the far Z plane

Definition at line 85 of file PerspectiveMatrix.h.

◆ TPerspectiveMatrix() [2/4]

template<typename T >
FORCEINLINE UE::Math::TPerspectiveMatrix< T >::TPerspectiveMatrix ( T HalfFOV,
T Width,
T Height,
T MinZ,
T MaxZ )

Constructor

Parameters
HalfFOVhalf Field of View in the Y direction
Widthview space width
Heightview space height
MinZdistance to the near Z plane
MaxZdistance to the far Z plane
Note
that the FOV you pass in is actually half the FOV, unlike most perspective matrix functions (D3DXMatrixPerspectiveFovLH).

Definition at line 96 of file PerspectiveMatrix.h.

◆ TPerspectiveMatrix() [3/4]

template<typename T >
FORCEINLINE UE::Math::TPerspectiveMatrix< T >::TPerspectiveMatrix ( T HalfFOV,
T Width,
T Height,
T MinZ )

Constructor

Parameters
HalfFOVhalf Field of View in the Y direction
Widthview space width
Heightview space height
MinZdistance to the near Z plane
Note
that the FOV you pass in is actually half the FOV, unlike most perspective matrix functions (D3DXMatrixPerspectiveFovLH).

Definition at line 107 of file PerspectiveMatrix.h.

◆ TPerspectiveMatrix() [4/4]

template<typename T >
template<typename FArg , TEMPLATE_REQUIRES(!std::is_same_v< T, FArg >) >
UE::Math::TPerspectiveMatrix< T >::TPerspectiveMatrix ( const TPerspectiveMatrix< FArg > & From)
inlineexplicit

Definition at line 59 of file PerspectiveMatrix.h.


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