Commit Graph

573 Commits

Author SHA1 Message Date
Frank
21e6b4d62f optimization
replacing MIN / MAX (arduino macros) by more efficient min/max (libc templates)
2024-05-24 11:26:28 +02:00
Frank
a50e77db26 2D Crazy Bees bugfixes
* solve int8 overflow on "error2" (large fixtures) - based on 2c87f7e752
* use fast int types where possible
2024-05-24 11:12:50 +02:00
Frank
14efccecea minor 2024-05-24 10:46:58 +02:00
Frank
0c6c707c6b robustness improvements for game of life
* fixed: dataSize could be too small if size is not a multiple of 8
* use size_t for memory size
* clear LEDS on first run - just to make sure that buffer optimizations in segment class work as expected
2024-05-16 17:31:46 +02:00
Ewoud
83d3f27c8c Merge remote-tracking branch 'Brandon502/mdev' into mdev 2024-05-16 15:21:57 +02:00
Blaz Kristan
64b1d76893 Palette loading optimisation
- fixes #3978
- FX: Firenoise can use selected palette
2024-05-16 00:07:18 +02:00
Brandon502
6d2fc5040c Game of Life Change
Removed sizeof(byte)
2024-05-11 17:03:58 -04:00
Brandon502
86a18ce6c2 Game of Life changes
Helper functions are now static and the arraySize parameter was removed. Added failsafe for repeat patterns.
2024-05-07 17:26:48 -04:00
Brandon502
9b3f644737 Game of Life changes
Uses struct to store values. Changed glider check method.
2024-05-07 15:57:30 -04:00
Blaž Kristan
1d5f029b34 Merge pull request #3942 from gaaat98/audioreactive-analog
Enabled some audioreactive effects for single pixel strips/segments
2024-05-07 12:47:10 +02:00
Frank
ccff478507 make sure that segment buffer is initially aligned with LEDs (MM specific)
The Segment LEDs buffer is used to optimize out "writing the same color". SEGMENT.fill(BLACK) ensures that all LEDs start clean, consistent with the Segment LEDs buffer.
2024-05-02 16:10:07 +02:00
Frank
bf5c95646c small fix for Fireworks 1D (MM specific)
effect did not clean up its canvas initially, leading to sporadic "lost pixels".
2024-04-30 19:09:05 +02:00
Frank
6e2bd77808 bugfix for Ripple effect (1D mode) - solves #130
bounds check on "w" was not working.
2024-04-22 18:20:18 +02:00
Frank
34f4905e0b bugfix for 2D Sun Radiation
size of the sun was very small on larger fixtures
2024-04-18 23:23:52 +02:00
Frank
a5b07bc06d bugfix for 2D Polar Lights
on large setups (bigger than 32x32) the effect would only show a small horizontal line.
2024-04-18 22:36:50 +02:00
Frank
93b8c63e2b post PR3904 fixes and improvements
* fix compiler warnings (uninitialized vars, ambiguous  functions calls)
* restore some lost function prototypes
* avoid negative pixel indices
* only use "fast" color_add when there is no risk of  "overshooting" results
* minor optimizations
2024-04-18 21:09:14 +02:00
Frank
3fd5e190c4 reduce memory needs of popcorn effect
On a matrix with 52 columns, popcorn was requesting around 30Kb of segment data.
This patch reduces the data to the actually necessary amount based on the "intensity" slider. If intensity is increased, it means that the effect will get a bigger chunk of data allocated - zero'd out but this does not hurt much.
2024-04-16 20:07:51 +02:00
Brandon502
987a662977 Game of Life - Bug fix
Fixed small bug in new detection method. Start and final frames are displayed slightly longer.
2024-02-28 19:40:40 -05:00
Brandon502
ba5731654f Game of Life - changed repeat detection
Simplified repeat detection and code cleanup. Only storing 2 crc values. prevAlive and counter no longer needed.
2024-02-28 15:20:12 -05:00
Brandon502
73091d170c Game Of Life - Reduced Memory Usage
Each cell now only needs 2 bits of data instead of 6 bytes.
2024-02-26 20:04:48 -05:00
Brandon502
ce1b811667 Game of Life - Added overlay option
Added option to overlay alive cells. Required more memory usage.
2024-02-25 21:25:20 -05:00
Brandon502
7b890986d8 Game of Life - Rework
No longer uses ColorCount struct. Removed randomness. Improved infinite pattern recognition. Adds color mutation slider and wrap option.
2024-02-25 21:06:18 -05:00
Frank
e0f08864a2 remove slow and inaccurate math from time critical code
as it turns out, the "_t" functions (from wled_math.cpp) are about 3 times (!!!) slower than the standard functions.

