ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
6 августа
1309451 Топик полностью
Eddy_Em (13.05.2023 23:05, просмотров: 200) ответил RxTx на Буфер не спрайтовый, спрайты это иное Подобный буфер называется пиксельный и это так называемый BackBuffer. Посмотрел код, очень тяжелый. ARM вывозит его только потому что реально быстр. Быстро это пишется так:
Пиксельный буфер - когда на каждый пиксель свой цвет. А тут цвет спрайтами. 

1. Шрифты я руками рисовал - при помощи специальных макросов. Удобно. Всяко удобней, чем генерить GUI'шной тулзой (а вообще, я когда-то даже делал на html+js рисовалку шрифтов ☺).

2. А как - если не по точкам? Я пробовал ускорить, но вышло еще хуже... А функцию DrawPixel я заинлайнил. Стало быстрей.

3. memcpy не прокатит, когда начинаешь с произвольного пикселя. Да и смысл memcpy вызывать, если ширина буквы не шире 16 пикселей? А вертикально не скопируешь - там смещение нужно.

4. До Cortex-M4 я еще нормально не добрался: помыргал светодиодом на F407 и в сторону пока отложил (там USB OTG, т.е. надо новый модуль USB писать, а у меня пока других задач выше крыши).


Вот жаль, что нормальных статей в интернетах нет по таким вещам, как то же оптимальное рисование шрифтов в экранный буфер на микроконтроллере. На английском это бесполезно искать - там калокуберы сплошные, а на русском тоже как-то не очень... Народ обычно берет какую-нибудь дрянь вроде адафрута или даже хуже, и не парится.

eddy-em.livejournal.com github.com/eddyem