Найти тему
Проект OpenNet

Facebook открыл код графической библиотеки IGL

Facebook опубликовал код новой графической библиотеки IGL (Intermediate Graphics Library), предоставляющей универсальный низкоуровневый API для управления GPU. Предложенный API охватывает типовую функциональность GPU и позволяет создавать кросс-платформенные приложения, способные работать поверх графических API OpenGL, Metal и Vulkan на системах с Android, iOS, Linux, macOS и Windows. Библиотека также может применяться для отрисовки в Web с использованием WebGL, при компиляции приложения в промежуточный код WebAssembly. Код библиотеки написан на языке С++ и распространяется под лицензией MIT.

Для отрисовки предоставляются бэкенды для API Metal 2+, OpenGL 2.x, OpenGL 3.1+, OpenGL ES 2.0+, Vulkan 1.1 и WebGL 2.0. Библиотека подходит для разработки игр, систем 3D-моделирования и любых других проектов, требующих поддержки высококачественной графики. Код IGL оптимизирован для достижения максимальной производительности даже при работе со сложными и детализированными моделями.

Структура API разработана с оглядкой на простоту использования и реализует типовые концепции, понятные большинству разработчиков, знакомых с одним из графических API. По уровню абстракций IGL близок к Vulkan и WebGPU, но при этом избавлен от привязанной к конкретным движкам специфики. Библиотека поддерживает подключение расширений, при помощи которых можно легко интегрировать дополнительную функциональности и реализовать возникающие нестандартные потребности разработчиков.