OberonCore https://forum.oberoncore.ru/ |
|
BlackBox на OpenGL https://forum.oberoncore.ru/viewtopic.php?f=114&t=4287 |
Страница 3 из 7 |
Автор: | Иван Кузьмицкий [ Вторник, 26 Март, 2013 08:03 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Мы не привыкли отступать |
Автор: | Info21 [ Вторник, 26 Март, 2013 08:46 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
скриншот уже впечатляет |
Автор: | Пётр Кушнир [ Вторник, 26 Март, 2013 09:34 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Роман М. писал(а): Вон, как назло, сайт http:///www.freetype.org/ не фунциклирует. У меня есть архив бинарников хидеров и документации от 12 марта, если срочно надо. |
Автор: | Alexey Veselovsky [ Вторник, 26 Март, 2013 11:18 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Роман М. писал(а): А может,ну его нафиг, этот модуль Fonts? И без него обойтись можно. Вон, как назло, сайт http:///www.freetype.org/ не фунциклирует. Работает этот: http://freetype.sourceforge.net/index2.html |
Автор: | Роман М. [ Вторник, 26 Март, 2013 13:11 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Пётр Кушнир писал(а): Роман М. писал(а): Вон, как назло, сайт http:///www.freetype.org/ не фунциклирует. У меня есть архив бинарников хидеров и документации от 12 марта, если срочно надо. Да не то что документации совсем не добыть онлайн. Тем более, Алексей дал хорошую ссылку. Пока не могу понять как переводить из пикселей в универсальные единицы. |
Автор: | Пётр Кушнир [ Вторник, 26 Март, 2013 13:27 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
универсальные единицы ББ? |
Автор: | Роман М. [ Вторник, 26 Март, 2013 15:09 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Пётр Кушнир писал(а): универсальные единицы ББ? да. Они самые. |
Автор: | Пётр Кушнир [ Вторник, 26 Март, 2013 15:55 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Пиксель связан с универсальными единицами выражением из комментов к Ports.Frame. frame.dot = Ports.point - Ports.point MOD frame.unit frame.unit передаётся фрейму из порта. А порту передаётся при создании и инициализации реализации порта. При этом каждому порту может быть выдано своё значение unit равное: unit = Ports.inch DIV dpi; (* точек на дюйм *) где dpi берётся из системного апи для конкретного девайса. дефолтное dpi в винде 96, в маке 72. Что интересно, Ports.inch = 914400 делится без остатка на 96 и на 72 Следовательно связь между пикселем и unit вычисляется для конкретного порта. А системное значение для экрана в текущей реализации HostFonts берётся в винапи. Вроде так. |
Автор: | Пётр Кушнир [ Вторник, 26 Март, 2013 23:25 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Сегодня, дневничок, мы освоили прокрутку колесом мыши, чуть привели в чувство шрифты, а так же вернули в строй StdLinks и DevCommanders (правда, они слегка квадратные, потому что круги в OpenGL рисуются нетривиально). Плюс, наконец-то нормально заработал журнал StdLog, поэтому стало возможным отключить консольный лог. Также мы разобрались с алгоритмом ресайза окон и портов. А ещё мы научились встраивать отображения в порт без помощи модуля Documents, это полезное умение пригодится нам при создании нативного контрола меню и нативных скролл-баров, статус-бар ещё, да (вот эта зелёная полоска, ага). |
Автор: | ilovb [ Среда, 27 Март, 2013 09:42 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Петр, посмотрите еще это: http://www.glfw.org/index.html API: http://www.glfw.org/GLFWReference277.pdf |
Автор: | Пётр Кушнир [ Среда, 27 Март, 2013 11:06 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
а я видел, на этапе поиска скачал, но в пользу freeglut был тот факт, что уже были описаны хидеры для CP, от Е. Темиргалеева. Быстрее стартовать. Если что, потом желающие смогут проявить себя и запилить оконный хост на glfw, после публикации. |
Автор: | Kubanych [ Среда, 27 Март, 2013 14:04 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Здравствуйте. Перенести BlackBox на OpenGL - очень хорошее решение. |
Автор: | Роман М. [ Среда, 27 Март, 2013 14:26 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
+ Clutter |
Автор: | Пётр Кушнир [ Среда, 27 Март, 2013 14:49 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Цитата: based on the GObject Цитата: GObject — библиотека с открытым исходным кодом (лицензируется под LGPL), представляющая портируемую объектную систему и прозрачную межъязыковую совместимость. Gobject спроектирован для использования как в C, так и в других языках при помощи привязок. Цитата: а самом базовом уровне GObject лежит динамическая система типов, которая называется GType. инопланетные технологии в ваших устройствах.
|
Автор: | Роман М. [ Среда, 27 Март, 2013 15:31 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Отчасти соглашусь. Пресловутая избыточная сложность. Более простой каркас использует другой, более сложный. |
Автор: | Пётр Кушнир [ Среда, 27 Март, 2013 23:10 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Сегодняшний день прошёл под флагом борьбы Ивана с OpenGL. Теперь порт умеет кружочки. Такой день. P.S. кстати, интересный момент в отрисовке кругов с помощью треугольников - OpenGL иногда рисует совсем не круг, видимо, это связано с ошибками округления. |
Автор: | Пётр Кушнир [ Четверг, 28 Март, 2013 22:44 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Сегодня я реализовал прототип механизма размещения в порт произвольного отображения. Привычный двойной статус-бар теперь является простой вьюшкой. Но чтобы добиться этой простоты пришлось пересмотреть механизм размещения отображений в окне. В прежней версии ББ только отображения Documents.Document размещались в окне, так как в скрытой реализации документа производилась нетривиальная работа по созданию корневого фрейма. Следовательно, любое открытое отображение было представлено документом. Документ имеет ряд параметров, которые являются излишними для отображений, подобных статус-барам, скроллерам, меню и тулбарам, следовательно, нужно было новое отображение, не такое сложное как документ. При этом, документ остаётся главным корневым отображением, и это отражено в интерфейсе модуля Windows, и исторические интерфейсы и модель поведения среды при открытии обратно совместима со старым ББ, но параллельно с документом, на поверхности окна будут существовать набор корневых отображений, которые будут размещены из предварительно заготовленной модели, в которой описано будущее расположение блоков. Такую модель можно будет сохранять, подменять, то есть, полностью настраивать раскладку окна. А заодно пришлось подумать над процессами изменения размера окна. За это дело будет отвечать ресайзер с настраиваемыми стратегиями. Но это всё в будущем, а пока можно ощутить гордость за механизм отображений, который позволяет такую гибкость механизмов всяким там реализаторам хоста. |
Автор: | Info21 [ Пятница, 29 Март, 2013 10:59 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Пётр Кушнир писал(а): Сегодня я реализовал прототип механизма размещения в порт произвольного отображения. и нужно
... а пока можно ощутить гордость ... |
Автор: | Пётр Кушнир [ Пятница, 29 Март, 2013 15:12 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Сегодня довёл до ума механизм блоков, осознал, что блоки в общем, похожи на окна, поэтому для простоты повторил набор методов, который полностью удовлетворил потребности рисованию отображений и по обработке пользователского ввода. Вот, например, вариант полоски меню. Кстати, так как в новом ББ не планируется вводить полноценный MDI "как-в-винде", то принимаются идеи по утилизации пространства внутри основного окна, которое пока никуда не исчезнет. |
Автор: | Info21 [ Пятница, 29 Март, 2013 17:17 ] |
Заголовок сообщения: | Re: BlackBox на OpenGL |
Мы где-то тут обсуждали MDI ведь? Разные копии ББ по факту работают как разные десктопы. Что удобно ("разделяй и ..."). |
Страница 3 из 7 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |