Page 3 of 3

Re: tengine :: tiny multiplatform 2d engine

Posted: Sat Sep 20, 2014 3:56 pm
by Serge
pascualle
Лучше брать за основу рендер из eglut, он проверен.
http://websvn.kolibrios.org/listing.php ... 7987a7fa2b
- функция _gl_term(), нужно ли удалять или как-то деинициилизировать gsAppGlData.gs (gbm_surface*), gsAppGlData.gbm (gbm_device*) gsAppGlData.render (render*)?
Да, у меня с этим кстати косяк. Кое-что почистит драйвер, но правильно будет все созданные объекты удалить вручную.
- иногда при перемещении окна остаются его куски на рабочем столе
Это баг с перерисовкой фона. Появился после оптимизации кода, never mind.
- даже при gl формат цвета bgr, для меня это странно (все остальные платформы используют rgb)
Не понял, что не так ?
Протестировать пока не могу, но лучше выложи готовый экзешник. Если есть вопросы, спрашивай.

P.S. Я пока не изучал твой код, у тебя в примере весь движок на GL работает, или ты рисуешь всё вручную, и потом получившуюся текстуру через GL выводишь на экран ?

Re: tengine :: tiny multiplatform 2d engine

Posted: Sun Sep 21, 2014 1:24 am
by pascualle
Serge,

create_render и render_swap_and_blit:
eglut так eglut, код почти идентичен (при беглом взляде), отпишусь как попробую.

gbm_*:
С чиской gbm_* попробую еще раз, но что-то оно (доска) мне ворнинги писало как первый раз попробовал, в общем попробую.

bgr и rgb:
Теперь о bgr и rgb. Для меня немного странно, что приходится ресурсы собирать с цветом bgr. По сути это не проблема, конвертор это умеет, но почему компоненты цвета в kolibrios перевернуты?

gl:
версия рендера у меня честная, например в gl2 используется оптимизация по рендерколам, vbo (+stride), шейдеры на каждый оптимальный случай.
Вообще в tengine реализованы три рендера:
- easygraphics, простой самописный блиттер, основной идеей которой является буфер фрейма и буфер тайлов, самая низкая оптимизация по скорости
- render2dgl1, openGL1.1/openGL(es) рендер, чесный gl1 рендер без экстеншинов, главная задача -- оптимизировать дров-коллы (сортировка, текстуры, glDrawArrays)
- render2dgl2, openGL2/openGL2(es) рендер, чесный gl2 рендер без экстеншинов, оптимизация примерно такая же как в gl1, но с использованием vbo
Более того, render2dgl1 и render2dgl2 рендер системы самодостаточны и все инитят и подгружают сами, им нужен только готовый, платформенно-зависимый участок кода для инизиализации gl-контекста, о котором они не знают, да и знать не должны.

Самая большая проблема в том, что сейчас очень мало времени, работа...

Re: tengine :: tiny multiplatform 2d engine

Posted: Sun Sep 21, 2014 9:27 am
by Serge
Теперь о bgr и rgb. Для меня немного странно, что приходится ресурсы собирать с цветом bgr. По сути это не проблема, конвертор это умеет, но почему компоненты цвета в kolibrios перевернуты?
А где именно перевёрнуты ?

Re: tengine :: tiny multiplatform 2d engine

Posted: Sun Sep 21, 2014 12:22 pm
by pascualle
Serge,
покопался в своем коде на предмет артефактов с полупрозрачностью и bgr.
Признаю, проблема на моей стороне, все вопросы по этому поводу снимаются.

Причина была в том, что я совсем забыл о том что 1555 формат до kolibrios использовался только для nintendo, а у этой платформы все данные в big-endian. В процессе адаптации кода я пропустил один макрос, скоро будут исправления.

Прошу прощения за беспокойство.

upd: проблемы с полупрозрачностью и bgr для gl-версии исправлены

Re: tengine :: tiny multiplatform 2d engine

Posted: Sat Nov 15, 2014 4:12 pm
by pascualle

Re: tengine :: tiny multiplatform 2d engine

Posted: Fri Feb 20, 2015 1:49 pm
by Leency
Есть обновления программы? :)

Re: tengine :: tiny multiplatform 2d engine

Posted: Fri Feb 20, 2015 2:00 pm
by pascualle
Leency,
если ты спрашиваешь о активности над проектом tengine, докладываю

https://bitbucket.org/pascualle/tengine
last commit
Pushed to pascualle/tengine
2dbaf43 add MUN game to samples
Papa Pascualle · 2014-12-29

