Plasma Engine  2.0
Loading...
Searching...
No Matches
SimdRandom.h
1#pragma once
2
3#include <Foundation/SimdMath/SimdVec4u.h>
4
10{
12 static plSimdVec4u UInt(const plSimdVec4i& vPosition, const plSimdVec4u& vSeed = plSimdVec4u::MakeZero());
13
15 static plSimdVec4f FloatZeroToOne(const plSimdVec4i& vPosition, const plSimdVec4u& vSeed = plSimdVec4u::MakeZero());
16
18 static plSimdVec4f FloatMinMax(const plSimdVec4i& vPosition, const plSimdVec4f& vMinValue, const plSimdVec4f& vMaxValue, const plSimdVec4u& vSeed = plSimdVec4u::MakeZero());
19};
20
21#include <Foundation/SimdMath/Implementation/SimdRandom_inl.h>
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 MakeZero()
Creates an plSimdVec4u that is initialized to zero.
Definition FPUVec4u_inl.h:313
Noise based random number generator that generates 4 pseudo random values at once.
Definition SimdRandom.h:10
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