Страница 8 из 8

Re: ZenGL + поддержка android

Добавлено: 15.06.2025 22:20:47
Seenkao
Выпущена новая версия --> ZenGL 4.19. <--
Изменения произошли достаточно глобальные и возможно версия не стабильна. Потому, если что, используйте предыдущую версию.

Основные изменения:
- изменена работа с загрузкой файлов. Теперь за счёт флага можно указать, что путь указан глобальный. Необходимо для LCL/VCL приложений, где используются OpenDialog и что-нибудь подобное.
- частицы: добавлены процедура и функция для передачи координат излучателя. В дальнейшем могут быть изменение их работы.
- изменена работа рендера. Исключена вся функциональность glBegin, glEnd, glVertex и другие из функциональности ZenGL. Теперь всё работает посредством использования glDrawArrays - кроссплатформенно по умолчанию.
- изменена работа с цветом. Теперь основа для цвета это zglTColor (zglPColor), ранее было LongWord.
- добавлены расширенные функции для рисования линии, в них можно задавать начальный и конечный цвет.
- множественные изменения согласно изменений выше.
Просьба сообщать о всех проблемах работы с библиотекой! Очень сложно всё протестировать. По возможности проверил всё что возможно, но наверняка что-то упустил.

Re: ZenGL + поддержка android

Добавлено: 04.03.2026 04:09:26
Seenkao
Всем привет!!! :)

Встречайте очередное обновление >>> ZenGL 4.20. <<<
Версия насколько возможно стабилизирована, надеюсь критических недоработок нет. Основной список изменений:
02.03.2026
- Исправлены проблемы для сборки програм под Delphi. Введено определение CPU64 именно для 64-х битного Delphi.
- Добавлен код для устранения бага, когда поле ввода (Green Engine) возвращая строку, могла "поломать" программу.
- Исправления в модуле "zgl_joystick.pas", теперь и динамические библиотеки правильно возвращают имя джойстиков. И если определилось несколько джойстиков, то и узнать "имена" можно у всех (не более 10, от 0 до 9).

26.02.2026
- Модифицирован проект для сборки динамических библиотек. Теперь достаточно выбрать под какую архитектуру собирать библиотеку (в настройках проекта).

23.02.2026
- Для LCL-приложений введена поддержка GTK3, QT5 и QT6. Реализация в основном в демках.

20.02.2026
- Изменена работа переменных "mouseDX" и "mouseDY", а так же соответствующих функций "mouse_DX" и "mouse_DY". Теперь они возвращают дельту X и дельту Y.
- Исправлены возможные проблемы при работе с ресурсами. Теперь придёт оповещение, если вы включили модуль в свой проект, но определение для модуля в файле "zgl_config.cfg" было отключено.
- Исправлены проблемы с загрузкой ресурсов, в частности со шрифтом. Приложение закрывается, если ресурсы не были загружены, а при создании шрифтов для таких случаев, устранены утечки.

16.02.2026
- LongWord в ZenGL переименован в Cardinal - везде. Так как Delphi, для 64-х битных систем считает LongWord равным LongLongWord (стараются соответствовать unix).
- Автоматически исправлены малые проблемы для 64-х битных программ, собранных в Delphi.

07.02.2026
- Оптимизирована процедура "tex_CalcAlpha" в модуле " zgl_textures". Оптимизирована под скорость работы, как часто используемая (требуется проверка, на всякий случай).
- Произведена оптимизация процедур в модуле "zgl_render_2d.pas" связанных с выводом изображения: "render_AddVertex4", "render_AddVertex6", "render_AddVertexTexture6", "render_AddColor4", "render_AddVCAColor4", "render_AddVCAColor6" и "render_AddColor6". Должно работать более быстро, но видно будет только на слабых машинах (для них и производилась оптимизация).

21.01.2026
- Внесены исправления в модуль "zgl_render_2d.pas". Исправления касаются пересылки массивов данных для вывода, что должно повысить производительность и уменьшило конечный код.

11.12.2025
- В модуль "zgl_matrix" введёно определение "USE_SINGLE", определяющее как будет производится работа с данными для матриц: Single или Double. Для использования обоих видов матриц следует создать свой модуль работы с матрицами.

03.11.2025.
- Корректировка возвращения mouseX и mouseY для Android. Теперь координаты для мыши только по нулевому тапу работают.

17.08.2025
- Удалены константы и переменные которые были реализованы для клавиатуры: KT_DOWN, KT_UP, keyDownRepeat, keyBoolRepeat, beginKeyDelay, repeatKeyDelay и keyDelayWork.
- Удалены процедуры с ними связанные: setKey_BeginRepeat и setKey_Repeat.

08.08.2025
- Исправлена проблема при попытке вывести не существующую текстуру.
- При создании нулевой текстуры "tex_CreateZero", если приходят нулевые данные, то они по умолчанию передаются в 1.

07.08.2025
- Корректирована работа ZenGUI. Теперь обработка мыши происходит нормально. Но по прежнему остались утечки при использовании диалоговых окон с эффектами и другие мелкие проблемы.

19.07.2025
- Устранены проблемы при попытке загружать файлы без указания имени и расширения.

18.07.2025
- Устранены возможные утечки (вероятно не полностью).
- Исправлена ошибка в имени функции "tex_GetTextureID" (было "tex_GetTextireID").
- Добавлен проект ZenGUI (вероятнее всего временно, нужен для тестов), но у него ещё много проблем.

17.07.2025
- Исправлена работа с мышью. Теперь очистка данных производится верно.
Так же в демках содержится последнее обновление эмулятора PZ Nes. Его можно собрать и под Android и потестировать. Только на android у вас должен быть контроллер, чтоб поиграть в игру. Запустить можно несколько игр, но я пока не реализовал выбор игр. Прощу прощения.

UPD: Забыл. Теперь все проекты для Android находятся в одном проекте с FPC/Lazarus. Под нужную платформу надо выбирать в настройках режим сборки (build mode). Они все настроены, потому нужно только выбрать нужный режим.
Так же были добавлены демки для старых версий Android. Мне это надо для тестирования.

Всем успехов!