UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MorphTargetVertexCodec.cpp File Reference
#include "Rendering/MorphTargetVertexCodec.h"
#include "Animation/MorphTarget.h"
#include "Containers/Array.h"
#include "Math/Vector.h"
#include "Engine/EngineConsoleCommandExecutor.h"

Classes

class  UE::MorphTargetVertexCodec::FDwordBitWriter
 
class  UE::MorphTargetVertexCodec::FDwordViewBitWriter
 
class  UE::MorphTargetVertexCodec::FDwordBitReader
 

Namespaces

namespace  UE
 
namespace  UE::MorphTargetVertexCodec
 

Functions

void UE::MorphTargetVertexCodec::Encode (TConstArrayView< FMorphTargetDelta > InMorphDeltas, const TBitArray<> *InVertexNeedsTangents, const float InPositionPrecision, const float InTangentZPrecision, TArray< FDeltaBatchHeader > &OutBatchHeaders, TArray< uint32 > &OutCompressedVertices)
 
void UE::MorphTargetVertexCodec::Decode (TConstArrayView< FDeltaBatchHeader > InBatchHeaders, TConstArrayView< uint32 > InCompressedVertices, const float InPositionPrecision, const float InTangentZPrecision, TArray< FMorphTargetDelta > &OutMorphDeltas)
 
bool UE::MorphTargetVertexCodec::IterativeDecode (uint64 &InOutNextItemToken, TConstArrayView< FDeltaBatchHeader > InBatchHeaders, TConstArrayView< uint32 > InCompressedVertices, const float InPositionPrecision, const float InTangentZPrecision, FMorphTargetDelta &OutMorphTargetDelta)
 
void UE::MorphTargetVertexCodec::WriteHeader (const FDeltaBatchHeader &InBatchHeader, TArrayView< uint32 > OutData)
 
void UE::MorphTargetVertexCodec::ReadHeader (FDeltaBatchHeader &OutBatchHeader, TConstArrayView< uint32 > InData)
 
void UE::MorphTargetVertexCodec::WriteQuantizedDeltas (TConstArrayView< FQuantizedDelta > InQuantizedDeltas, const FDeltaBatchHeader &InBatchHeader, TArrayView< uint32 > OutData)
 
void UE::MorphTargetVertexCodec::ReadQuantizedDeltas (TArrayView< FQuantizedDelta > OutQuantizedDeltas, const FDeltaBatchHeader &InBatchHeader, TConstArrayView< uint32 > InData)
 
uint32 UE::MorphTargetVertexCodec::CalculateBatchDwords (const FDeltaBatchHeader &InBatchHeader)
 
void UE::MorphTargetVertexCodec::QuantizeDelta (const FMorphTargetDelta &InDelta, const bool bInNeedsTangent, FQuantizedDelta &OutQuantizedDelta, const float InPositionPrecision, const float InTangentZPrecision)
 
void UE::MorphTargetVertexCodec::DequantizeDelta (FMorphTargetDelta &OutDelta, const bool bInNeedsTangent, const FQuantizedDelta &InQuantizedDelta, const float InPositionPrecision, const float InTangentZPrecision)
 

Variables

constexpr uint32 UE::MorphTargetVertexCodec::IndexMaxBits = 31u
 
constexpr uint32 UE::MorphTargetVertexCodec::PositionMaxBits = 28u
 
constexpr float UE::MorphTargetVertexCodec::PositionMinValue = -134217728.0f
 
constexpr float UE::MorphTargetVertexCodec::PositionMaxValue = 134217720.0f
 
constexpr uint32 UE::MorphTargetVertexCodec::TangentZMaxBits = 16u
 
constexpr float UE::MorphTargetVertexCodec::TangentZMinValue = -32768.0f
 
constexpr float UE::MorphTargetVertexCodec::TangentZMaxValue = 32767.0f