OberonCore https://forum.oberoncore.ru/ |
|
Собрать Blackbox SDL https://forum.oberoncore.ru/viewtopic.php?f=127&t=6375 |
Страница 1 из 1 |
Автор: | hothing [ Суббота, 06 Апрель, 2019 09:30 ] | ||
Заголовок сообщения: | Собрать Blackbox SDL | ||
Я не понимаю всех причин по которым HostSDL заброшен, но идея мне нравитсо, поэтому решил собрать ББ с этим хостом. Оказалось это не тривиальная задача. Пришлось местами поработать и напильником и молотком. Удалсь запустить с пустым главным окном (хотя можно заметить очень блеклые линии "крест-накрест"). Дальше затык. Рецепта сборки для BB v1.7.1 (portable) нет, но остались воспоминания, что: 1) Скопировать пакет подсистем Ogl, SDL2, kia, x86sdlhost 2) В Ogl используется константа не определенная в GL - надо доопределить 3) В подсистеме SDL2 отсутвует модуль FontDetect который необходим (был случайно найден в одном из репов Ивана Денисова) 4) Лучше сделать копии стандартных подсистем Std, System (у меня они Nstd, Nx) 5) "Переключить" модули на Nstd, Nx 6) Перекомпилировать ВСЁ что будет в исполняемом файле 7) Можно собирать, важен порядок элаборации Сделать отдельный каталог для запуска BBSDL 9) В нём обязательны: а) *.dll от SDL2, SDL2_image, SDL2_ttf; б) каталог Fonts/*.ttf; в) в корне "мутный" файлик bblogo.ms3d Косяки: * Так и не смог побороть трап №20 в WmMenus.New из-за (Nx)Menus.FirstMenu, пришлось сделать заглушку. Меню не работает. * При разворачивании окно до максимума - права половина не отрисовывается * Закрыть окно можно только двумя кликами: сперва на "закрыть", потом на "свернуть" Останки экспериментов в архиве. Буду рад, если у авторов найдется время помочь запустить ББ в рабочем виде.
|
Автор: | Иван Денисов [ Суббота, 06 Апрель, 2019 10:44 ] | ||
Заголовок сообщения: | Re: Собрать Blackbox SDL | ||
Как здорово, что эта тема вам стала интересна. Действуйте слово в слово по этой инструкции и всё получится: http://redmine.molpit.org/projects/blackbox-sdl/wiki У меня в Wine проблема с отрисовкой строк, поэтому ББ не запускается, если не закомментировать содержимое DrawString в x86sdlhostPorts. У вас могут быть другие видеодрайвера и все запустится со строками. Но само окно запускается. Внутренние окна двигаются и открываются и закрываются. Меню работает и команды из него тоже вызываются. Что надо делать... 1. надо актуализировать герметизацию для ББ 1.7.1 https://blackbox.obertone.ru/download 2. надо актуализировать все привязки в проекте для моей обновленной версии Sdl2 Это задача не простая, но, думаю, что только так дальше удастся продвинуться. Иван Кузьмицкий бросил из-за неясных падений ББ. Так как он падал при отладке вывода строк и он не понимал в чем причина. Не мог установить взаимосвязь с чем это может быть связано. С тех пор Артур Ефимов выявил проблему. Мы это исправили в новых сборках ББ (спасибо LuoWy) и новой версии Sdl2. Но у Ивана Кузьмицкого уже нет запала заного проводить герметизацию. Он это не сумел в своё время задокументировать по шагам. Что-то осталось на Obertone, но мало. Иван как-то говорил, что готов по скайпу поделиться инфомацией, что помнит. Но по сути, надо проходить путь самостоятельно. Он уже не возьмется это делать. Это много часов кропотливой работы. Я планировал использовать наработки Ивана и Петра для проекта кросс-платформенной версии ББ. Но сейчас до сих пор занимаюсь одним, но очень важным делом для SDL2-сборки - я убираю все зависимости HostCFrames от WinApi или Gtk2. Чтобы элементы управления работали корректно в Sdl2-сборке. Если вы параллельно сможете ОСВЕЖИТЬ проект по герметизации ББ, то так, объединив усилия сделаем рабочую версию за пару тройку месяцев.
|
Автор: | Иван Денисов [ Суббота, 06 Апрель, 2019 12:26 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
Провел эксперимент, взял отрисовку шрифта из ObxIcosphere.odc и вставил напрямую в x86sdlhostPorts. Без древовидного кэширования, но текст выводится. Вложение: Шрифт и измененный Ports в архиве. Вложение: Так что пока можно и малой кровью, наверное, доработать проект. Но если будет какая-то нестабильность, то всё равно лучше заново провести герметизацию... |
Автор: | Иван Денисов [ Суббота, 06 Апрель, 2019 13:04 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
Нестабильно работает, к сожалению. Падает. Надо изучать. Но прототип, по крайней мере, вам показал полностью. |
Автор: | hothing [ Суббота, 06 Апрель, 2019 15:03 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
Иван, спасибо! Попробую. UPD При клонировании Гитом он запрашивает пароль на "гит-модули" Ogl, SDL2. Почините? |
Автор: | Иван Денисов [ Суббота, 06 Апрель, 2019 16:00 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
hothing писал(а): Иван, спасибо! Попробую. UPD При клонировании Гитом он запрашивает пароль на "гит-модули" Ogl, SDL2. Почините? Поправил! |
Автор: | hothing [ Среда, 10 Апрель, 2019 19:23 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
Мда, что-то в этой сказке не так: на далеко не слабой машинке перерисовка идет, гм, заметно. (К сожалению, Webm-файлы не загружаются). Также, в процессе "портирования" на V1.7.1 увидел, что Host торчит много где. Выбор в качестве бэкенда для 2D OpenGL кажется сомнительным, есть же Cairo или Skia. Надо исследовать. |
Автор: | Ярослав Романченко [ Среда, 10 Апрель, 2019 20:22 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
hothing писал(а): Выбор в качестве бэкенда для 2D OpenGL кажется сомнительным, есть же Cairo или Skia. Надо исследовать. Самое современное - VulkanPasVulkan GUI-subframework впечатляет |
Автор: | Пётр Кушнир [ Среда, 10 Апрель, 2019 22:45 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
Инструкции остались http://obertone.ru/bbnohost http://obertone.ru/bbdonohost |
Автор: | hothing [ Пятница, 12 Апрель, 2019 11:10 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
Спасибо всем. * Каркас ББ крепко завязан на пиксельную координатную сетку, через Ports, а все новомодные 2/3D библиотеки расчитаны на "свободные" КС. Конечно, можно делать трансляцию: пиксельные координаты транслировать в КС библиотеки, что бы та их снова транслировала в пиксельные. Нужно ли? (А ошибки вычислений?) * SDL оправдан если _всю_ графику (исключая отрисовку текста) реализовать средствами SDL + ББ. Что почти не реально сделать из-за крайнего ограничения по ресурсам (времени и сил). |
Автор: | Info21 [ Пятница, 12 Апрель, 2019 19:20 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
hothing писал(а): А ошибки вычислений? Единица измерения в ББ достаточно мелкоскопическая, чтобы об этом не беспокоиться.
|
Автор: | Пётр Кушнир [ Пятница, 12 Апрель, 2019 19:34 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
Когда я этим занимался, то 1/36000 типографского пункта казались нормальной точностью вычислений. |
Автор: | hothing [ Воскресенье, 14 Апрель, 2019 07:51 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
Ярослав Романченко писал(а): hothing писал(а): Выбор в качестве бэкенда для 2D OpenGL кажется сомнительным, есть же Cairo или Skia. Надо исследовать. Самое современное - VulkanPasVulkan GUI-subframework впечатляет Последние лет 8 все мое рабочее ПО крутится в ВМ-ах, и я не исключение. Когда реализуют Vulkan для ВМ и реализуют ли неизвестно. Привязывать к нему ГИП из-за "красивостей" не стоит. |
Автор: | Ярослав Романченко [ Воскресенье, 14 Апрель, 2019 09:36 ] |
Заголовок сообщения: | Re: Собрать Blackbox SDL |
hothing писал(а): Последние лет 8 все мое рабочее ПО крутится в ВМ-ах, и я не исключение. Когда реализуют Vulkan для ВМ и реализуют ли неизвестно. Привязывать к нему ГИП из-за "красивостей" не стоит. Если на ВМ-ах, то тогда OpenGL себя там чувствует вполне неплохо. В частности на оракловской бесплатной ВМ я на OpenGL какое-то время без проблем разрабатывал. Но смотря ещё какую систему внутри ВМ использовать. С "семёркой" проблем не было, а у "десятки" скатывалось в софтварный режим.
|
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |