UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Chaos::FHeightField::FData< InStorageType > Struct Template Reference

#include <HeightField.h>

Classes

struct  MinMaxHeights
 

Public Types

using StorageType = InStorageType
 

Public Member Functions

constexpr FReal GetCellWidth () const
 
constexpr FReal GetCellHeight () const
 
FORCEINLINE int32 CellIndexToVertexIndex (const int32 CellIndex) const
 Convert a Cell Index to a Vertex Index. Returns the vertex index of the first corner in the cell. The other corners will be (VertexIndex + 1), (VertexIndex + NumCols), (VertexIndex + NumCols + 1). Most functions in this class take a vertex index.
 
FORCEINLINE FVec3 GetPoint (int32 Index) const
 
FORCEINLINE FVec3 GetPointScaled (int32 Index) const
 
FORCEINLINE void GetPoints (int32 Index, FVec3 OutPts[4]) const
 
FORCEINLINE void GetPointsAndBounds (int32 Index, FVec3 OutPts[4], FAABB3 &OutBounds) const
 
FORCEINLINE void GetPointsAndBoundsSimd (int32 Index, VectorRegister4Float OutPts[4], FAABBVectorized &OutBounds) const
 
FORCEINLINE void GetBoundsSimd (int32 Index, FAABBVectorized &OutBounds) const
 
FORCEINLINE void GetBounds (TVec2< int32 > CellIdx, TVec2< int32 > Area, FAABBVectorized &OutBounds) const
 
FORCEINLINE void GetLowResBounds (TVec2< int32 > CellIdx, FAABBVectorized &OutBounds) const
 
FORCEINLINE void GetPointsScaled (int32 Index, FVec3 OutPts[4]) const
 
FORCEINLINE void GetPointsAndBoundsScaled (int32 Index, FVec3 OutPts[4], FAABB3 &OutBounds) const
 
FORCEINLINE void GetPointsAndBoundsScaledSimd (int32 Index, VectorRegister4Float OutPts[4], FAABBVectorized &OutBounds) const
 
FORCEINLINE void GetBoundsScaledSimd (int32 Index, FAABBVectorized &OutBounds) const
 
FORCEINLINE void GetBoundsScaled (TVec2< int32 > CellIdx, TVec2< int32 > Area, FAABBVectorized &OutBounds) const
 
FORCEINLINE void GetBoundsScaled (TVec2< int32 > CellIdx, FAABBVectorized &OutBounds) const
 
FORCEINLINE void GetLowResBoundsScaled (TVec2< int32 > CellIdx, FAABBVectorized &OutBounds) const
 
FORCEINLINE FReal GetMinHeight () const
 
FORCEINLINE FReal GetMaxHeight () const
 
void Serialize (FChaosArchive &Ar)
 
void BuildLowResolutionData ()
 

Public Attributes

TArray< StorageTypeHeights
 
TArray< MinMaxHeightsLowResolutionHeights
 
TArray< uint8MaterialIndices
 
FVec3 Scale
 
VectorRegister4Float ScaleSimd
 
FReal MinValue
 
FReal MaxValue
 
uint16 NumRows
 
uint16 NumCols
 
FReal Range
 
FReal HeightPerUnit
 
uint16 NumColsLowRes
 

Static Public Attributes

static constexpr int32 RealSize = sizeof(FReal)
 
static constexpr int32 StorageSize = sizeof(StorageType)
 
static constexpr int32 StorageRange = TNumericLimits<StorageType>::Max()
 
static constexpr int32 LowResInc = 6
 

Member Typedef Documentation

◆ StorageType

Member Function Documentation

◆ BuildLowResolutionData()

template<typename InStorageType >
void Chaos::FHeightField::FData< InStorageType >::BuildLowResolutionData ( )
inline

◆ CellIndexToVertexIndex()

template<typename InStorageType >
FORCEINLINE int32 Chaos::FHeightField::FData< InStorageType >::CellIndexToVertexIndex ( const int32  CellIndex) const
inline

Convert a Cell Index to a Vertex Index. Returns the vertex index of the first corner in the cell. The other corners will be (VertexIndex + 1), (VertexIndex + NumCols), (VertexIndex + NumCols + 1). Most functions in this class take a vertex index.

