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

#include <ClipProjectionMatrix.h>

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

Public Member Functions

 TClipProjectionMatrix (const TMatrix< T > &SrcProjMat, const TPlane< T > &Plane)
 
template<typename FArg , TEMPLATE_REQUIRES(!std::is_same_v< T, FArg >) >
 TClipProjectionMatrix (const TClipProjectionMatrix< 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)
 

Private Member Functions

FORCEINLINE T sgn (T a)
 

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::TClipProjectionMatrix< T >

Realigns the near plane for an existing projection matrix with an arbitrary clip plane from: http://sourceforge.net/mailarchive/message.php?msg_id=000901c26324%242181ea90%24a1e93942%40firefly Updated for the fact that our FPlane uses Ax+By+Cz=D.

Definition at line 19 of file ClipProjectionMatrix.h.

Constructor & Destructor Documentation

◆ TClipProjectionMatrix() [1/2]

template<typename T >
FORCEINLINE UE::Math::TClipProjectionMatrix< T >::TClipProjectionMatrix ( const TMatrix< T > & SrcProjMat,
const TPlane< T > & Plane )

Constructor

Parameters
SrcProjMat- source projection matrix to premultiply with the clip matrix
Plane- clipping plane used to build the clip matrix (assumed to be in camera space)

Definition at line 42 of file ClipProjectionMatrix.h.

◆ TClipProjectionMatrix() [2/2]

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

Definition at line 33 of file ClipProjectionMatrix.h.

Member Function Documentation

◆ sgn()

template<typename T >
FORCEINLINE T UE::Math::TClipProjectionMatrix< T >::sgn ( T a)
private

return sign of a number

Definition at line 68 of file ClipProjectionMatrix.h.


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