ZenGL 3.20 + поддержка android

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

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

Сообщение Seenkao » 16.05.2020 20:06:15

https://youtu.be/IGFjcyWu4Ew - занимаюсь разработкой джойстиков и клавиатуры под андроид. Если есть какие мысли, что надо переделать или что-то изменить, был бы благодарен за информацию!!!

Так же, пока занимался разработкой, приходилось многие вещи доделывать, постарался исправить множество моментов, так же которые были описаны некоторыми людьми.

В следующей версии поддержка 64-х битной системы Windows реализована, были некоторые недоработки в дефайнах, случайно заметил, после подсказки одного из отписавшихся. Подредактировал редактор фонта, и надеюсь его теперь можно будет запустить везде. Ну и ещё куча разных доработок, о которых может уже и не упомню.
Seenkao
новенький
 
Сообщения: 62
Зарегистрирован: 01.04.2020 03:37:12

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

Сообщение Seenkao » 08.08.2020 23:09:35

Всем привет!

Я продолжаю работать с ZenGL, но, чтоб вам было понятно, для меня сам ZenGL - это несколько основных файлов по созданию рабочего проекта/программы под определённую ОС или под несколько или, возможно, и под все сразу. Изначально меня интересовала разработка под Windows и Linux. Но столкнувшись (уже более полугода как) с тем что ZenGL может создавать программы и под Android, я всё же решил использовать это для своего развития, и возможно для развития самого ZenGL.

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

И я утопал всё глубже и глубже... Одно тянуло за собой другое... потом третье и т. д. Заниматься этим можно вечно и так ни чего и не выпустить в свет. Поэтому меню/джойстики на данной версии откладываются, так как они вытянули очень много не решённых до этого "проблем" и меню будет уже в другой версии... Но она будет не совсем совместима со старыми версиями, особенно это касается Android.

-----------------------------------------------------------------------------------------------------------------------
Изменения в версии 0.3.24:

- Версия стабильно компилирует под Win64, изменено для версий FPC > 3

- Для Windows, теперь "ALT" + клавиша не вызывает системных звуков

- Для Linux - теперь создаётся рабочая дирректория, но помните!!! Это может быть общий каталог, куда вы "установили" свою программу. Поэтому это сделано для тех программ (которые вы создаёте) для которых вы выделяете отдельный каталог

- Введено несколько дефайнов:

- Escape = exit

- Дефайны для полных версий OpenGL, но пока реализовано только для OpenGL ES, в дальнейшем коснётся и самого OpenGL для компьютеров

- для инициализации под LCL/VCL (handle - окна), по умолчанию включены в данной версии, в следующих версиях по умолчанию будет отключено

- редактированы дефайны под Android, исключён не используемый код

- вернул некоторые функции (которые удалил ранее :/ понял что если человек будет создавать библиотеку, то они нужны будут), некоторые немного изменил, так же исключая повторный и не используемый код

- дополнил OpenGL ES (1.0) отсутствующими, до этого времени, функциями (кроме glColor4f, в данной версии она сделана под определённую работу и занята), так же указаны не используемые функции версии 1.1

- дополнил OpenGL недостающими функциями, но немногими, очень много ещё отсутствует


!!! Внимание!!! Поддержка создания библиотек отключена!!! zglHeader.pas не редактирован, и возможно не пригоден для использования. Если хотите попробовать, берите его в версии 0.3.12 (так же надо будет восстанавлиать демо-версии как в версии 0.3.12)

Ещё одна причина отказа от поддержки LCL библиотек, это то, что я не запустил демо-версии на FPC + LCL.
(Но вот ZenFont(LCL) запустить удалось, так что возможно проблема где-то на поверхности).

- в демо-версии со звуком показано как остановить звуки, для их изначального воспроизведения. Звук теперь можно "передвигать" (в версии OpenAL)

- Множественные изменения в файлах, для облегчения кода и более корректной работы. (а возможно и нет...)

- Множественные изменения под разработку под Android. Изменён файл ZenGL.java, корректирована работа Android приложений под коснувшиеся изменения.

