Blaz Kristan
fa6070c680
Multiple updates:
...
- additional debug timings
- removed local leds[] buffer
- async segment bounds change (crashes seen otherwise)
- added isActive() check to Segment drawing methods
- ABL simplification
- palette option for Black hole (FX)
- (possible) crash mitigation is Segment handling (rapid preset changes)
2023-07-12 20:52:34 +02:00
Christian Schwinne
822298ab66
Merge branch 'main' into alt-buffer
2023-07-09 11:31:02 +02:00
Frank
42b247756a
blur speedup
...
it seems that SEGMENT.blur() is the main bottleneck for many 2D effects.
This change optimizes performance of the function:
* avoid to re-write unchanged pixels
* early exit when blur_amount == 0 (=nothing to do)
* use _fast_ types where possible
I've seen up to 20% speedup with this change.
2023-07-06 19:51:37 +02:00
Frank
196779ffb6
XY: minor bugfix
...
properly handle width=0 OR height=0
2023-07-06 09:54:12 +02:00
Frank
406a254523
inactive segments robustness improvement
...
* Avoid uint16 underflow in width() and height(): stop > start is possible, and means "inactive segment".
Without these checks, it was possible that width() and height() produce VERY large values due to underflow.
2023-07-03 15:43:47 +02:00
Blaz Kristan
858b57d77a
Return of local leds[]
2023-07-01 21:48:30 +02:00
Blaz Kristan
272f96b405
Double buffering at bus level.
2023-06-30 21:12:59 +02:00
Blaz Kristan
ef3c72a24f
Fix for #3265
2023-06-23 23:49:54 +02:00
Blaz Kristan
65c584aeda
2D enhancement (internal)
...
- move() wrapping
- dual addPixelColorXY()
2023-04-27 17:31:55 +02:00
Blaz Kristan
7c186e4fcc
Fix for smaller number of pixeld than matrix size.
2023-03-11 15:03:28 +01:00
Blaz Kristan
ddd32bd600
Multiple fixes.
...
- compiler warning fixes (gcc17)
- revert min heap size to 8k
- fix form submitting in 2D settings
- remove IRAM_ATTR for ESP8266 core 4.1.0
2023-03-05 22:56:14 +01:00
Blaz Kristan
92d2be3f5e
Add ledmap names
...
Bugfix
- reset segments upon 2D ledmap allocation error
- fix invlid 2D segments
2023-02-14 17:11:58 +01:00
Blaz Kristan
eee9274098
Bugfix.
...
- compiler warnings
- loading nonexistent default ledmap in 2D will revert to built ledmap
- making autosements after 2D set up change
2023-02-11 18:41:30 +01:00
Blaz Kristan
8dd1f89225
Update.
...
- allow ledmap selection in UI
- upload gap file
- expand matrix generator
2023-02-10 19:49:43 +01:00
Blaz Kristan
e51f7bfbff
LED matrix gaps.
2023-02-09 20:15:55 +01:00
Blaz Kristan
178c4d15b7
Bugfix.
...
- missing Transpose (seglen)
- reduce flickering for static text (ScrollingText FX #3050 )
2023-01-24 16:35:31 +01:00
Blaz Kristan
57323af167
Reset segments on 2D set-up change. #3028
...
Bugfix for 2D segment creation.
2023-01-22 11:29:31 +01:00
Blaz Kristan
c6db901051
Added gradient to drawCharacter()
...
Ability to select gradient text on Scrolling Text FX.
2023-01-17 19:54:44 +01:00
Blaz Kristan
6fa5689aaf
Bugfix.
...
- segment off
2023-01-12 20:36:50 +01:00
Blaz Kristan
e410de9552
Bugfix.
...
- fadePixelColorXY()
- clearing 2D segment on mirror or reverse change
- FX update (DNA Spiral, Colored bursts)
2023-01-12 19:13:07 +01:00
Blaz Kristan
27d7f5f190
Fixes.
...
Prevent flickering if segment off.
2023-01-06 18:11:52 +01:00
Blaž Kristan
c7eccfb714
FX updates:
...
- Ripple (2D & no Bg)
- Glitter (no Bg)
- Sparkle (no Bg)
- Scan (no Bg)
- Two dots (no Bg)
- ICU (no Bg)
- Lightning (no Bg)
- Halloween eyes (no Bg)
- Spots (no Bg)
- Bouncing Balls (no BG)
- Popcorn (no Bg)
- Starburst (no Bg)
- Drip (no Bg)
- Whitespace cleanup
- draw_circle()
"no Bg" will allow overlapping segments if checked.
2023-01-06 09:10:39 +01:00
Caleb Marting
187ecf511f
2d Mapping with Matrix Gaps ( #2892 )
...
* New 2d mapping
* panel matrix generator
* add todos, fix vert/horz swap
* Fix 2d mapping to matrix in settings 2D
* add correct index mapping to pixels per panel
* fix panel bug in led layout
* formatting and change max panels
* add per panel width and height
* fix using length instead of custom mapping size
* fix: panel dimensions location
* panel[] implemented as a vector.
Removed matrixWidth & matrixHeight.
Panel structure update.
* Fixes.
Co-authored-by: Blaz Kristan <blaz@kristan-sp.si>
2023-01-02 20:56:00 +01:00
Blaz Kristan
474e86306f
Bugfix: incorrect maxWidth after switching from 2D
2022-12-24 22:00:35 +01:00
Blaz Kristan
22b2503839
Bugfix & code optimisation.
2022-12-22 18:13:32 +01:00
Blaz Kristan
3c5838cafd
Remove "strip" dependency in Segment class
2022-12-16 22:31:07 +01:00
Blaz Kristan
b6db86da50
Allow matrix bigger than LED count (missing panels)
2022-11-23 16:54:32 +01:00
Blaz Kristan
c9fd69ceb7
Preset loading tuning.
...
Multi-relay toggle support.
Fire2012 tuning.
2D functions tuning.
Global SPI comments & tuning.
Bugfix in 4LD usermod.
2022-09-09 17:21:13 +02:00
cschwinne
a0c90d4ba3
Disable unused characters in fonts
...
saves 5kB flash
Added 4x6 font
2022-09-05 03:18:59 +02:00
Blaz Kristan
8719adef1e
Tetrix vStrip 2D modification.
...
AA version of Bouncing balls
Better AA
2022-08-30 17:20:58 +02:00
Blaz Kristan
fb6dfcd3fc
Index under- shooting.
...
Fix for arc 1D to 2D mapping.
UI segment 2D mapping fix.
Watchdog reposition & flicker reduction.
2022-08-22 16:47:25 +02:00
Blaž Kristan
e14c5bbd25
Fix in is2D()
...
Vertical & horizontal 1D segment (on 2D matrix)
Index overshooting fix.
2022-08-22 14:08:45 +02:00
Blaz Kristan
74b6a78a9b
Effect fixes.
2022-08-13 00:58:27 +02:00
Blaž Kristan
52e5f467b0
Added two more fonts to Scrolling text.
2022-08-11 11:46:30 +02:00
Blaz Kristan
a8785570df
Memory allocation fixes.
...
Whitespace.
Cleanup.
2022-08-06 12:39:12 +02:00
Blaz Kristan
9270f80af2
Merge branch 'integration' into merge-audio
2022-08-05 23:03:38 +02:00
Blaž Kristan
c5f3e76b21
Compile optimisations, code reduction.
...
2D peek resize.
2022-08-03 14:23:24 +02:00
ewowi
7b3fc206f7
Merge leftovers
2022-08-02 21:52:10 +02:00
ewowi
44c585e8c8
Merge branch 'ledsArrayToSGPC' into integration
2022-08-02 21:12:59 +02:00
ewowi
640f45f57d
Remove leds array from utility functions + small things
...
- Remove CRGB* leds from utility functions
- GameOfLife: fill_solid for prevLeds to for loop
- Remove if !fftResult
- Funky Plank: toggle src and dst
- Comment drawLine as not used
- Duplicate FadeToBlack, call one FadeToBlackOld
2022-08-02 19:44:27 +02:00
Blaz Kristan
0ba8bace0d
2D optimisations.
2022-08-02 18:27:32 +02:00
ewowi
5f8b8835e1
Leds removal leftovers
...
- Remove leds from 1D SEGMENT.data effects
- Noisefire: re-establish own palette
- FreqMatrix to circle mapping
2022-08-02 12:58:35 +02:00
ewowi
78edcfe5cf
Merge branch 'ledsArrayToSGPC' into integration
2022-08-02 12:21:46 +02:00
ewowi
2ca5e0c8b8
Remove leds from FX.cpp
...
- add addPixelColor overloads
- remove setPixels function
- sPC/gPC move leds check to beginning
- refactor wu_pixel work without leds
- remove leds out of effects and replace by sPC/gPC/aPC/nullptr
- workaround %=
- refactor game of life (but need to check patterns / history, see SR)
- refactor fill_circle to work without leds
2022-08-02 12:19:04 +02:00
Blaz Kristan
7ca1d99412
Multiple additions:
...
- transparent leds[] for getPixelColor()
- sample 2D Black Hole for trnasparent leds[]
- conditional audio compile (WLED_NO_AUDIO)
Bugfix:
- effect filtering
2022-08-01 22:01:24 +02:00
ewowi
987b442796
Merge branch 'ledsArrayToSGPC' into integrationMergeOnly
2022-08-01 16:25:51 +02:00
ewowi
004c2920f5
All effects use strip.leds, refactor XY
...
- remove leds out of SEGMENT.data (remove if no other use of data)
- use strip.leds
- refactor XY to make segment relative to the whole matrix
- use RGBW32
- in case of 1D also use XY in leds[]: XY(i%width, i/width)]
- add ps_malloc
2022-08-01 16:11:59 +02:00
ewowi
69f9a484ca
strip.leds array fully fastLed and segment compatible
...
- leds array from uint32_t to CRGB for fastled compatibility
- reading and writing leds from strip to segment sPC/gPC so it has logical instead of physical indexes so it can be used in effects
- change mode_2DBlackHole as showcase how it can both work with leds or with sPC/gPC
2022-07-31 14:48:00 +02:00
Blaz Kristan
dde5367560
Default palette gamma fix.
...
Reverted to leds[] in SR effects.
Code optimisations.
2022-07-31 13:28:12 +02:00
ewowi
66da57f375
POC to use leds array in strip.set/getPixelColor
2022-07-31 12:38:10 +02:00