12 mangled = mangled.CompMul(BIT_NOISE1);
14 mangled ^= (mangled >> 8);
15 mangled += BIT_NOISE2;
16 mangled ^= (mangled << 8);
17 mangled = mangled.CompMul(BIT_NOISE3);
18 mangled ^= (mangled >> 8);
26 return UInt(vPosition, vSeed).ToFloat() * (1.0f / 4294967296.0f);
32 return plSimdVec4f::Lerp(vMinValue, vMaxValue,
FloatZeroToOne(vPosition, vSeed));
A 4-component SIMD vector class.
Definition SimdVec4f.h:8
A SIMD 4-component vector class of signed 32b integers.
Definition SimdVec4i.h:9
A SIMD 4-component vector class of unsigned 32b integers.
Definition SimdVec4u.h:7
static plSimdVec4u UInt(const plSimdVec4i &vPosition, const plSimdVec4u &vSeed=plSimdVec4u::MakeZero())
Returns 4 random uint32 values at position, ie. ranging from 0 to (2 ^ 32) - 1.
Definition SimdRandom_inl.h:4
static plSimdVec4f FloatMinMax(const plSimdVec4i &vPosition, const plSimdVec4f &vMinValue, const plSimdVec4f &vMaxValue, const plSimdVec4u &vSeed=plSimdVec4u::MakeZero())
Returns 4 random float values in range [fMinValue ; fMaxValue].
Definition SimdRandom_inl.h:30
static plSimdVec4f FloatZeroToOne(const plSimdVec4i &vPosition, const plSimdVec4u &vSeed=plSimdVec4u::MakeZero())
Returns 4 random float values in range [0.0 ; 1.0], ie. including zero and one.
Definition SimdRandom_inl.h:24