Sobre el proyecto

Elemental es una biblioteca de bajo nivel diseñada para la programación de GPU moderna, que ofrece una API de C unificada que abstrae el código repetitivo de Direct3D 12, Vulkan y Metal. En lugar de simplificar los conceptos de GPU, se centra en simplificar el acceso a ellos, manteniendo los recursos, la memoria, las colas y los pipelines visibles para el desarrollador. Las capacidades clave incluyen: - Gestión multiplataforma del ciclo de vida de la aplicación y de las ventanas - Manejo de entrada para teclado, ratón, gamepad y táctil - Colas de comandos de gráficos y cómputo, listas de comandos y swap chains - Heaps de GPU, recursos y acceso a recursos bindless - Sincronización y barreras de recursos - Soporte para pipelines de gráficos/cómputo, render passes, compute shaders, mesh shaders y ray tracing - Herramientas de compilación de shaders HLSL Está destinada al desarrollo de renderizadores personalizados, motores de juegos, experimentos de renderizado impulsados por GPU, simulaciones y proyectos de cómputo de propósito general. La biblioteca es compatible con Windows (D3D12, Vulkan), Linux (Vulkan/Wayland), macOS (Metal) e iOS (Metal).