Commit Graph

620 Commits

Author SHA1 Message Date
Frank
1f14673f43 workaround for "cannot read properties of undefined. reading 'split'
hmpf ... looks like somewhere deep in WLED, the FX name string gets limited to 127 chars....
2024-07-16 16:08:08 +02:00
Frank
e3b4a08393 soft light option
* bugfix for Borders (did not work with <16 bands)

* new option for soft light: when checked, the left & right edges of top lights are drawn with anti-aliasing on. Costs us 1-2 fps, so I made it optional.
2024-07-16 16:03:19 +02:00
Frank
e3d27de395 better handling of perspective
drawLine parameter "depth" shortens a line by a fraction - useful for VP perspective (vanishing point)
2024-07-16 13:27:56 +02:00
Frank
6565e716ab GEQ speedup
use drawLine() to draw a complete bar at once. Only possible if _not_ doing colored bars.
2024-07-15 18:14:30 +02:00
Troy
98c15d7ec0 Borders checkbox 2024-07-15 08:18:42 -04:00
Troy
54f9d4ca6d Borders checkbox for @netmindz
Netmindz likes the borders. Now a check-box to enable.
2024-07-15 08:17:00 -04:00
Frank
5401328b6e loop optimizations
* made cols/rows integer, to avoid that "cols-x" wraps around
* pre-compute some expressions that don't depend on loop counters

--> wins us 1-4 fps on my 72x72 test setup
2024-07-15 14:05:19 +02:00
Frank
4f6eb8b161 prevent array bounds violation
+ don't use dynamic array for heights[] - dynamic arrays are using malloc() -> heap frag.
2024-07-15 13:24:18 +02:00
Frank
6d1615189b Merge branch 'mdev' into 3DGEQ 2024-07-15 12:33:48 +02:00
Frank
d0927a5142 akemi and GEQ didn't like map2 2024-07-15 12:29:29 +02:00
Frank
d2762c35b0 Update FX.cpp
* add more accurate version of map() - reduces slight flickering in some 2D effects
* cache fftResult[] in effects (um_data->fftresult might get updated while the effect still calculates)
2024-07-15 11:57:46 +02:00
Troy
3857862e03 Optimized side-wall drawing
Only draw what will be visible.

This is a pretty solid speed increase when the adjacent bar is close in height, or if it's taller and would occlude it anyway, it'll be skipped.
2024-07-14 22:32:42 -04:00
Troy
643f82daf0 Don't use new soft drawline() option 2024-07-12 22:32:14 -04:00
Troy
4c8d500215 Seems someone improved drawline() - fixed for this 2024-07-12 22:12:59 -04:00
Troy
52130e176c Merge branch 'mdev' into 3DGEQ 2024-07-12 22:10:39 -04:00
Troy
ce8f01bf90 Bugfixed GEQ 3D
Bug fixes after lots of testing, better settings, etc.

Big thanks to @netmindz  for restructuring the code.

Add rough distance stop to Segment::drawLine()
2024-07-12 22:03:33 -04:00
Will Tatam
aed861d063 GEQ Laser use SEGMENT.data 2024-07-10 23:58:35 +01:00
Will Tatam
8f4380b075 Rename 3D GEQ to GEQ Laser 2024-07-10 23:51:53 +01:00
Will Tatam
bda4bbeeec 3D GEQ - fade speed 2024-07-10 23:00:42 +01:00
Will Tatam
3fd8078722 3D GEQ - customisable number of bands 2024-07-10 09:40:40 +01:00
Will Tatam
cb3d06bc89 3D GEQ - variable front brightness 2024-07-10 09:24:26 +01:00
Will Tatam
f6cd28cea2 3D GEQ - customisable number of bands 2024-07-10 09:20:58 +01:00
Will Tatam
45f288a2f2 3D GEQ - make front brightness a control 2024-07-10 08:59:05 +01:00
Will Tatam
2d7e416879 ; 2024-07-10 08:33:42 +01:00
Will Tatam
e452d4d316 Add @TroyHacks 3D GEQ 2024-07-10 08:26:07 +01:00
Will Tatam
e2f23542f5 Add @TroyHacks 3D GEQ 2024-07-10 08:25:40 +01:00
Blaz Kristan
2aad3f5356 Antialiased line & circle 2024-06-26 22:40:59 +02:00
Troy
93ec9b9151 Stop double first pixel on waterfall effect 2024-06-25 23:28:33 -04:00
Brandon502
9ef8ff6a16 GoL - Redraw loop changes
Merged generation == 1 checks into standard checks.
2024-06-20 01:07:52 -04:00
Brandon502
086b0e3e0e GoL - Game start transition
Starting alive cells are randomly colored in and bg fades on game start.
2024-06-19 23:09:31 -04:00
Brandon502
4aee7eb6c6 GoL - Small fix
Remove redundant check
2024-06-19 19:00:14 -04:00
Brandon502
e8e784ddcd GoL CRGB changed to uint32 & color_blend()
Other small changes.
2024-06-19 15:25:51 -04:00
Brandon502
015260c5ad GoL - Small color fix and glider detection change.
Wrap is disabled if only 5 remaining alive cells (Glider).
2024-06-09 15:50:07 -04:00
Brandon502
5a6d80f30b GoL - Correct data allocation
Fixed overlooked data allocation after switching gliderLength to uint16.
2024-06-05 12:41:36 -04:00
Brandon502
c655db3864 GoL - gliderLength switched to uint16_t 2024-06-05 11:46:23 -04:00
Brandon502
f528aef6ba GoL - Allows default overlay mode.
Flicker fixed by always redrawing dead cells if overlay unchecked. Can swap between overlay types by checking/unchecking overlayBG.
2024-06-05 01:07:27 -04:00
Brandon502
8c3e2cefab GoL - Rework
Blur now fades while game is paused.
New blur mode when blur slider is >220
Added variables to make code easier to follow instead of check1 custom1 etc. (not needed)
Removed % with random8 calls.
Misc changes
2024-06-04 16:18:54 -04:00
Brandon502
7657c90c75 GoL - Uses cIndex more consistently 2024-05-24 14:38:35 -04:00
Brandon502
aea68df813 Merge branch 'mdev' of https://github.com/Brandon502/WLED into mdev 2024-05-24 14:12:33 -04:00
Brandon502
b673748e61 Merge branch 'MoonModules:mdev' into mdev 2024-05-24 14:11:35 -04:00
Brandon502
84128eef8b GoL - Changed speed slider to updates/sec
Every 4 ticks of speed adds 1 update per second. 1 - 64.
2024-05-24 14:10:16 -04:00
Brandon502
886ea5f88c GoL - Palette Switching
Recolors all live cells on palette/color change. Before you needed a game restart or mutation over time.
2024-05-24 13:41:49 -04:00
Brandon502
631aa35718 GoL - Change default values.
General cleanup.
2024-05-24 13:20:29 -04:00
Brandon502
8491cf18f7 GoL - Removed pauseFrames
Uses .step now to pause.
2024-05-24 13:00:10 -04:00
Brandon502
09dad1d796 GoL - Added blur slider
Blurs dead cells instead of immediately turning off depending on slider value. Blur is disabled when using overlay.
2024-05-24 12:45:13 -04:00
Brandon502
eb3406e200 GoL Memory Leak fix
Removed gameoflife struct.
2024-05-24 11:35:34 -04:00
Frank
6f6ba307c8 drip effect bugfixing
* bring back lost parameter "Fall ratio" (MM specific)
* stabilize the math, avoid rounding errors and unsigned overflows
* speed limit for long strips added
* gravity reduced slightly
2024-05-24 17:28:19 +02:00
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