Una biblioteca de renderizado C++ multiplataforma que abstrae Direct3D, Metal, OpenGL, Vulkan y WebGL para que puedas integrarla en tu propio motor.
Dav1dde/glad
Generador de loaders que crea bindings para C/C++ y otros lenguajes para OpenGL, Vulkan, EGL, GLX y WGL a partir de las especificaciones oficiales.
- Estrellas
- 4,629
- Forks
- 514
- Issues abiertos
- 33
- Último commit
- el mes pasado
¿Qué es?
glad genera código de loader para API de gráficos como OpenGL, OpenGL ES, Vulkan, EGL, GLX y WGL. La mayoría de estas funciones se exponen en tiempo de ejecución mediante los drivers gráficos, en lugar de a través de bibliotecas enlazadas, así que las aplicaciones necesitan un loader que busque los punteros a función antes de poder llamarlas. glad genera ese loader a partir de las especificaciones oficiales de las API; puedes elegir la versión de la API y las extensiones que necesitas, y obtener los archivos de cabecera y de código fuente correspondientes.
El proyecto es un generador que cuenta con un servicio web en gen.glad.sh, donde puedes seleccionar la API, la versión, el perfil y las extensiones, y descargar los archivos generados. Hay salidas para varios lenguajes; el README incluye ejemplos de C, C++ y Rust, y señala que algunos lenguajes solo están disponibles en el generador glad1 anterior. Un plugin de la comunidad añade compatibilidad con Fortran.
Los ejemplos abarcan bibliotecas de gestión de ventanas habituales, como GLFW y SDL2/SDL3, además de configuraciones directas con GLX, WGL y EGL.
Funciones clave
- 01Genera loaders para OpenGL, OpenGL ES, Vulkan, EGL, GLX y WGL.
- 02Se basa en las especificaciones oficiales de las API, con versiones y extensiones seleccionables.
- 03Está disponible como servicio web para elegir opciones y descargar los archivos generados.
- 04Incluye ejemplos de C/C++ y Rust, y ofrece bindings para otros lenguajes mediante plugins.
Casos de uso
- Configurar un renderer de OpenGL o Vulkan en una aplicación de C o C++ con GLFW o SDL.
- Generar un loader fijado a una versión concreta de OpenGL y a un conjunto de extensiones específico.
- Escribir un programa de gráficos en Rust que necesite punteros a función de GL.
Inicio rápido
- 1
Genera los archivos de loader que necesitas con el servicio web glad2
- 2
Incluye el encabezado generado (por ejemplo, glad/gl.h) y llama a gladLoadGL con el loader de tu biblioteca de gestión de ventanas
Antes de usarlo
- Algunos lenguajes solo están disponibles en el generador anterior glad1.
- Esta es la rama 2.0, que cambia la API con respecto a las versiones anteriores.
- La licencia no se ha podido identificar con claridad, y algunas especificaciones de Khronos incluidas están sujetas a Apache 2.0.
Temas
Preguntas frecuentes
- ¿Qué es glad?
- Generador de loaders que crea bindings para C/C++ y otros lenguajes para OpenGL, Vulkan, EGL, GLX y WGL a partir de las especificaciones oficiales. glad genera código de loader para API de gráficos como OpenGL, OpenGL ES, Vulkan, EGL, GLX y WGL. La mayoría de estas funciones se exponen en tiempo de ejecución mediante los drivers gráficos, en lugar de a través de bibliotecas enlazadas, así que las aplicaciones necesitan un loader que busque los punteros a función antes de poder llamarlas. glad genera ese loader a partir de las especificaciones oficiales de las API; puedes elegir la versión de la API y las extensiones que necesitas, y obtener los archivos de cabecera y de código fuente correspondientes.
- ¿glad es gratuito? ¿Qué licencia tiene?
- glad es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿glad sigue mantenido?
- Actualizado en los últimos 6 meses. El último commit de glad fue el 28 sept 2026.
- ¿Para qué puedo usar glad?
- Configurar un renderer de OpenGL o Vulkan en una aplicación de C o C++ con GLFW o SDL. Generar un loader fijado a una versión concreta de OpenGL y a un conjunto de extensiones específico. Escribir un programa de gráficos en Rust que necesite punteros a función de GL.
- ¿Cómo se instala glad?
- Genera los archivos de loader que necesitas con el servicio web glad2 Incluye el encabezado generado (por ejemplo, glad/gl.h) y llama a gladLoadGL con el loader de tu biblioteca de gestión de ventanas
- ¿Dónde consigo glad?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Dav1dde/glad
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
OGRE es un motor de renderizado modular en C++ que abstrae Vulkan, Direct3D y OpenGL para crear aplicaciones 3D en C++ y Python.
Framework de UI multiplataforma en C++17, con backends de ventana GLFW/SDL2 y renderizado OpenGL/Vulkan, basado en un DSL declarativo.
Biblioteca 3D multiplataforma en C++20 con una API al estilo de three.js, backends de OpenGL y Vulkan, bindings de Python y simulación de física y sensores.
Genera SDK de cliente, esqueletos de servidor y documentación en decenas de lenguajes y frameworks a partir de especificaciones OpenAPI (v2 y v3).
Motor de renderizado en tiempo real basado en física para Android, iOS, Linux, macOS, Windows y WebGL2, diseñado para ser pequeño y eficiente en Android.