Любопытство: фоновые C ++ окна. Разница между типом SFML / SDL и типом Qt (GUI) - PullRequest
0 голосов
/ 20 февраля 2012

Мне было интересно, в чем разница между окнами, которые будут отображать изображения на экране (например, SDL, SFML или OpenGL) и классическим окном GUI (с серым фоном по умолчанию), где вы можете реализовать кнопки, как в Qt для C ++ или AWT / Swing в Java?

Что происходит в фоновом коде? Они того же типа? Есть ли слой рендеринга поверх графического окна, позволяющий отображать такие изображения?

1 Ответ

1 голос
/ 22 февраля 2012

Ну, во-первых, это разные API. SDL и SFML - это библиотеки, предназначенные для создания игр и, возможно, других приложений. OpenGL - это графический API, а не полный набор библиотек.

Обратите внимание, что SFML в значительной степени использует OpenGL для рендеринга в окно. Фактическое окно само по себе создается с помощью специальных функций платформы. Win32 API используется для окон, а оконная система X11 обычно используется в Linux.

«Классическое окно с графическим интерфейсом» - это в значительной степени специфичные для платформы API. Различия в фоновом коде на самом деле просто определяются целью API. Обратите внимание, что в конце строки Qt / SFML / SDL все переходят к API конкретной платформы. OpenGL даже требует от вас взаимодействия с API конкретной платформы. SFML / SDL / QT, по сути, выполняют работу более низкого уровня за вас.

Я надеюсь, что дал то, что вы ищете, потому что у этого вопроса действительно широкий спектр ответов.

...