Кроссплатформенный Java-фреймворк для разработки игр на OpenGL ES под десктопы, Android, веб и iOS.
ocornut/imgui
Dear ImGui — компактная библиотека GUI для C++ с минимумом зависимостей и парадигмой immediate mode, предназначенная для отладочных интерфейсов, инструментов и игровых движков.
- Звёзды
- 76,754
- Форки
- 12,077
- Открытые issues
- 1,222
- Последний коммит
- 5 дней назад
Что это?
Dear ImGui — библиотека графического интерфейса для C++, использующая парадигму immediate mode. Вместо создания и хранения дерева виджетов приложение каждый кадр вызывает функции вроде Button или SliderFloat, а библиотека сообщает, взаимодействовал ли с ними пользователь. Ядро состоит из нескольких исходных файлов, не зависящих от платформы: их можно добавить в существующий проект без специального процесса сборки.
Вместо непосредственной отрисовки через графический API Dear ImGui выдаёт буферы вершин и короткий список вызовов отрисовки, которые приложение обрабатывает собственным конвейером. В репозитории есть бэкенды для DirectX, Metal, OpenGL, Vulkan, WebGPU и других API, а также платформенные слои для GLFW, SDL, Win32 и других платформ. Библиотека предназначена для инструментов создания контента, отладчиков, профилировщиков и редакторов движков, а не для пользовательских приложений; она не поддерживает полноценную интернационализацию и функции доступности.
Ключевые возможности
- 01API в стиле immediate mode: интерфейс описывается в коде каждый кадр, состояние виджетов не нужно хранить и синхронизировать
- 02Выдаёт буферы вершин и сгруппированные вызовы отрисовки, поэтому рендерер не зависит от библиотеки
- 03Ядро состоит из нескольких автономных исходных файлов и не имеет внешних зависимостей
- 04Официальные бэкенды для множества графических API и платформ, включая Win32, GLFW, SDL и Android
- 05Встроенное демонстрационное окно с множеством виджетов, графиков и вариантов компоновки
Сценарии использования
- Добавление отладочных панелей или представлений профилировщика в игровой движок либо приложение для 3D-графики в реальном времени
- Создание инструментов для работы с контентом или проверки данных, требующих быстрой итерации
- Создание встроенного интерфейса для настройки переменных на консолях или встраиваемых системах с нестандартными возможностями ОС
Быстрый старт
- 1
Добавьте в проект основные файлы imgui*.cpp и imgui*.h из корневой папки репозитория
- 2
Выберите в папке backends/ бэкенды, подходящие для вашего графического API и платформы
- 3
Вызовите ImGui::ShowDemoWindow(), чтобы посмотреть примеры возможностей; исходный код находится в imgui_demo.cpp
Что важно знать
- Полная интернационализация не поддерживается, включая текст с направлением справа налево и двунаправленный текст.
- Функции доступности не поддерживаются.
- Библиотека предназначена для интерфейсов отладки, инструментов и игровых движков, а не для обычных пользовательских интерфейсов.
Темы
Частые вопросы
- Что такое imgui?
- Dear ImGui — компактная библиотека GUI для C++ с минимумом зависимостей и парадигмой immediate mode, предназначенная для отладочных интерфейсов, инструментов и игровых движков. Dear ImGui — библиотека графического интерфейса для C++, использующая парадигму immediate mode. Вместо создания и хранения дерева виджетов приложение каждый кадр вызывает функции вроде Button или SliderFloat, а библиотека сообщает, взаимодействовал ли с ними пользователь. Ядро состоит из нескольких исходных файлов, не зависящих от платформы: их можно добавить в существующий проект без специального процесса сборки.
- imgui можно использовать бесплатно? Какая у него лицензия?
- imgui распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- imgui всё ещё поддерживается?
- Активно поддерживается. Последний коммит в imgui — 16 окт. 2026 г..
- Для чего можно использовать imgui?
- Добавление отладочных панелей или представлений профилировщика в игровой движок либо приложение для 3D-графики в реальном времени Создание инструментов для работы с контентом или проверки данных, требующих быстрой итерации Создание встроенного интерфейса для настройки переменных на консолях или встраиваемых системах с нестандартными возможностями ОС
- Как установить imgui?
- Добавьте в проект основные файлы imgui*.cpp и imgui*.h из корневой папки репозитория Выберите в папке backends/ бэкенды, подходящие для вашего графического API и платформы Вызовите ImGui::ShowDemoWindow(), чтобы посмотреть примеры возможностей; исходный код находится в imgui_demo.cpp
- Где скачать imgui?
- Исходный код и инструкции по установке — на GitHub: https://github.com/ocornut/imgui
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Фреймворк .NET для создания кроссплатформенных 2D- и 3D-игр на C#, представляющий собой переосмысление снятого с поддержки Microsoft XNA Framework.
Простой 2D-движок для языка программирования D со встроенной физикой, анимацией, тайловыми картами и диалогами.
Ретроигровой движок для Python, позволяющий создавать пиксельные игры с фиксированной палитрой и экраном низкого разрешения.
Многопоточная библиотека на C++ для симуляции твёрдых тел и обнаружения столкновений в играх и VR-приложениях.
Простой 2D-движок для Go с поддержкой настольных, мобильных платформ, WebAssembly и игровых консолей.