00 — 01 — 02 — 03 | 0 | 1 | 2 | 04 — 05 — 06 — 07 | 3 | 4 | 5 | 08 — 09 — 10 — 11 | 6 | 7 | 8 | 12 — 13 — 14 — 15

◆ GetBounds()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetBounds ( TVec2< int32 CellIdx,
TVec2< int32 Area,
FAABBVectorized OutBounds 
) const
inline

◆ GetBoundsScaled() [1/2]

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetBoundsScaled ( TVec2< int32 CellIdx,
FAABBVectorized OutBounds 
) const
inline

◆ GetBoundsScaled() [2/2]

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetBoundsScaled ( TVec2< int32 CellIdx,
TVec2< int32 Area,
FAABBVectorized OutBounds 
) const
inline

◆ GetBoundsScaledSimd()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetBoundsScaledSimd ( int32  Index,
FAABBVectorized OutBounds 
) const
inline

◆ GetBoundsSimd()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetBoundsSimd ( int32  Index,
FAABBVectorized OutBounds 
) const
inline

◆ GetCellHeight()

template<typename InStorageType >
constexpr FReal Chaos::FHeightField::FData< InStorageType >::GetCellHeight ( ) const
inlineconstexpr

◆ GetCellWidth()

template<typename InStorageType >
constexpr FReal Chaos::FHeightField::FData< InStorageType >::GetCellWidth ( ) const
inlineconstexpr

◆ GetLowResBounds()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetLowResBounds ( TVec2< int32 CellIdx,
FAABBVectorized OutBounds 
) const
inline

◆ GetLowResBoundsScaled()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetLowResBoundsScaled ( TVec2< int32 CellIdx,
FAABBVectorized OutBounds 
) const
inline

◆ GetMaxHeight()

template<typename InStorageType >
FORCEINLINE FReal Chaos::FHeightField::FData< InStorageType >::GetMaxHeight ( ) const
inline

◆ GetMinHeight()

template<typename InStorageType >
FORCEINLINE FReal Chaos::FHeightField::FData< InStorageType >::GetMinHeight ( ) const
inline

◆ GetPoint()

template<typename InStorageType >
FORCEINLINE FVec3 Chaos::FHeightField::FData< InStorageType >::GetPoint ( int32  Index) const
inline

◆ GetPoints()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetPoints ( int32  Index,
FVec3  OutPts[4] 
) const
inline

◆ GetPointsAndBounds()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetPointsAndBounds ( int32  Index,
FVec3  OutPts[4],
FAABB3 OutBounds 
) const
inline

◆ GetPointsAndBoundsScaled()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetPointsAndBoundsScaled ( int32  Index,
FVec3  OutPts[4],
FAABB3 OutBounds 
) const
inline

◆ GetPointsAndBoundsScaledSimd()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetPointsAndBoundsScaledSimd ( int32  Index,
VectorRegister4Float  OutPts[4],
FAABBVectorized OutBounds 
) const
inline

◆ GetPointsAndBoundsSimd()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetPointsAndBoundsSimd ( int32  Index,
VectorRegister4Float  OutPts[4],
FAABBVectorized OutBounds 
) const
inline

◆ GetPointScaled()

template<typename InStorageType >
FORCEINLINE FVec3 Chaos::FHeightField::FData< InStorageType >::GetPointScaled ( int32  Index) const
inline

◆ GetPointsScaled()

template<typename InStorageType >
FORCEINLINE void Chaos::FHeightField::FData< InStorageType >::GetPointsScaled ( int32  Index,
FVec3  OutPts[4] 
) const
inline

◆ Serialize()

Member Data Documentation

◆ HeightPerUnit

◆ Heights

◆ LowResInc

template<typename InStorageType >
constexpr int32 Chaos::FHeightField::FData< InStorageType >::LowResInc = 6
staticconstexpr

◆ LowResolutionHeights

◆ MaterialIndices

◆ MaxValue

◆ MinValue

◆ NumCols

◆ NumColsLowRes

◆ NumRows

◆ Range

◆ RealSize

◆ Scale

◆ ScaleSimd

◆ StorageRange

◆ StorageSize


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