mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-22 08:41:41 +01:00
65 lines
2.5 KiB
C
65 lines
2.5 KiB
C
#pragma once
|
|
#include <GL/gl.h>
|
|
#include <GL/glu.h>
|
|
#include "glext.h"
|
|
|
|
void OpenGL_Init();
|
|
BOOL OpenGL_ExtExists(char *ext);
|
|
GLuint OpenGL_BuildProgram(const GLchar **vertSource, const GLchar **fragSource);
|
|
|
|
// Program
|
|
extern PFNGLCREATEPROGRAMPROC glCreateProgram;
|
|
extern PFNGLDELETEPROGRAMPROC glDeleteProgram;
|
|
extern PFNGLUSEPROGRAMPROC glUseProgram;
|
|
extern PFNGLATTACHSHADERPROC glAttachShader;
|
|
extern PFNGLDETACHSHADERPROC glDetachShader;
|
|
extern PFNGLLINKPROGRAMPROC glLinkProgram;
|
|
extern PFNGLGETPROGRAMIVPROC glGetProgramiv;
|
|
extern PFNGLGETSHADERINFOLOGPROC glGetShaderInfoLog;
|
|
extern PFNGLGETUNIFORMLOCATIONPROC glGetUniformLocation;
|
|
extern PFNGLUNIFORM1IPROC glUniform1i;
|
|
extern PFNGLUNIFORM1IVPROC glUniform1iv;
|
|
extern PFNGLUNIFORM2IVPROC glUniform2iv;
|
|
extern PFNGLUNIFORM3IVPROC glUniform3iv;
|
|
extern PFNGLUNIFORM4IVPROC glUniform4iv;
|
|
extern PFNGLUNIFORM1FPROC glUniform1f;
|
|
extern PFNGLUNIFORM1FVPROC glUniform1fv;
|
|
extern PFNGLUNIFORM2FVPROC glUniform2fv;
|
|
extern PFNGLUNIFORM3FVPROC glUniform3fv;
|
|
extern PFNGLUNIFORM4FVPROC glUniform4fv;
|
|
extern PFNGLUNIFORMMATRIX4FVPROC glUniformMatrix4fv;
|
|
extern PFNGLGETATTRIBLOCATIONPROC glGetAttribLocation;
|
|
extern PFNGLVERTEXATTRIB1FPROC glVertexAttrib1f;
|
|
extern PFNGLVERTEXATTRIB1FVPROC glVertexAttrib1fv;
|
|
extern PFNGLVERTEXATTRIB2FVPROC glVertexAttrib2fv;
|
|
extern PFNGLVERTEXATTRIB3FVPROC glVertexAttrib3fv;
|
|
extern PFNGLVERTEXATTRIB4FVPROC glVertexAttrib4fv;
|
|
extern PFNGLENABLEVERTEXATTRIBARRAYPROC glEnableVertexAttribArray;
|
|
extern PFNGLDISABLEVERTEXATTRIBARRAYPROC glDisableVertexAttribArray;
|
|
extern PFNGLBINDATTRIBLOCATIONPROC glBindAttribLocation;
|
|
extern PFNGLGETACTIVEUNIFORMPROC glGetActiveUniform;
|
|
|
|
// Shader
|
|
extern PFNGLCREATESHADERPROC glCreateShader;
|
|
extern PFNGLDELETESHADERPROC glDeleteShader;
|
|
extern PFNGLSHADERSOURCEPROC glShaderSource;
|
|
extern PFNGLCOMPILESHADERPROC glCompileShader;
|
|
extern PFNGLGETSHADERIVPROC glGetShaderiv;
|
|
|
|
// VBO
|
|
extern PFNGLGENBUFFERSPROC glGenBuffers;
|
|
extern PFNGLBINDBUFFERPROC glBindBuffer;
|
|
extern PFNGLBUFFERDATAPROC glBufferData;
|
|
extern PFNGLVERTEXATTRIBPOINTERPROC glVertexAttribPointer;
|
|
|
|
extern PFNGLGENBUFFERSARBPROC glGenBuffersARB;
|
|
extern PFNGLBINDBUFFERARBPROC glBindBufferARB;
|
|
extern PFNGLBUFFERDATAARBPROC glBufferDataARB;
|
|
extern PFNGLDELETEBUFFERSARBPROC glDeleteBuffersARB;
|
|
extern PFNGLMAPBUFFERARBPROC glMapBufferARB;
|
|
extern PFNGLUNMAPBUFFERARBPROC glUnmapBufferARB;
|
|
|
|
extern PFNGLACTIVETEXTUREARBPROC glActiveTexture;
|
|
extern PFNGLCLIENTACTIVETEXTUREPROC glClientActiveTexture;
|
|
extern PFNGLMULTITEXCOORD2FPROC glMultiTexCoord2f;
|