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

◆ getFirePaletteIndex()

uint8_t getFirePaletteIndex ( uint32_t millis32,
int width,
int max_width,
int height,
int max_height,
uint32_t y_speed )

Definition at line 580 of file curr.h.

581 {
583
584 float xf = (float)width / (float)max_width;
585 uint8_t x = (uint8_t)(xf * 255);
586
587 uint32_t cosx = cos8(x);
588 uint32_t sinx = sin8(x);
589
590 float trig_scale = scale * fireScaleX.value();
591 cosx *= trig_scale;
592 sinx *= trig_scale;
593
595
596 uint16_t z = millis32 / fireInvSpeedZ.as<uint16_t>();
597
598 uint16_t noise16 = inoise16(cosx << 8, sinx << 8, y << 8, z << 8);
599
600 uint8_t noise_val = noise16 >> 8;
601
602 int8_t subtraction_factor = abs8(height - (max_height - 1)) * 255 /
603 (max_height - 1);
604
605 return qsub8(noise_val, subtraction_factor);
606}
int y
Definition simple.h:93
int x
Definition simple.h:92
uint32_t z[NUM_LAYERS]
Definition Fire2023.h:93
fl::UISlider scale("Scale", 4,.1, 4,.1)
int y_speed
fl::UISlider fireScaleX("Fire ScaleX",.3, 0.1, 3,.01)
fl::UISlider fireScaleXY("Fire Scale", 8, 1, 100, 1)
fl::UISlider fireInvSpeedZ("Fire Inverse SpeedZ", 20, 1, 100, 1)
fl::u16 inoise16(fl::u32 x, fl::u32 y, fl::u32 z, fl::u32 t)
fl::u32 uint32_t
Definition s16x16x4.h:219
fl::u16 uint16_t
Definition s16x16x4.h:214
u8 u8 height
Definition blur.h:186
signed char int8_t
Definition s16x16x4.h:210
unsigned char uint8_t
Definition s16x16x4.h:209

References fireInvSpeedZ(), fireScaleX(), fireScaleXY(), inoise16(), scale, x, y, y_speed, and z.

Referenced by fillFrameBufferFire().

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