Ресурсы по разработке графической системы? [закрыто]

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

В настоящее время мое самое большое влияние 3DBuzz.com «s C ++ / OpenGL СУДС (Video Training Modules). Хотя они очень хороши, они охватывают большую область графического программирования, поэтому лишь поверхностно изучите GUI-программирование.

Этот вопрос относится к « Как мне сделать графический интерфейс? », Где также есть грубая схема моей текущей структуры.

Любой ответ будет оценен.

Изменить: я только что прочитал некоторые из ответов и заметил, что я пропустил некоторые моменты. Я должен был напечатать вопрос дважды, поскольку я поймал не ту кнопку и потерял ее.

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

Редактировать 2: я думаю, что некоторые из вас упускают суть, я не знаю, что использовать существующую систему графического интерфейса, я хочу построить.

Qt в его нынешнем виде не переносим на PSP, не говоря уже о перегибах такой задачи.

Тем не менее, я решил создать IM-GUI и начал прототипировать код.

17.08.2008 12:50:15
9 ОТВЕТОВ
РЕШЕНИЕ

Я бы не использовал OpenGL для GUI, если вы не планируете аппаратное ускорение и / или 3D-эффекты, которые, как вы думаете, вы не получите с более традиционным инструментарием GUI (например, Qt , wxWidgets , GTK и т. Д.). Если вам нужен простой простой графический интерфейс для размещения вашей графики OpenGL, тогда FLTK - хороший выбор. В противном случае, для визуализации графического интерфейса непосредственно в OpenGL есть библиотеки, подобные графическому интерфейсу Crazy Eddie, которые делают именно это и предоставляют множество виджетов с поддержкой скинов, которые вам не придется заново изобретать. Окно и контекст OpenGL могут быть предоставлены с помощью переносимой библиотеки, такой как SDL .

РЕДАКТИРОВАТЬ : Теперь, когда я вернулся и посмотрел ваш другой пост, я думаю, что я лучше понимаю, что вы спрашиваете. Для графического интерфейса во встроенной системе, такой как Nintendo DS, я хотел бы рассмотреть возможность использования графического интерфейса «немедленный режим». У Jari Komppa есть хорошее руководство по ним , но вы можете использовать более объектно-ориентированный подход с C ++, чем код C, который он представляет.

2
23.05.2017 10:30:43

Посмотрите на Qt . Это библиотека с открытым исходным кодом для создания GUI. В отличие от Swing в Java, он предполагает много вещей, поэтому действительно легко создавать функциональные графические интерфейсы. Например, текстовое поле предполагает, что вам нужно контекстное меню, когда вы щелкаете по нему правой кнопкой мыши, копируете, вставляете, выбираете все и т. Д. Документация также очень хорошая.

1
12.09.2016 08:44:43

http://www.fox-toolkit.org содержит ссылку на API, если вы ищете, как работать с конкретной платформой. Или вас больше интересовала общая теория или что-то более похожее на то, как делать низкоуровневые вещи самостоятельно?

1
17.08.2008 13:03:00

Для получения дополнительной информации о графическом интерфейсе «немедленного режима» я могу порекомендовать форумы Molly Rocket . Есть хорошая видеопрезентация мышления за IM-GUI, наряду с большим количеством обсуждений.

Недавно я взломал очень быструю систему IM-GUI, основанную на презентации на странице Яри, и в моем случае, где я действительно просто хотел иметь возможность получить пару кнопок и блоков на экране и более или менее просто жесткий код Реакция на входные данные, похоже, была правильной вещью, вместо того, чтобы переходить на более полноценную GUI-архитектуру. (Это было в DirectX-приложении, поэтому количество вариантов было довольно ограниченным).

1
18.08.2008 10:19:23

Я буду вторым Qt. Он кроссплатформенный, и мне было гораздо проще работать со встроенным графическим интерфейсом Visual Studio. Он имеет двойную лицензию, поэтому, если вы не хотите, чтобы ваш код был GPL, вы могли бы вместо этого приобрести лицензию.

0
18.08.2008 13:23:17

Я посмотрел видео от Молли Ракеты и просмотрел кэшированные уроки Яри Комппы.

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

Теперь новый вопрос я могу только за исключением одного ответа. :(

Еще раз спасибо Monjardin и Dooz, ура.

thing2k

0
19.08.2008 11:19:04

Я бы посмотрел на GLAM и GLGooey

0
19.08.2008 11:47:09

Один из самых быстрых способов - использовать python с привязкой графического интерфейса, например, pyQt, PyFLTK, tkinter, wxPython или даже через pygame, использующий SDL.

Это легко быстро и независимо от платформы. Также управление пакетами непобедимо.

Увидеть:

1
19.08.2008 13:49:31

Для такой платформы, как PSP, я бы немного беспокоился о производительности решения IM GUI. В традиционном типе решения с сохраненным режимом, когда вы создаете элемент управления, вы также можете создать буфер вершин / список отображения или что вам нужно для его рендеринга. Мне кажется, что при немедленном решении режима вам нужно будет динамически воссоздавать это каждый кадр.

Вы можете не заботиться об этом, если вы делаете только несколько кнопок, или это не будет использоваться в игре (при условии, что вы создаете игру), но, особенно если у вас достаточно текста, стоимость рендеринга может начать болеть, если вы не можете найти способ кэшировать списки отображения как-то.

1
19.08.2008 18:14:50