5 * Created by Toshi Nagata on 2014/03/17.
6 * Copyright 2014 Toshi Nagata. All rights reserved.
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation version 2 of the License.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
18 /* Implement OpenGL extensions */
21 #ifndef __OpenGL_extensions_h__
22 #define __OpenGL_extensions_h__
27 /*#include <GL/glext.h>*/
34 #define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506
35 #define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
36 #define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6
37 #define GL_RENDERBUFFER_BINDING_EXT 0x8CA7
38 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0
39 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1
40 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2
41 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3
42 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4
43 #define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5
44 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6
45 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
46 #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9
47 #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA
48 #define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB
49 #define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
50 #define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD
51 #define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
52 #define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
53 #define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
54 #define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
55 #define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
56 #define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
57 #define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
58 #define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
59 #define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
60 #define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
61 #define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
62 #define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
63 #define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
64 #define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
65 #define GL_COLOR_ATTACHMENT13_EXT 0x8CED
66 #define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
67 #define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
68 #define GL_DEPTH_ATTACHMENT_EXT 0x8D00
69 #define GL_STENCIL_ATTACHMENT_EXT 0x8D20
70 #define GL_FRAMEBUFFER_EXT 0x8D40
71 #define GL_RENDERBUFFER_EXT 0x8D41
72 #define GL_RENDERBUFFER_WIDTH_EXT 0x8D42
73 #define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43
74 #define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44
75 #define GL_STENCIL_INDEX1_EXT 0x8D46
76 #define GL_STENCIL_INDEX4_EXT 0x8D47
77 #define GL_STENCIL_INDEX8_EXT 0x8D48
78 #define GL_STENCIL_INDEX16_EXT 0x8D49
79 #define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50
80 #define GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8D51
81 #define GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8D52
82 #define GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8D53
83 #define GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8D54
84 #define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55
87 extern GLboolean glIsRenderbufferEXT(GLuint renderbuffer);
88 extern void glBindRenderbufferEXT(GLenum target, GLuint renderbuffer);
89 extern void glDeleteRenderbuffersEXT(GLsizei n, const GLuint * renderbuffers);
90 extern void glGenRenderbuffersEXT(GLsizei n, GLuint * renderbuffers);
91 extern void glRenderbufferStorageEXT(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
92 extern void glGetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint * params);
93 extern GLboolean glIsFramebufferEXT(GLuint framebuffer);
94 extern void glBindFramebufferEXT(GLenum target, GLuint framebuffer);
95 extern void glDeleteFramebuffersEXT(GLsizei n, const GLuint * framebuffers);
96 extern void glGenFramebuffersEXT(GLsizei n, GLuint * framebuffers);
97 extern GLenum glCheckFramebufferStatusEXT(GLenum target);
98 extern void glFramebufferTexture1DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
99 extern void glFramebufferTexture2DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
100 extern void glFramebufferTexture3DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
101 extern void glFramebufferRenderbufferEXT(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
102 extern void glGetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, GLenum pname, GLint * params);
103 extern void glGenerateMipmapEXT(GLenum target);
105 extern int InitializeOpenGLExtensions(void);
111 #endif /* __OpenGL_extensions_h__ */