79 InitialSeed = GetTypeHash(InName.
ToString());
121 *(
uint32*)&Result = 0x3F800000U | (
Seed >> 9);
123 return Result - 1.0f;
154 L = Result.SizeSquared();
158 return Result.GetUnsafeNormal();
189 return ((
A > 0) ? FMath::TruncToInt(
GetFraction() *
float(
A)) : 0);
248 float Phi = FMath::Acos((2.f *
RandV) - 1.f);
265 Result = Result.GetSafeNormal();
293 float Phi = FMath::Acos((2.f *
RandV) - 1.f);
315 Result = Result.GetSafeNormal();
332 return FString::Printf(
TEXT(
"FRandomStream(InitialSeed=%i, Seed=%u)"), InitialSeed,
Seed);
342 Seed = (
Seed * 196314165U) + 907633515U;
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define FVector
Definition IOSSystemIncludes.h:8
#define UE_PI
Definition UnrealMathUtility.h:129
#define UE_KINDA_SMALL_NUMBER
Definition UnrealMathUtility.h:131
Definition NameTypes.h:617
CORE_API FString ToString() const
Definition UnrealNames.cpp:3537
static uint32 Cycles()
Definition AndroidPlatformTime.h:27
static constexpr UE_FORCEINLINE_HINT T Square(const T A)
Definition UnrealMathUtility.h:578
Definition RandomStream.h:20
int32 GetCurrentSeed() const
Definition RandomStream.h:166
FRandomStream()
Definition RandomStream.h:30
void Reset() const
Definition RandomStream.h:92
void GenerateNewSeed()
Definition RandomStream.h:105
uint32 GetUnsignedInt() const
Definition RandomStream.h:131
void MutateSeed() const
Definition RandomStream.h:340
friend struct Z_Construct_UScriptStruct_FRandomStream_Statics
Definition RandomStream.h:21
FRandomStream(int32 InSeed)
Definition RandomStream.h:40
FVector VRandCone(FVector const &Dir, float ConeHalfAngleRad) const
Definition RandomStream.h:238
void Initialize(int32 InSeed)
Definition RandomStream.h:63
FVector GetUnitVector() const
Definition RandomStream.h:143
FString ToString() const
Definition RandomStream.h:330
void Initialize(FName InName)
Definition RandomStream.h:75
int32 RandRange(int32 Min, int32 Max) const
Definition RandomStream.h:197
UE_FORCEINLINE_HINT FVector::FReal FRandRange(FVector::FReal InMin, FVector::FReal InMax) const
Definition RandomStream.h:209
UE_FORCEINLINE_HINT float FRand() const
Definition RandomStream.h:176
int32 GetInitialSeed() const
Definition RandomStream.h:97
FVector VRandCone(FVector const &Dir, float HorizontalConeHalfAngleRad, float VerticalConeHalfAngleRad) const
Definition RandomStream.h:283
UE_FORCEINLINE_HINT int32 RandHelper(int32 A) const
Definition RandomStream.h:186
UE_FORCEINLINE_HINT FVector VRand() const
Definition RandomStream.h:219
FRandomStream(FName InName)
Definition RandomStream.h:51
float GetFraction() const
Definition RandomStream.h:115
FVector RandPointInBox(const FBox &Box) const
Definition RandomStream.h:224
UE_FORCEINLINE_HINT UE::Math::TRotator< T > Rotation() const
Definition Vector.h:834
double FReal
Definition Vector.h:55
TVector< T > GetSafeNormal(T Tolerance=UE_SMALL_NUMBER, const TVector< T > &ResultIfZero=ZeroVector) const
Definition Vector.h:2060
TVector< T > RotateAngleAxis(const T AngleDeg, const TVector< T > &Axis) const
Definition Vector.h:1335