FastLED 3.9.15
Loading...
Searching...
No Matches

◆ resetParticle()

void resetParticle ( P & p,
uint32_t tt )

Definition at line 59 of file Luminova.h.

59 {
60 // Original: x=360,y=360 (center), a=t*1.25 + noise(I)*W, f=t%2*2-1, g=I,
61 // s=5
62 int I = (int)(tt / 50);
63 p.x = (WIDTH - 1) / 2.0f;
64 p.y = (HEIGHT - 1) / 2.0f;
65
66 // noise(I)*W -> use 1D Perlin noise via inoise8
67 uint8_t n1 = inoise8(I * 19); // arbitrary scale
68 float noiseW = (n1 / 255.0f) * WIDTH;
69
70 p.a = tt * 1.25f + noiseW; // base angle component
71 p.f = (tt & 1) ? +1 : -1; // alternate direction
72 p.g = I;
73 p.s = 3.0f; // lower initial intensity for small grids
74 p.alive = true;
75}
#define WIDTH
#define HEIGHT
int g
Definition Luminova.h:50
int f
Definition Luminova.h:49
bool alive
Definition Luminova.h:52
float y
Definition Luminova.h:47
float s
Definition Luminova.h:51
float a
Definition Luminova.h:48
float x
Definition Luminova.h:47
fl::u8 inoise8(fl::u16 x, fl::u16 y, fl::u16 z)
unsigned char uint8_t
Definition s16x16x4.h:209

References P::a, P::alive, P::f, P::g, HEIGHT, inoise8(), P::s, WIDTH, P::x, and P::y.

Referenced by loop().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: