Repository navigation
2D effect bugfixes for large panels - #5908
softhack007 wants to merge 10 commits into
Conversation
* Crazy Bee: keep bees on track by avoiding int8 math * DNA Spiral: fix effect freeze when width >= 128 * Colored Bursts: Use full panel when width >= 128 * Rotozoomer: Use full panel when width >= 128
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📜 Recent review details
WalkthroughThe changes add Changes2D effect arithmetic
Priority: ➖ Normal Estimated code review effort: 3 (Moderate) | ~20 minutes Change: Bug fix Suggested reviewers: Merge Risk: 🔵 Low · up to
|
as suggested by @DedeHai
* adjusted scaling parameters to avoid going out-of-bounds * limit effect speed on large panels (was depending on pixel count) * parameter tuning for larger panels, to make the effect look similar to smaller sizes
* solves undefined behavior from mixing signed and unsigned math * replace abs8() with abs() * parameter tuning to create a bigger sun an large fixtures * previous look preserved up to 32x32 pixels
the "black center" was never showing in larger panels => parameters tuned so the effect looks better on >32x32. The values used come from experimenting - no idea how the math really works ....
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
forgot to replace this - the inner loop should use pixelCount instead of SEGENV.step. Slightly adjusted speedScale to compensate for _slower_ effect motion.
as suggested by the rabbit
This comment was marked as duplicate.
This comment was marked as duplicate.
|
@coderabbitai for future PR's that touch 2D effects (fx.cpp or usermods), please remember to always check that the effect math is stable up to 256x256 pixels. Consider 24x16, 32x24, 32x32, and 48x40 as typical 2D sizes when using ws2812b panels. HUB75 panels are typically 64x64, up to 4 panels can be chained for a larger fixture. |
|
Tip For best results, initiate chat on the files or code changes. @softhack007 Thanks for the guidance. The review criteria are:
✏️ Learnings added
You are interacting with an AI system. |
Fixes several problems that were identified in #5903
byteandint8_t+ bigger sun on larger panels (WLED-MM backport)general improvements:
abs8()withabs()where possiblelerp16by8(uint16_t a, uint16_t b, uint8_t frac)to fastled-slimAI assistance: nothing. Just my squishy bio-brains.
Summary by CodeRabbit