LINUX.ORG.RU

Разработка GUI фреймворка с аппаратным ускорением на Си

 ,


1

6

Да, сам знаю, многие скажут «не нужно» или «Qt уже придумали», однако я долго думал над необходимостью разработки, и пришёл к выводу, что нужно.

Почему: Да, Qt поддерживает аппаратное ускорение, но оно не используется по-умолчанию, да и не у всех работает(например у меня на пропиретарных драйверах валится обратно на software, а на открытых вот так - http://imageshack.com/a/img202/3936/lj8j.png )

Так же не забываем, что Qt нельзя использовать из Си(вот только не надо про ООП тут холивар разводить, на Си в ООП можно, отвечаю), а C++ для меня не торт, да и для многих других тоже.

Что есть: Есть криво составленный SRS(http://goo.gl/YeM0DB), базовое знание OpenGL 3.3 и довольно хорошее знание Си.

Самому, мне этого не сделать(я не говорю, что не могу, могу, конечно, но вот качество конечного ПО явно будут не лучшими). Хотелось бы привлечь какое-нибудь количество людей.

UPD: Пожалуйста, не надо сообщений типа «не пиши велосипеды» или «не нужно». Я попросил помощи, а не бурления говн. Да, может потом будет фолбек к меньшей версии OpenGL, но пока надо хотя бы на OpenGL 3.3 запилить. Если хотите помочь, покритикуйте SRS, в нём описана примерная архитектура, или присоеденитесь к проекту. Или хотя-бы скажите, куда мне пойти, чтобы найти единомышлеников.



Последнее исправление: cetjs2 (всего исправлений: 3)

Ответ на: комментарий от drSchur

Зачем мне думать о мертвечине и гуйне на бсд? Зачем мне говородить тысячи кастылей ради всяких недоос типа маздайки? Зачем мне думать ещё о тысячи мёртвых и протухших ОС.

Кросплатформенность между псевдоюниксами ещё можно понять - она мало стоит и имеет хоть какой-то смысл, но вот маздайка. Я не вижу в этом смысла. Ты видидь?

anonymous
()

Да, сам знаю, многие скажут «не нужно» или «Qt уже придумали»

прекрати передергивать и используй С++

MikeDM ★★★★★
()
Ответ на: комментарий от anonymous

Ты видидь?

Видю. Один, кстати, ЛОРовец вроде бы писал костыль на Сишечке для доступа к гуевым функциям оффтопа. Подробно не помню.

Но дело даже не в этом.

drSchur ★★★
()
Ответ на: комментарий от Eddy_Em

Ну да. Тут тебе и сетевая прозрачность, как в иксах, только на уровне тулкита, а не битмапов. Хотя если запускать ин-процесс, то можно не стартить отдельные треды, а использовать общий ранлуп (гуйня все равно однопоточная, как со стороны юзера, так и по сути своей не особо параллелится). Мне кажется, сегфолты и рестарты не главное, да и чему валиться, если на вью-сайде будет использоваться те же гтк/кутэ/какао/хтмл/винформс. Главное то, что есть единый дата-баунд интерфейс для любого класса V, и будь то мобильная платформа или десктопная, ты можешь на стороне M подставлять нужный C, который загрузит на V нужный «css/html» и работать по событиям и забинденным датасетам, не заботясь, как там все реально выглядит. Я сейчас как раз работаю над похожей штуковиной, поднял хитрый rpc, пустой клиент коннектится к аппсерверу, тот ему в ответ на хэндшейк «канал.привет(я=<имя-тулкита>)» выплевывает первичную форму и пошло-поехало. А вся логика варится на сети серваков, кто-то данные хранит, кто авторизацией и клиентами занимается, кто кешированием. Вроде красиво получается, прибитые костылями специфичные гуи забыл как страшный сон.

anonymous
()
Ответ на: комментарий от exhu

т.е. ты свои events заворачиваешь в иксовые, ну или в вендовые, в зависимости от платформы? тоже думал о таком варианте, но чем-то он мне не нравится на подсознательном уровне. наверное, потому что нет уверенности, что на всех нужных платформах такой способ прокатит.

waker ★★★★★
()
Ответ на: комментарий от waker

нет, не заворачиваю. Задача — РАЗБУДИТЬ гуи-поток, который ждёт событий от клавы-мыши-окон-кастомного сообщения. Разбудили, далее можно проверить СВОЮ очередь сообщений, в которой могут содержаться команды вроде «обновить прогресс-бар» или вообще что угодно.

exhu
()
Ответ на: комментарий от exhu

о, точно. спасибо за объяснение. это реально классный способ. поюзаю :)

waker ★★★★★
()
Ответ на: комментарий от monk

GTK — жуть. Я стопудово уверен, что если мне еще одну гуевину нужно будет делать, она будет либо на чистом OpenGL, либо на motif или чем-нибудь подобном.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от monk

Лучше по всем статьям: и проще, и симпатичней, и глюков значительно меньше. А GTK уже как раковая опухоль какая-то.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от drSchur

Была какая-то библиотека графических штуковин для опенгля.

Eddy_Em ☆☆☆☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.