Nimbin2git.christianimmanuel.de / Games / strichmaennchen / glfuncs.h

strichmaennchen git · main

git clone https://git.christianimmanuel.de/games/strichmaennchen.gitwget https://git.christianimmanuel.de/games/strichmaennchen/archive/strichmaennchen.tar.gz
glfuncs.h 2.3 KB · 50 lines raw
#ifndef GLFUNCS_H
#define GLFUNCS_H

#include <SDL3/SDL.h>
#include <SDL3/SDL_opengl.h>

/* Declare OpenGL function pointers */
extern PFNGLCREATESHADERPROC           glCreateShader;
extern PFNGLSHADERSOURCEPROC           glShaderSource;
extern PFNGLCOMPILESHADERPROC          glCompileShader;
extern PFNGLCREATEPROGRAMPROC          glCreateProgram;
extern PFNGLATTACHSHADERPROC           glAttachShader;
extern PFNGLLINKPROGRAMPROC            glLinkProgram;
extern PFNGLUSEPROGRAMPROC             glUseProgram;
extern PFNGLGENVERTEXARRAYSPROC        glGenVertexArrays;
extern PFNGLBINDVERTEXARRAYPROC        glBindVertexArray;
extern PFNGLGENBUFFERSPROC             glGenBuffers;
extern PFNGLBINDBUFFERPROC             glBindBuffer;
extern PFNGLBUFFERDATAPROC             glBufferData;
extern PFNGLVERTEXATTRIBPOINTERPROC    glVertexAttribPointer;
extern PFNGLENABLEVERTEXATTRIBARRAYPROC glEnableVertexAttribArray;
extern PFNGLDELETESHADERPROC           glDeleteShader;
extern PFNGLDELETEPROGRAMPROC          glDeleteProgram;
extern PFNGLGETUNIFORMLOCATIONPROC     glGetUniformLocation;
extern PFNGLUNIFORMMATRIX4FVPROC       glUniformMatrix4fv;
extern PFNGLDELETEBUFFERSPROC          glDeleteBuffers;
extern PFNGLDELETEVERTEXARRAYSPROC     glDeleteVertexArrays;
extern PFNGLUNIFORM3FVPROC             glUniform3fv;
extern PFNGLUNIFORM3FPROC              glUniform3f;
extern PFNGLGETPROGRAMIVPROC           glGetProgramiv;
extern PFNGLGETPROGRAMINFOLOGPROC      glGetProgramInfoLog;
extern PFNGLGETSHADERIVPROC            glGetShaderiv;
extern PFNGLGETSHADERINFOLOGPROC       glGetShaderInfoLog;
extern PFNGLGETSHADERSOURCEPROC        glGetShaderSource;
extern PFNGLUNIFORM2FPROC              glUniform2f;
extern PFNGLUNIFORM1FPROC              glUniform1f;
extern PFNGLUNIFORM1IPROC              glUniform1i;
extern PFNGLUNIFORM4FPROC              glUniform4f;
extern PFNGLDISABLEVERTEXATTRIBARRAYPROC glDisableVertexAttribArray;
extern PFNGLGENFRAMEBUFFERSPROC        glGenFramebuffers;
extern PFNGLBINDFRAMEBUFFERPROC        glBindFramebuffer;
extern PFNGLCHECKFRAMEBUFFERSTATUSPROC glCheckFramebufferStatus;
extern PFNGLFRAMEBUFFERTEXTURE2DPROC   glFramebufferTexture2D;
extern PFNGLDELETEFRAMEBUFFERSPROC     glDeleteFramebuffers;


/* Function to load all symbols */
void Glfuncs_load(void);

#endif