Об этом проекте

Elemental — это низкоуровневая библиотека, разработанная для современного программирования GPU, предлагающая унифицированный C API, который абстрагирует шаблонный код Direct3D 12, Vulkan и Metal. Вместо того чтобы упрощать концепции GPU, она фокусируется на упрощении доступа к ним, оставляя ресурсы, память, очереди и конвейеры видимыми для разработчика. Ключевые возможности включают: - Кроссплатформенное управление жизненным циклом приложения и окнами - Обработка ввода с клавиатуры, мыши, геймпада и сенсорного экрана - Очереди команд графики и вычислений, списки команд и swap chains - GPU heaps, ресурсы и bindless-доступ к ресурсам - Синхронизация и барьеры ресурсов - Поддержка графических/вычислительных конвейеров, рендер-пассов, вычислительных шейдеров, mesh-шейдеров и трассировки лучей - Инструменты компиляции шейдеров HLSL Библиотека предназначена для разработки собственных рендереров, игровых движков, экспериментов по GPU-driven рендерингу, симуляций и проектов общего назначения (GPGPU). Библиотека поддерживает Windows (D3D12, Vulkan), Linux (Vulkan/Wayland), macOS (Metal) и iOS (Metal).