другими словами, я выложил исходники игры MUN (в том числе для kolibrios) вместе с мелкими исправлениями основного движка.

особого интереса к проекту со стороны сообщества я не вижу, потому проект почти не развиваю.

Re: tengine :: tiny multiplatform 2d engine

Posted: Fri Feb 20, 2015 2:12 pm
by Leency
Ох-ох-ох, сколько я пропустил :(

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

Будем над этим работать. Я скоро сделаю KolibriOS Store, чтобы можно было зайти и в один клик установить любую программу в систему.

MUN мне очень нравится. Её нужно добавить в автосборку и показывать меню при запуске, я отпишусь в теме.

tengine :: tiny multiplatform 2d engine

Posted: Sat Mar 19, 2016 5:53 pm
by pascualle
прошло некоторое время, потому пересобрал все демки, выложил новый пак с бинарниками

Re: tengine :: tiny multiplatform 2d engine

Posted: Wed Nov 09, 2016 1:33 am
by pascualle
полностью спортировал tengine для kolibrios
обновил шапку и демки
все можно скачать

подробности тут:
viewtopic.php?f=41&t=2868

Re: tengine :: tiny multiplatform 2d engine

Posted: Wed Nov 09, 2016 5:16 am
by Mega_Myr
Leency wrote: Я скоро сделаю KolibriOS Store, чтобы можно было зайти и в один клик установить любую программу в систему.
Leency, ты этим занимался? Есть наработки? Исходники?

Re: tengine :: tiny multiplatform 2d engine

Posted: Wed Nov 09, 2016 3:24 pm
by Leency
Mega_Myr wrote:
Leency wrote: Я скоро сделаю KolibriOS Store, чтобы можно было зайти и в один клик установить любую программу в систему.
Leency, ты этим занимался? Есть наработки? Исходники?
С этим есть одна проблема: нет программы извлечения из архива. Не все программы это один файл, бывает 2, 3 файла, 10, с разными подпапками. Разрабатывать свой формат пакета? Ну нафиг :) Я лучше подожду пока кто-то запилит программу которой можно будет дать на вход параметры
unzip "/tmp0/1/downloads/packages/dicty.pkg.zip" "/sys/dicty"

А пока что.

Можно запилить сайт с которого можно будет скачивать файлы для Колибри. Сссылку на сайт добавить в WebView третьей по счету на стартовой странице и хай юзер заходит качатет, а что дальше делать с файлами решает сам.

Re: tengine :: tiny multiplatform 2d engine

Posted: Wed Nov 09, 2016 8:09 pm
by Mega_Myr
Leency wrote: С этим есть одна проблема: нет программы извлечения из архива.
Совсем нет? Даже простенького zip архиватора? 7-zip никто не пытался портировать?
Разрабатывать свой формат пакета?

Это в любом случае нужно сделать.
Например, в андроид apk-пакеты, это обычный zip-архив с кастомным расширением и файликом с параметрами установки, внутри. Пусть в колибри будут kap-пакеты. ... Осталось запилить установщик.
Я лучше подожду пока кто-то запилит программу которой можно будет дать на вход параметры
unzip "/tmp0/1/downloads/packages/dicty.pkg.zip" "/sys/dicty"
- "Ферб, я знаю чем мы сегодня займёмся!" :mrgreen:
Что если установщик драйверов прокачать до универсального установщика?
Можно запилить сайт с которого можно будет скачивать файлы для Колибри.
Да, это нужно обсудить.
В любом случае официальный магазин приложений должен быть на Store.kolibri.org И связан с встроенным пакетным менеджером колибри. Да, это будет не скоро.

P.S. Кто может, перенесите пожалуйста обсуждение о магазине приложений в отдельную тему, в раздел "Идеи".

Re: tengine :: tiny multiplatform 2d engine

Posted: Thu Mar 15, 2018 12:41 am
by pascualle
Появились новые глобальные ключи прекомпилера tengine:

USE_FX32_AS_FLOAT
USE_FX32_AS_FIXED


теперь по умолчанию tengine использует ключ USE_FX32_AS_FLOAT, определяет тип и размерность типа данных fx32. При включенном USE_FX32_AS_FLOAT тип fx32 является double, стандартным типом хранения значений с плавающей точкой. Ключ USE_FX32_AS_FIXED определяет тип fx32 как fixed, в этом случае способ представления действительных чисел происходит в формате int, все операции над fx32 являются целочисленными и не используют FPU (сопроцессор)

Все компилится, проверил на "Универсальный образ Flash/HDD, 11 мар 2018" образе и последних (svn://kolibrios.org/data/common/lib
) либах