Repolode
bkaradzic

bkaradzic/bgfx

Кроссплатформенная библиотека рендеринга на C++, которая абстрагирует Direct3D, Metal, OpenGL, Vulkan и WebGL, чтобы вы могли использовать собственный движок.

Звёзды
17,626
Форки
2,162
Открытые issues
66
Последний коммит
вчера

Что это?

bgfx — библиотека рендеринга, которая располагается между приложением и графическим API. Вместо того чтобы писать отдельный код для Direct3D 11/12, Metal, OpenGL, OpenGL ES, Vulkan и WebGL, разработчики отправляют вызовы отрисовки через единый интерфейс, а bgfx перенаправляет их в бэкенд, доступный на целевой платформе. Библиотека рассчитана на подход «используйте собственный движок или фреймворк»: она отвечает за рендеринг, но не предоставляет полноценный игровой движок с управлением сценами или конвейерами обработки ресурсов.

Библиотека поддерживает Windows, Linux, macOS, iOS, tvOS, Android, Raspberry Pi и WebAssembly через Emscripten. Также доступны биндинги для C#, Python, Rust, Zig, Java, Go и Lua. Проект распространяется по лицензии BSD-2-Clause и используется в нескольких выпущенных играх и инструментах, например во фреймворке HARFANG 3D и игре Crypt of the NecroDancer.

Ключевые возможности

  • 01Единый API для Direct3D 11/12, Metal, OpenGL, OpenGL ES, Vulkan и WebGL.
  • 02Работает на настольных, мобильных, консольных платформах с соответствующей лицензией и в вебе, включая Wasm/Emscripten.
  • 03Предоставляет биндинги для C#, Python, Rust, Zig, Java, Go, Lua и других языков.
  • 04Предназначена для встраивания в существующие движки и фреймворки, а не для их замены.
  • 05Распространяется по лицензии BSD-2-Clause.

Сценарии использования

  • Добавление поддержки нескольких графических бэкендов в собственный игровой движок или фреймворк приложений.
  • Создание 3D-инструмента или приложения для визуализации, которое должно работать как на компьютерах, так и на мобильных устройствах.
  • Создание графического слоя для контента в браузере через WebGL или WebAssembly.
  • Прототипирование кода рендеринга на языке, для которого уже есть биндинги bgfx.

Быстрый старт

  1. 1

    Прочитайте официальное руководство по сборке для вашей платформы и компилятора

Что важно знать

  • Это библиотека для рендеринга, а не полноценный движок, поэтому вам понадобится собственный движок или фреймворк.
  • Бэкенд GNM доступен только разработчикам PS4 с лицензией.

В подборках

Темы

Частые вопросы

Что такое bgfx?
Кроссплатформенная библиотека рендеринга на C++, которая абстрагирует Direct3D, Metal, OpenGL, Vulkan и WebGL, чтобы вы могли использовать собственный движок. bgfx — библиотека рендеринга, которая располагается между приложением и графическим API. Вместо того чтобы писать отдельный код для Direct3D 11/12, Metal, OpenGL, OpenGL ES, Vulkan и WebGL, разработчики отправляют вызовы отрисовки через единый интерфейс, а bgfx перенаправляет их в бэкенд, доступный на целевой платформе. Библиотека рассчитана на подход «используйте собственный движок или фреймворк»: она отвечает за рендеринг, но не предоставляет полноценный игровой движок с управлением сценами или конвейерами обработки ресурсов.
bgfx можно использовать бесплатно? Какая у него лицензия?
bgfx распространяется с открытым исходным кодом под лицензией BSD-2-Clause. Перед использованием в коммерческих продуктах проверьте условия лицензии.
bgfx всё ещё поддерживается?
Активно поддерживается. Последний коммит в bgfx — 6 нояб. 2026 г..
Для чего можно использовать bgfx?
Добавление поддержки нескольких графических бэкендов в собственный игровой движок или фреймворк приложений. Создание 3D-инструмента или приложения для визуализации, которое должно работать как на компьютерах, так и на мобильных устройствах. Создание графического слоя для контента в браузере через WebGL или WebAssembly. Прототипирование кода рендеринга на языке, для которого уже есть биндинги bgfx.
Как установить bgfx?
Прочитайте официальное руководство по сборке для вашей платформы и компилятора
Где скачать bgfx?
Исходный код и инструкции по установке — на GitHub: https://github.com/bkaradzic/bgfx

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Движок физически корректного рендеринга в реальном времени для Android, iOS, Linux, macOS, Windows и WebGL2, рассчитанный на компактность и эффективность на Android.

20,7 тыс.+32 за неделю2,3 тыс.C++Apache-2.0Активно поддерживаетсяОбновлён 18 часов назад

OGRE — модульный движок рендеринга на C++, который объединяет Vulkan, Direct3D и OpenGL для создания 3D-приложений на C++ и Python.

4,7 тыс.+8 за неделю1 тыс.C++MITАктивно поддерживаетсяОбновлён 10 часов назад

Модульная библиотека шейдерных функций для GLSL, HLSL, Metal, WGSL, WebGL и CUDA: в каждом файле — одна функция для повторного использования.

3,5 тыс.+3 за неделю226GLSLOtherАктивно поддерживаетсяОбновлён 14 дней назад