* mapping modes : Arc and Circle
* effects: 2D Drift, 2D Drift Rose
2024-02-25 19:36:29 +01:00
Blaž Kristan
ad6903de38 Merge pull request #3723 from Derek4aty1/dnaSpiralFix
DNA Spiral Effect Speed Fix
2024-01-26 12:08:40 +01:00
Frank
42c3243136 effect metadata 2024-01-03 17:01:44 +01:00
Frank
8e996b0b46 parameter tuning 2023-12-31 01:21:57 +01:00
Frank
4b89016c2d audio-enhanced standard effects
backported from WLED-SR
2023-12-31 00:01:29 +01:00
Frank
8905992a89 code spell checking - part4 (MM specific) 2023-12-15 00:14:57 +01:00
Frank
ced03f1f08 code spell checking - part1 (core)
I've found a code spellchecker, so this is what can be corrected easily. Changes are only affecting comments, readme and a few user-visible strings. So no functional impact expected.
2023-12-14 22:05:55 +01:00
Blaz Kristan
88f67cbd24 FX:
- Matrix bugfix
- Lissajous metadata fix
2023-12-12 15:28:39 +01:00
Blaz Kristan
fa6e2175fe Remove re-seeding FastLED random8/random16 in FX 2023-12-12 15:21:34 +01:00
Blaž Kristan
451243c78d Merge pull request #3552 from TripleWhy/seedRandom16
Seed FastLED's RNG
2023-12-12 15:21:00 +01:00
Blaz Kristan
cc760e98a0 Fix for #3514 2023-12-12 14:46:40 +01:00
Frank
e4cb0929c3 PartyJerk: minor code style improvements
* fix some too-long tabs
*author info added
* shrunk number of blank lines
* removed unused audio variables
* colorIndex : better accuracy by first doing multiply, then divide
2023-12-10 16:49:13 +01:00
tonyxforce
21f925eab2 Merge branch 'MoonModules:mdev' into mdev 2023-11-14 23:07:39 +01:00
Blaz Kristan
7debd508c8 Twinklefox & Twinklecat fix 2023-11-11 23:15:38 +01:00
knarfd
3f945753c2 Update FX.cpp 2023-11-11 23:02:32 +01:00
Ewoud
294a872462 json/info: brand and product configurable by compile variables
For MM builds brand = WLEDMM
Will be used in WLED-Native - by Moustachauve

Changed in bh1750, bme280, pir, json.cpp and wled.h
2023-10-15 21:43:55 +02:00
Frank
6d9af29042 Polar Lights minor speedup
* perform some calculations outside of the main loop.
* move "mapf" to the top of fx.cpp
2023-10-10 22:06:04 +02:00
Ewoud
71abd117b5 PolarLights and Octopus: deterministic + SuperSync control
FX.cpp
- SuperSync control on Polar lights and Octopus:  only calculate pixels for the first panel
2023-10-08 19:02:32 +02:00
Ewoud
b07562659f SuperSync small updates 2023-10-08 17:09:57 +02:00
Frank
77cef80417 Merge pull request #73 from arneboe/fix_static_effect_timing
Fix return value (frameDelay) of FX_MODE_STATIC
2023-10-07 16:24:10 +02:00
Frank
0ec54c4911 WLEDMM specific improvement
WLEDMM has FRAMETIME_FIXED_SLOW which seems perfect for this usecase.
2023-10-07 16:23:15 +02:00
Blaz Kristan
ecb2f48c32 FX update
- Meteor: trail & 0.13 behaviour
- Meteor Smooth: train & 0.13 behaviour
- Scrolling Text: rotation
2023-10-06 17:30:02 +02:00
Blaz Kristan
7e21003f07 Fix for #3405 2023-10-06 17:00:10 +02:00
Ewoud
cea994c282 Deterministic mode of effects only when SuperSync is on
Temporary - to compare both modes

Octopus
Soap
CrazyBees
2023-10-04 11:56:00 +02:00
Ewoud
76aa3072b6 Octopus and Crazy Bees Super Sync compatible 2023-10-02 12:45:56 +02:00
Ewoud
37e1624729 Make Soap effect Super Sync compatible 2023-10-01 21:13:16 +02:00
Ewoud
342f99ca27 Effects to Instances: effects non-deterministic: now instead of millis
index.js
- genPresets: Temporary for deterministic effects test: Set to 11/Raibow instead of 1/Random smooth palette

FX.cpp
- replace all millis() by strip.now
2023-09-30 12:23:53 +02:00
Arne
18c62734be Increase update time of static effect to avoid lag 2023-09-24 17:20:59 +02:00