- исправлены проблемы сборки под обновленный фреймворк есп32 и платформу есп32 v6.1.7
- введен класс кадрового CRGB буфера абстрагирующий топологию и тип устройства вывода
- буфер допускает привязку/отвязку от FastLED, копирование, атомарный обмен и общие операции над RGB массивом
- методы обращения к буферу и транляции под топологию матрицы из EffectMath упразднены в пользу работы через LedFB
- буфера лампы под слои текста/рисовалки переведены на использование экземпляров LedFB, часть операций копирования заменена атомарной заменой
- убраны флаги зеркалирования из объекта лампы, топология определяеся конфигурацией буфера
- изменения в коде эффектов
- множество эффектов переработанно с использованием структур сущностей и стандартных контейнеров
- оптимизация использования памяти для эффектов
- для части эффектов убраны излишние буфера и промежуточное копирование
- эффекты с переменным числом объектов, вместе с изменением числа сущностей растет/уменьшается их контейнер вместо использования фиксированных массивов
- промежуточные двумерные массивы для эффектов унифицированы в абстрактный шаблон Vector2D
- переработаны эффекты на основе Noise3D Map
- Noise3D Map выделен в отдельный класс с собственным буфером
- унифицирован метод регенерации шума
- переработан класс Boid и зависимые от него эффекты, убраны зависимость от статических макросов WIDTH/HEIGHT, добавлен контейнер для объектов стаи
- все эффекты переведены на работу через фреймбуфер
- убраны зависимости от макросов WIDTH/HEIGHT
- убраны зависимости от статических констант/макросов производных WIDTH/HEIGHT
- убраны все прямые обращения к глобальному экземпляру класса FastLED
- весь код кроме объекта LedFB избавлен от зависимости на статические макросы WIDTH/HEIGHT и их производные