DOKK / manpages / debian 12 / allegro5-doc / al_get_opengl_extension_list.3alleg5.en
al_get_opengl_extension_list(3alleg5) al_get_opengl_extension_list(3alleg5)

al_get_opengl_extension_list - Allegro 5 API

#include <allegro5/allegro_opengl.h>
ALLEGRO_OGL_EXT_LIST *al_get_opengl_extension_list(void)
    

Returns the list of OpenGL extensions supported by Allegro, for the given display.

Allegro will keep information about all extensions it knows about in a structure returned by al_get_opengl_extension_list.

For example:

if (al_get_opengl_extension_list()->ALLEGRO_GL_ARB_multitexture) {

//use it }

The extension will be set to true if available for the given display and false otherwise. This means to use the definitions and functions from an OpenGL extension, all you need to do is to check for it as above at run time, after acquiring the OpenGL display from Allegro.

Under Windows, this will also work with WGL extensions, and under Unix with GLX extensions.

In case you want to manually check for extensions and load function pointers yourself (say, in case the Allegro developers did not include it yet), you can use the al_have_opengl_extension(3alleg5) and al_get_opengl_proc_address(3alleg5) functions instead.

Note: the exact extensions exposed depend on how Allegro was compiled. It is recommended to use al_have_opengl_extension(3alleg5) and al_get_opengl_proc_address(3alleg5) for the most stable experience.

Allegro reference manual