118 lines
6.0 KiB
C
118 lines
6.0 KiB
C
#ifndef GL_SHARED_H
|
|
#define GL_SHARED_H
|
|
|
|
#define WIN32_LEAN_AND_MEAN
|
|
#include <Windows.h>
|
|
|
|
#include <gl/gl.h>
|
|
#include <gl/glext.h>
|
|
|
|
void GL_Load();
|
|
void GL_SwapBuffers(int inverval);
|
|
|
|
void GL_CheckError();
|
|
void GL_CheckErrorEx(const char* filename, int line);
|
|
void GL_CheckErrorFunction(const char* expression, const char* filename, int line);
|
|
|
|
//void GL_SetTexture( int slot, uint texture );
|
|
|
|
#define GL_CHECK_ERROR() \
|
|
GL_CheckErrorEx(__FILE__, __LINE__)
|
|
|
|
#define GL_CHECK_FUNC_ERROR(expr) \
|
|
expr; \
|
|
GL_CheckErrorFunction(#expr, __FILE__, __LINE__)
|
|
|
|
// Extensions
|
|
extern bool g_EXTFramebufferSupport;
|
|
|
|
// OpenGL 1.3 Functional
|
|
extern PFNGLACTIVETEXTUREPROC glActiveTexture;
|
|
extern PFNGLSAMPLECOVERAGEPROC glSampleCoverage;
|
|
extern PFNGLCOMPRESSEDTEXIMAGE3DPROC glCompressedTexImage3D;
|
|
extern PFNGLCOMPRESSEDTEXIMAGE2DPROC glCompressedTexImage2D;
|
|
extern PFNGLCOMPRESSEDTEXIMAGE1DPROC glCompressedTexImage1D;
|
|
extern PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC glCompressedTexSubImage3D;
|
|
extern PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC glCompressedTexSubImage2D;
|
|
extern PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC glCompressedTexSubImage1D;
|
|
extern PFNGLGETCOMPRESSEDTEXIMAGEPROC glGetCompressedTexImage;
|
|
extern PFNGLCLIENTACTIVETEXTUREPROC glClientActiveTexture;
|
|
extern PFNGLMULTITEXCOORD1DPROC glMultiTexCoord1d;
|
|
extern PFNGLMULTITEXCOORD1DVPROC glMultiTexCoord1dv;
|
|
extern PFNGLMULTITEXCOORD1FPROC glMultiTexCoord1f;
|
|
extern PFNGLMULTITEXCOORD1FVPROC glMultiTexCoord1fv;
|
|
extern PFNGLMULTITEXCOORD1IPROC glMultiTexCoord1i;
|
|
extern PFNGLMULTITEXCOORD1IVPROC glMultiTexCoord1iv;
|
|
extern PFNGLMULTITEXCOORD1SPROC glMultiTexCoord1s;
|
|
extern PFNGLMULTITEXCOORD1SVPROC glMultiTexCoord1sv;
|
|
extern PFNGLMULTITEXCOORD2DPROC glMultiTexCoord2d;
|
|
extern PFNGLMULTITEXCOORD2DVPROC glMultiTexCoord2dv;
|
|
extern PFNGLMULTITEXCOORD2FPROC glMultiTexCoord2f;
|
|
extern PFNGLMULTITEXCOORD2FVPROC glMultiTexCoord2fv;
|
|
extern PFNGLMULTITEXCOORD2IPROC glMultiTexCoord2i;
|
|
extern PFNGLMULTITEXCOORD2IVPROC glMultiTexCoord2iv;
|
|
extern PFNGLMULTITEXCOORD2SPROC glMultiTexCoord2s;
|
|
extern PFNGLMULTITEXCOORD2SVPROC glMultiTexCoord2sv;
|
|
extern PFNGLMULTITEXCOORD3DPROC glMultiTexCoord3d;
|
|
extern PFNGLMULTITEXCOORD3DVPROC glMultiTexCoord3dv;
|
|
extern PFNGLMULTITEXCOORD3FPROC glMultiTexCoord3f;
|
|
extern PFNGLMULTITEXCOORD3FVPROC glMultiTexCoord3fv;
|
|
extern PFNGLMULTITEXCOORD3IPROC glMultiTexCoord3i;
|
|
extern PFNGLMULTITEXCOORD3IVPROC glMultiTexCoord3iv;
|
|
extern PFNGLMULTITEXCOORD3SPROC glMultiTexCoord3s;
|
|
extern PFNGLMULTITEXCOORD3SVPROC glMultiTexCoord3sv;
|
|
extern PFNGLMULTITEXCOORD4DPROC glMultiTexCoord4d;
|
|
extern PFNGLMULTITEXCOORD4DVPROC glMultiTexCoord4dv;
|
|
extern PFNGLMULTITEXCOORD4FPROC glMultiTexCoord4f;
|
|
extern PFNGLMULTITEXCOORD4FVPROC glMultiTexCoord4fv;
|
|
extern PFNGLMULTITEXCOORD4IPROC glMultiTexCoord4i;
|
|
extern PFNGLMULTITEXCOORD4IVPROC glMultiTexCoord4iv;
|
|
extern PFNGLMULTITEXCOORD4SPROC glMultiTexCoord4s;
|
|
extern PFNGLMULTITEXCOORD4SVPROC glMultiTexCoord4sv;
|
|
extern PFNGLLOADTRANSPOSEMATRIXFPROC glLoadTransposeMatrixf;
|
|
extern PFNGLLOADTRANSPOSEMATRIXDPROC glLoadTransposeMatrixd;
|
|
extern PFNGLMULTTRANSPOSEMATRIXFPROC glMultTransposeMatrixf;
|
|
extern PFNGLMULTTRANSPOSEMATRIXDPROC glMultTransposeMatrixd;
|
|
|
|
// OpenGL 1.5 Functional
|
|
extern PFNGLGENQUERIESPROC glGenQueries;
|
|
extern PFNGLDELETEQUERIESPROC glDeleteQueries;
|
|
extern PFNGLISQUERYPROC glIsQuery;
|
|
extern PFNGLBEGINQUERYPROC glBeginQuery;
|
|
extern PFNGLENDQUERYPROC glEndQuery;
|
|
extern PFNGLGETQUERYIVPROC glGetQueryiv;
|
|
extern PFNGLGETQUERYOBJECTIVPROC glGetQueryObjectiv;
|
|
extern PFNGLGETQUERYOBJECTUIVPROC glGetQueryObjectuiv;
|
|
extern PFNGLBINDBUFFERPROC glBindBuffer;
|
|
extern PFNGLDELETEBUFFERSPROC glDeleteBuffers;
|
|
extern PFNGLGENBUFFERSPROC glGenBuffers;
|
|
extern PFNGLISBUFFERPROC glIsBuffer;
|
|
extern PFNGLBUFFERDATAPROC glBufferData;
|
|
extern PFNGLBUFFERSUBDATAPROC glBufferSubData;
|
|
extern PFNGLGETBUFFERSUBDATAPROC glGetBufferSubData;
|
|
extern PFNGLMAPBUFFERPROC glMapBuffer;
|
|
extern PFNGLUNMAPBUFFERPROC glUnmapBuffer;
|
|
extern PFNGLGETBUFFERPARAMETERIVPROC glGetBufferParameteriv;
|
|
extern PFNGLGETBUFFERPOINTERVPROC glGetBufferPointerv;
|
|
|
|
// GL_EXT_framebuffer_object
|
|
extern PFNGLISRENDERBUFFEREXTPROC glIsRenderbufferEXT;
|
|
extern PFNGLBINDRENDERBUFFEREXTPROC glBindRenderbufferEXT;
|
|
extern PFNGLDELETERENDERBUFFERSEXTPROC glDeleteRenderbuffersEXT;
|
|
extern PFNGLGENRENDERBUFFERSEXTPROC glGenRenderbuffersEXT;
|
|
extern PFNGLRENDERBUFFERSTORAGEEXTPROC glRenderbufferStorageEXT;
|
|
extern PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC glGetRenderbufferParameterivEXT;
|
|
extern PFNGLISFRAMEBUFFEREXTPROC glIsFramebufferEXT;
|
|
extern PFNGLBINDFRAMEBUFFEREXTPROC glBindFramebufferEXT;
|
|
extern PFNGLDELETEFRAMEBUFFERSEXTPROC glDeleteFramebuffersEXT;
|
|
extern PFNGLGENFRAMEBUFFERSEXTPROC glGenFramebuffersEXT;
|
|
extern PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC glCheckFramebufferStatusEXT;
|
|
extern PFNGLFRAMEBUFFERTEXTURE1DEXTPROC glFramebufferTexture1DEXT;
|
|
extern PFNGLFRAMEBUFFERTEXTURE2DEXTPROC glFramebufferTexture2DEXT;
|
|
extern PFNGLFRAMEBUFFERTEXTURE3DEXTPROC glFramebufferTexture3DEXT;
|
|
extern PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC glFramebufferRenderbufferEXT;
|
|
extern PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC glGetFramebufferAttachmentParameterivEXT;
|
|
extern PFNGLGENERATEMIPMAPEXTPROC glGenerateMipmapEXT;
|
|
|
|
#endif // !GL_SHARED_H
|