Returns the address of the GL function proc , or nil if the function is not found. If the GL library is loaded at runtime, with SDL_GL_LoadLibrary , then all GL functions must be retrieved this way. Usually this is used to retrieve function pointers to OpenGL extensions.
typedef void (*GL_ActiveTextureARB_Func)(unsigned int);
GL_ActiveTextureARB_Func glActiveTextureARB_ptr = 0;
int has_multitexture = 1;
.
.
.
// Get function pointer
glActiveTextureARB_ptr := (GL_ActiveTextureARB_Func) SDL_GL_GetProcAddress("glActiveTextureARB");
// Check for a valid function ptr
if ( glActiveTextureARB_ptr = nil ) then
begin
fprintf(stderr, "Multitexture Extensions not present.\n");
has_multitexture := 0;
end;
.
.
.
.
if ( has_multitexture ) then
begin
glActiveTextureARB_ptr(GL_TEXTURE0_ARB);
.
.
end
else
begin
.
.
end;