13#define checkDistribution check
159#define DIST_GET_RANDOM_VALUE(RandStream) ((RandStream == NULL) ? FMath::SRand() : RandStream->GetFraction())
289 float MinValue, MaxValue;
360 float MinValue[3], MaxValue[3];
452 float MinValue[4], MaxValue[4];
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
ERawDistributionOperation
Definition Distributions.h:19
@ RDO_None
Definition Distributions.h:21
@ RDO_Uninitialized
Definition Distributions.h:20
@ RDO_Random
Definition Distributions.h:22
@ RDO_Extreme
Definition Distributions.h:23
#define checkDistribution
Definition Distributions.h:13
UE::Math::TVector4< double > FVector4d
Definition MathFwd.h:62
UE::Math::TVector< double > FVector3d
Definition MathFwd.h:60
Definition Archive.h:1208
Definition Distributions.h:519
static void BuildVector(class FVectorDistribution &OutDistribution, const class FComposableVectorDistribution &XYZ)
Definition Distributions.cpp:1386
static void QuantizeVector4(TArray< FColor > &OutQuantizedSamples, FVector4 &OutScale, FVector4 &OutBias, const class FVector4Distribution &Distribution)
Definition Distributions.cpp:1442
FComposableDistribution(const FComposableDistribution &Other)
Definition Distributions.h:594
static void BuildFloat(class FFloatDistribution &OutDistribution, const class FComposableFloatDistribution &X)
Definition Distributions.cpp:1378
~FComposableDistribution()
Definition Distributions.h:591
FDistributionLookupTable LookupTable
Definition Distributions.h:585
static void BuildVector4(class FVector4Distribution &OutDistribution, const class FComposableVectorDistribution &XYZ, const class FComposableFloatDistribution &W)
Definition Distributions.cpp:1394
const FComposableDistribution & operator=(const FComposableDistribution &Other)
Definition Distributions.h:600
FComposableDistribution()
Definition Distributions.h:588
Definition Distributions.h:611
void Normalize(float *OutScale, float *OutBias)
Definition Distributions.cpp:1568
void ScaleByConstant(float Scale)
Definition Distributions.cpp:1533
FComposableFloatDistribution(const FComposableFloatDistribution &Other)
Definition Distributions.h:617
void ScaleByDistribution(const class UDistributionFloat *FloatDistribution)
Definition Distributions.cpp:1540
const FComposableFloatDistribution & operator=(const FComposableFloatDistribution &Other)
Definition Distributions.h:623
FComposableFloatDistribution()
Definition Distributions.cpp:1507
void AddDistribution(const class UDistributionFloat *FloatDistribution)
Definition Distributions.cpp:1556
void InitializeWithConstant(float Value)
Definition Distributions.cpp:1526
Definition Distributions.h:666
void ScaleByVectorDistribution(const class UDistributionVector *VectorDistribution)
Definition Distributions.cpp:1657
void ScaleByConstant(float Scale)
Definition Distributions.cpp:1618
void Splat(int32 ChannelIndex)
Definition Distributions.cpp:1685
void AddDistribution(const class UDistributionVector *VectorDistribution)
Definition Distributions.cpp:1673
FComposableVectorDistribution(const FComposableVectorDistribution &Other)
Definition Distributions.h:672
void InitializeWithConstant(const FVector &Value)
Definition Distributions.cpp:1610
void ScaleByConstantVector(const FVector &Scale)
Definition Distributions.cpp:1625
void ScaleByDistribution(const class UDistributionFloat *FloatDistribution)
Definition Distributions.cpp:1641
FComposableVectorDistribution()
Definition Distributions.cpp:1590
const FComposableVectorDistribution & operator=(const FComposableVectorDistribution &Other)
Definition Distributions.h:678
void AddConstantVector(const FVector &Value)
Definition Distributions.cpp:1633
Definition UnrealType.h:6306
UE_REWRITE SizeType Num() const
Definition Array.h:1144
UE_NODEBUG UE_FORCEINLINE_HINT ElementType * GetData() UE_LIFETIMEBOUND
Definition Array.h:1027
Definition DistributionFloat.h:103
Definition DistributionVector.h:148
U16 Index
Definition radfft.cpp:71
Definition Distribution.h:27
void Empty()
Definition Distributions.h:62
uint8 Op
Definition Distribution.h:38
float TimeScale
Definition Distribution.h:29
uint8 EntryCount
Definition Distribution.h:41
uint8 SubEntryStride
Definition Distribution.h:47
uint8 EntryStride
Definition Distribution.h:44
float GetValuesPerEntry() const
Definition Distributions.h:84
void GetEntry(float Time, const float *&Entry1, const float *&Entry2, float &LerpAlpha) const
Definition Distributions.h:106
float GetValueCount() const
Definition Distributions.h:92
float TimeBias
Definition Distribution.h:32
bool IsEmpty() const
Definition Distributions.h:76
FDistributionLookupTable()
Definition Distributions.h:49
void GetRange(float *OutMinValues, float *OutMaxValues)
Definition Distributions.h:130
TArray< float > Values
Definition Distribution.h:35
uint8 LockFlag
Definition Distribution.h:50
Definition DistributionFloat.h:19
void GetRange(float *OutMin, float *OutMax)
Definition Distributions.h:304
FFloatDistribution()
Definition Distributions.cpp:1360
void GetRandomValue(float Time, float *RESTRICT OutValue, FRandomStream &RandomStream) const
Definition Distributions.h:281
void GetValue(float Time, float *RESTRICT OutValue) const
Definition Distributions.h:263
static constexpr UE_FORCEINLINE_HINT T Lerp(const T &A, const T &B, const U &Alpha)
Definition UnrealMathUtility.h:1116
Definition RandomStream.h:20
Definition Distribution.h:58
FRawDistribution()
Definition Distributions.h:167
ENGINE_API void GetValue3(float Time, float *Value, int32 Extreme, struct FRandomStream *InRandomStream) const
Definition Distributions.cpp:702
static ENGINE_API UObject * TryGetDistributionObjectFromRawDistributionProperty(FStructProperty *Property, uint8 *Data)
Definition Distributions.cpp:851
ENGINE_API void GetValue1Extreme(float Time, float *Value, int32 Extreme, struct FRandomStream *InRandomStream) const
Definition Distributions.cpp:718
ENGINE_API void GetValue3Random(float Time, float *Value, struct FRandomStream *InRandomStream) const
Definition Distributions.cpp:768
ENGINE_API void GetValue1(float Time, float *Value, int32 Extreme, struct FRandomStream *InRandomStream) const
Definition Distributions.cpp:682
ENGINE_API bool Serialize(FArchive &Ar)
ENGINE_API void GetValue1Random(float Time, float *Value, struct FRandomStream *InRandomStream) const
Definition Distributions.cpp:752
FDistributionLookupTable LookupTable
Definition Distributions.h:240
ENGINE_API void GetValue(float Time, float *Value, int32 NumCoords, int32 Extreme, struct FRandomStream *InRandomStream) const
Definition Distributions.cpp:813
void GetValue3None(float Time, float *InValue) const
Definition Distributions.h:201
bool IsSimple()
Definition Distributions.h:222
void GetValue1None(float Time, float *InValue) const
Definition Distributions.h:190
ENGINE_API void GetValue3Extreme(float Time, float *Value, int32 Extreme, struct FRandomStream *InRandomStream) const
Definition Distributions.cpp:732
Definition DistributionVector.h:50
void GetValue(float Time, float *RESTRICT OutValue) const
Definition Distributions.h:423
void GetRange(FVector4d *OutMin, FVector4d *OutMax)
Definition Distributions.h:489
FVector4Distribution()
Definition Distributions.cpp:1372
void GetRange(FVector4f *OutMin, FVector4f *OutMax)
Definition Distributions.h:483
void GetRandomValue(float Time, float *RESTRICT OutValue, FRandomStream &RandomStream) const
Definition Distributions.h:444
Definition DistributionVector.h:39
void GetRange(FVector3f *OutMin, FVector3f *OutMax)
Definition Distributions.h:387
void GetRange(FVector3d *OutMin, FVector3d *OutMax)
Definition Distributions.h:393
void GetValue(float Time, float *RESTRICT OutValue) const
Definition Distributions.h:332
void GetRandomValue(float Time, float *RESTRICT OutValue, FRandomStream &RandomStream) const
Definition Distributions.h:352
FVectorDistribution()
Definition Distributions.cpp:1366