3 new LED effect animations (#9827)
Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Erovia <Erovia@users.noreply.github.com>python_optimizations 0.12.30
parent
7d33d1bace
commit
a3cd1290be
@ -0,0 +1,22 @@ |
||||
#ifndef DISABLE_RGB_MATRIX_HUE_BREATHING |
||||
RGB_MATRIX_EFFECT(HUE_BREATHING) |
||||
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS |
||||
|
||||
// Change huedelta to adjust range of hue change. 0-255.
|
||||
// Hue Breathing - All LED's light up
|
||||
bool HUE_BREATHING(effect_params_t* params) { |
||||
RGB_MATRIX_USE_LIMITS(led_min, led_max); |
||||
uint8_t huedelta = 12; |
||||
HSV hsv = rgb_matrix_config.hsv; |
||||
uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); |
||||
hsv.h = hsv.h + scale8(abs8(sin8(time) - 128) * 2, huedelta); |
||||
RGB rgb = hsv_to_rgb(hsv); |
||||
for (uint8_t i = led_min; i < led_max; i++) { |
||||
RGB_MATRIX_TEST_LED_FLAGS(); |
||||
rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); |
||||
} |
||||
return led_max < DRIVER_LED_TOTAL; |
||||
} |
||||
|
||||
# endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS
|
||||
#endif // DISABLE_RGB_HUE_BREATHING
|
@ -0,0 +1,17 @@ |
||||
#ifndef DISABLE_RGB_MATRIX_HUE_PENDULUM |
||||
RGB_MATRIX_EFFECT(HUE_PENDULUM) |
||||
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS |
||||
|
||||
// Change huedelta to adjust range of hue change. 0-255.
|
||||
// Looks better with a low value and slow speed for subtle change.
|
||||
// Hue Pendulum - color changes in a wave to the right before reversing direction
|
||||
static HSV HUE_PENDULUM_math(HSV hsv, uint8_t i, uint8_t time) { |
||||
uint8_t huedelta = 12; |
||||
hsv.h = hsv.h + scale8(abs8(sin8(time) + (g_led_config.point[i].x) - 128) * 2, huedelta); |
||||
return hsv; |
||||
} |
||||
|
||||
bool HUE_PENDULUM(effect_params_t* params) { return effect_runner_i(params, &HUE_PENDULUM_math); } |
||||
|
||||
# endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS
|
||||
#endif // DISABLE_RGB_HUE_PENDULUM
|
@ -0,0 +1,17 @@ |
||||
#ifndef DISABLE_RGB_MATRIX_HUE_WAVE |
||||
RGB_MATRIX_EFFECT(HUE_WAVE) |
||||
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS |
||||
|
||||
// Change huedelta to adjust range of hue change. 0-255.
|
||||
// Looks better with a low value and slow speed for subtle change.
|
||||
// Hue Wave - color changes in a wave to the right
|
||||
static HSV HUE_WAVE_math(HSV hsv, uint8_t i, uint8_t time) { |
||||
uint8_t huedelta = 24; |
||||
hsv.h = hsv.h + scale8(abs8(g_led_config.point[i].x - time), huedelta); |
||||
return hsv; |
||||
} |
||||
|
||||
bool HUE_WAVE(effect_params_t* params) { return effect_runner_i(params, &HUE_WAVE_math); } |
||||
|
||||
# endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS
|
||||
#endif // DISABLE_RGB_HUE_WAVE
|
Loading…
Reference in new issue