Сведения о вопросе

Oleksandr

12:58, 29th August, 2020

Теги

Графический ресурсы развития системы?

Просмотров: 601   Ответов: 9

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

В настоящее время мое самое большое влияние 3DBuzz.com с C++/OpenGL VTMs (видео учебных модулей). Хотя они очень хороши, они охватывают большую область графического программирования, поэтому только скользят по поверхности программирования GUI.

Этот вопрос относится к " как я могу сделать GUI? ", где есть также грубый набросок моей нынешней структуры.

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

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

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

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

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

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



  Сведения об ответе

darknet

21:06, 1st October, 2020

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

EDIT: теперь, когда я вернулся и посмотрел на ваш другой пост , я думаю, что лучше понимаю, о чем вы просите. Для GUI на встроенной системе, такой как Nintendo DS, я бы рассмотрел использование "immediate mode" GUI. У Яри Комппы есть хороший учебник о них, но вы можете использовать более объектно-ориентированный подход с C++, чем код C, который он представляет.


  Сведения об ответе

COOL

18:36, 19th August, 2020

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

Его легко быстро и независимо от платформы. Кроме того, управление пакетами является непревзойденным.

Видеть:


  Сведения об ответе

park

15:30, 21st August, 2020

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

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


  Сведения об ответе

VCe znayu

03:05, 21st August, 2020

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


  Сведения об ответе

ASSembler

02:45, 19th August, 2020

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


  Сведения об ответе

PROGA

16:17, 3rd August, 2020

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

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


  Сведения об ответе

+-*/

02:21, 2nd August, 2020

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

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

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

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

thing2k


  Сведения об ответе

SILA

02:55, 6th August, 2020

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


  Сведения об ответе

nYU

21:45, 22nd August, 2020

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


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться