Об этом проекте
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).
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.