- ZenFont теперь можно запускать и под Delphi 7. Так же редактирована работа приложения, введены некоторые ограничения на работу приложения, для избежания ошибок при создании нового шрифта.

-----------------------------------------------------------------------------------------------------------------------

Дальнейшие планируемые изменения:
- Введение джойстиков/меню для Android, а так же возможность использовать меню и создавать своё меню для компьютеров.

- расширение OpenGL или возможность подключения dglOpenGL (будет возможность создавать умельцам как 3D- приложения, так и работы с шейдерами).

- после расширения OpenGL будет поддержка освещения и возможно тумана. И вероятно многое другое, что включено в OpenGL.

- доработка OpenAL. (если руки дойдут)

-----------------------------------------------------------------------------------------------------------------------

Прошу многих извинить!!! Но специально заниматься разработкой/доработкой под MacOS/iOS в данное время не буду. Так же специальной поддержкой DelphiXE заниматься не буду. Большинство примеров под Delphi 7 будут работать и под DelphiXE для Windows. Возможно, если DelphiXE поддерживает, будет поддержка Linux. Если DelphiXE поддерживает приложения под Linux, просьба сообщить мне об этом (сильного желания устанавливать эту среду программирования, нет).

Так же не буду продолжать поддержку DirectX, это в ваших руках, но на это так же надо потратить много времени.


Множество вопросов по работе с ZenGL решены и приведены в примерах. Примеры смотрите под Delphi 7, Lazarus и Android.
Под FP (без Lazarus), MacOS и iOS я не переделывал примеры, их можно так же переделать, подсмотрев в других примерах указанных выше.

До документации пока руки не дойдут, за это больше всего извиняюсь! На сайте zengl.org смотрите, там достаточно не мало информации.

-----------------------------------------------------------------------------------------------------------------------

Теперь относительно Android. Google отказалось от поддержки 32-х битных версий программ... а точнее программ, которые содержат 32-х битный код...
Это очередная долгая песня. Надо искать скомпилированные библиотеки под 64-х битную систему, и потому в данное время я этим заниматься не буду.
Если у вас есть данные библиотеками, то вы можете ими поделиться или поделиться ссылками на них. Потому что кроме самих библиотек, надо будет и настраивать компиляцию под 64-х битную систему и решать все выявляющиеся проблемы.

Меня устроит и 32-х битная система, так как она вполне запускается и на более поздних версиях телефонов и уж точно запустится на большинстве телефонов. )))

-----------------------------------------------------------------------------------------------------------------------

Все вопросы можете задавать на форуме сайта zengl.org , или задавая вопросы мне:
M12Mirrel@yandex.ru - почта
https://www.youtube.com/channel/UCn46Rn ... g/featured - канал на ютубе, выкладываю периодически видео может кому полезно будет. Ну, или так же на форумах, просматриваю темы, по возможности отвечаю (или отмечаю о недоработках для себя)

-----------------------------------------------------------------------------------------------------------------------

Всего доброго, до встреч!

С уважением, Serge! :D

П.С. Сама версия ZenGL 3.24, изначальный пост обновлён, версия добавлена :!:
https://yadi.sk/d/s2D7RYTuGlVagw
Seenkao
новенький
 
Сообщения: 62
Зарегистрирован: 01.04.2020 03:37:12

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

Сообщение Seenkao » 11.08.2020 19:41:23

Обнаружена ошибка, с которой уже давно борюсь, но не мог понять в чём проблема. После обновления FPC до версии 3.2 проблема выявилась более явно, но для LCL это было не заметно, а вот для большинства приложений ZenGL, не использующих LCL очень сильно сказалось...

Шапка обновлена!!!
Для Unix- систем обязательно в запускаемом файле должно идти самым первым модулем!!! :
uses
{$IFDEF UNIX}
cthreads;
{$ENDIF}

В противном случае ваше приложение может вылетать с ошибкой.
Seenkao
новенький
 
Сообщения: 62
Зарегистрирован: 01.04.2020 03:37:12

Пред.

Вернуться в Общее

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

Рейтинг@Mail.ru