«Что такое осень? Пандемия. Вирус наступает новой тучей...» © не Тимас.
0. Переезд под GNU Linux можно считать состоявшимся. От исходного кода отгрызены все ссылки на графику, звуки и диалоговые окна, и в этом виде он радостно переехал на Free Pascal.
1. NativeXML, хоть и хорош, но таки выкинут и заменён стандартным DOM-объектом. Работает прекрасно. Файлы читаются и пишутся, комментарии удаляются (чтобы списочность объектов не нарушать). Ест-но, всё это переехало с CP1251 на UTF8.
2. Идёт возня с тарболами. Это такой архив без сжатия. Смысл: не проверять каждый файл графики и звуков отдельно, а проверять только целостность тарбола по MD5. Мне не жалко, если кто чего утащит или пририсует своё, ради этого я и перешёл на GPL-лицензирование. Кому надо - и так это сделают. Хочется просто обезопасить алгоритмы, бо в ряде мест они сильно зависят от картинки спрайта.
3. Переписано чтение и сохранение списка объектов. Вместо динамических массивов постепенно идёт переход на списки. Причём список может быть как ссылочным, так и владельцем загруженных объектов. Как-то раньше об их совмещении я не задумывался.
4. На базе григорьевского CellGameBoard пишется свой собственный набор компонентов для работы с сеточками. Компонент непосредственно пульта написан, но ещё не проверялся. ВизИнформ пишется. Знаков там будет побольше, нежели 64 в оригинальном табло. Но рисоваться они будут программно, а не с использованием пиксельного шрифта.
5. Праготрон (лепестковое табло) написан и проверен. Работает, только шелестящих звуков не будет. Немножко играюсь со скоростью листания. Но это же потом, когда вся математика начнёт считаться в цикле. Из интересного - совмещение одинаковых по начертанию кириллических и латинских символов. Лепестков всего 80, по пять фаз в каждом перелистывании. Был опытным путём подобран шрифт (Noto Mono) и размер (16px), а сами спрайты лепестков сформированы программно. Алгоритмы изменения яркости через преобразование RGB -> HSB -> RGB были написаны пару лет назад, сейчас они как раз пригодились.
5.1. Параллельно с этим освоил работу с UTF8-строками, где число занимаемых байт не соответствует числу символов.
6. «Но при этом маски носят все на подбородке...» © оттуда же.
7. По звукам сделал предварительные изыскания, но ещё не копал глубоко. Всё впереди!
Последний раз редактировалось Timas; 01.12.2020 в 07:27.
|