diff options
author | Jacek Antonelli | 2008-09-06 18:24:57 -0500 |
---|---|---|
committer | Jacek Antonelli | 2008-09-06 18:25:07 -0500 |
commit | 798d367d54a6c6379ad355bd8345fa40e31e7fe9 (patch) | |
tree | 1921f1708cd0240648c97bc02df2c2ab5f2fc41e /linden/indra/llrender/llglheaders.h | |
parent | Second Life viewer sources 1.20.15 (diff) | |
download | meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.zip meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.tar.gz meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.tar.bz2 meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.tar.xz |
Second Life viewer sources 1.21.0-RC
Diffstat (limited to 'linden/indra/llrender/llglheaders.h')
-rw-r--r-- | linden/indra/llrender/llglheaders.h | 588 |
1 files changed, 588 insertions, 0 deletions
diff --git a/linden/indra/llrender/llglheaders.h b/linden/indra/llrender/llglheaders.h new file mode 100644 index 0000000..f047262 --- /dev/null +++ b/linden/indra/llrender/llglheaders.h | |||
@@ -0,0 +1,588 @@ | |||
1 | /** | ||
2 | * @file llglheaders.h | ||
3 | * @brief LLGL definitions | ||
4 | * | ||
5 | * $LicenseInfo:firstyear=2001&license=viewergpl$ | ||
6 | * | ||
7 | * Copyright (c) 2001-2008, Linden Research, Inc. | ||
8 | * | ||
9 | * Second Life Viewer Source Code | ||
10 | * The source code in this file ("Source Code") is provided by Linden Lab | ||
11 | * to you under the terms of the GNU General Public License, version 2.0 | ||
12 | * ("GPL"), unless you have obtained a separate licensing agreement | ||
13 | * ("Other License"), formally executed by you and Linden Lab. Terms of | ||
14 | * the GPL can be found in doc/GPL-license.txt in this distribution, or | ||
15 | * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 | ||
16 | * | ||
17 | * There are special exceptions to the terms and conditions of the GPL as | ||
18 | * it is applied to this Source Code. View the full text of the exception | ||
19 | * in the file doc/FLOSS-exception.txt in this software distribution, or | ||
20 | * online at http://secondlifegrid.net/programs/open_source/licensing/flossexception | ||
21 | * | ||
22 | * By copying, modifying or distributing this software, you acknowledge | ||
23 | * that you have read and understood your obligations described above, | ||
24 | * and agree to abide by those obligations. | ||
25 | * | ||
26 | * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO | ||
27 | * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, | ||
28 | * COMPLETENESS OR PERFORMANCE. | ||
29 | * $/LicenseInfo$ | ||
30 | */ | ||
31 | |||
32 | #ifndef LL_LLGLHEADERS_H | ||
33 | #define LL_LLGLHEADERS_H | ||
34 | |||
35 | #if LL_MESA | ||
36 | //---------------------------------------------------------------------------- | ||
37 | // MESA headers | ||
38 | // quotes so we get libraries/.../GL/ version | ||
39 | #define GL_GLEXT_PROTOTYPES | ||
40 | #include "GL/gl.h" | ||
41 | #include "GL/glext.h" | ||
42 | #include "GL/glu.h" | ||
43 | |||
44 | // The __APPLE__ kludge is to make glh_extensions.h not symbol-clash horribly | ||
45 | # define __APPLE__ | ||
46 | # include "GL/glh_extensions.h" | ||
47 | # undef __APPLE__ | ||
48 | |||
49 | #elif LL_LINUX | ||
50 | //---------------------------------------------------------------------------- | ||
51 | // Linux, MESA headers, but not necessarily assuming MESA runtime. | ||
52 | // quotes so we get libraries/.../GL/ version | ||
53 | #include "GL/gl.h" | ||
54 | #include "GL/glext.h" | ||
55 | #include "GL/glu.h" | ||
56 | |||
57 | |||
58 | #if LL_LINUX && !LL_MESA_HEADLESS | ||
59 | // The __APPLE__ kludge is to make glh_extensions.h not symbol-clash horribly | ||
60 | # define __APPLE__ | ||
61 | # include "GL/glh_extensions.h" | ||
62 | # undef __APPLE__ | ||
63 | |||
64 | /* Although SDL very likely ends up calling glXGetProcAddress() itself, | ||
65 | if we use SDL_GL_GetProcAddress() then we get bogus addresses back on | ||
66 | some systems. Weird. */ | ||
67 | /*# include "SDL/SDL.h" | ||
68 | # define GLH_EXT_GET_PROC_ADDRESS(p) SDL_GL_GetProcAddress(p) */ | ||
69 | #define GLX_GLXEXT_PROTOTYPES 1 | ||
70 | # include "GL/glx.h" | ||
71 | # include "GL/glxext.h" | ||
72 | // Use glXGetProcAddressARB instead of glXGetProcAddress - the ARB symbol | ||
73 | // is considered 'legacy' but works on more machines. | ||
74 | # define GLH_EXT_GET_PROC_ADDRESS(p) glXGetProcAddressARB((const GLubyte*)(p)) | ||
75 | // Whee, the X headers define 'Status'. Undefine to avoid confusion. | ||
76 | #undef Status | ||
77 | #endif // LL_LINUX && !LL_MESA_HEADLESS | ||
78 | |||
79 | |||
80 | // GL_ARB_vertex_buffer_object | ||
81 | extern PFNGLBINDBUFFERARBPROC glBindBufferARB; | ||
82 | extern PFNGLDELETEBUFFERSARBPROC glDeleteBuffersARB; | ||
83 | extern PFNGLGENBUFFERSARBPROC glGenBuffersARB; | ||
84 | extern PFNGLISBUFFERARBPROC glIsBufferARB; | ||
85 | extern PFNGLBUFFERDATAARBPROC glBufferDataARB; | ||
86 | extern PFNGLBUFFERSUBDATAARBPROC glBufferSubDataARB; | ||
87 | extern PFNGLGETBUFFERSUBDATAARBPROC glGetBufferSubDataARB; | ||
88 | extern PFNGLMAPBUFFERARBPROC glMapBufferARB; | ||
89 | extern PFNGLUNMAPBUFFERARBPROC glUnmapBufferARB; | ||
90 | extern PFNGLGETBUFFERPARAMETERIVARBPROC glGetBufferParameterivARB; | ||
91 | extern PFNGLGETBUFFERPOINTERVARBPROC glGetBufferPointervARB; | ||
92 | |||
93 | // GL_ATI_vertex_array_object | ||
94 | extern PFNGLNEWOBJECTBUFFERATIPROC glNewObjectBufferATI; | ||
95 | extern PFNGLISOBJECTBUFFERATIPROC glIsObjectBufferATI; | ||
96 | extern PFNGLUPDATEOBJECTBUFFERATIPROC glUpdateObjectBufferATI; | ||
97 | extern PFNGLGETOBJECTBUFFERFVATIPROC glGetObjectBufferfvATI; | ||
98 | extern PFNGLGETOBJECTBUFFERIVATIPROC glGetObjectBufferivATI; | ||
99 | extern PFNGLFREEOBJECTBUFFERATIPROC glFreeObjectBufferATI; | ||
100 | extern PFNGLARRAYOBJECTATIPROC glArrayObjectATI; | ||
101 | extern PFNGLVERTEXATTRIBARRAYOBJECTATIPROC glVertexAttribArrayObjectATI; | ||
102 | extern PFNGLGETARRAYOBJECTFVATIPROC glGetArrayObjectfvATI; | ||
103 | extern PFNGLGETARRAYOBJECTIVATIPROC glGetArrayObjectivATI; | ||
104 | extern PFNGLVARIANTARRAYOBJECTATIPROC glVariantObjectArrayATI; | ||
105 | extern PFNGLGETVARIANTARRAYOBJECTFVATIPROC glGetVariantArrayObjectfvATI; | ||
106 | extern PFNGLGETVARIANTARRAYOBJECTIVATIPROC glGetVariantArrayObjectivATI; | ||
107 | |||
108 | // GL_ARB_occlusion_query | ||
109 | extern PFNGLGENQUERIESARBPROC glGenQueriesARB; | ||
110 | extern PFNGLDELETEQUERIESARBPROC glDeleteQueriesARB; | ||
111 | extern PFNGLISQUERYARBPROC glIsQueryARB; | ||
112 | extern PFNGLBEGINQUERYARBPROC glBeginQueryARB; | ||
113 | extern PFNGLENDQUERYARBPROC glEndQueryARB; | ||
114 | extern PFNGLGETQUERYIVARBPROC glGetQueryivARB; | ||
115 | extern PFNGLGETQUERYOBJECTIVARBPROC glGetQueryObjectivARB; | ||
116 | extern PFNGLGETQUERYOBJECTUIVARBPROC glGetQueryObjectuivARB; | ||
117 | |||
118 | // GL_ARB_point_parameters | ||
119 | extern PFNGLPOINTPARAMETERFARBPROC glPointParameterfARB; | ||
120 | extern PFNGLPOINTPARAMETERFVARBPROC glPointParameterfvARB; | ||
121 | |||
122 | // GL_ARB_shader_objects | ||
123 | extern PFNGLDELETEOBJECTARBPROC glDeleteObjectARB; | ||
124 | extern PFNGLGETHANDLEARBPROC glGetHandleARB; | ||
125 | extern PFNGLDETACHOBJECTARBPROC glDetachObjectARB; | ||
126 | extern PFNGLCREATESHADEROBJECTARBPROC glCreateShaderObjectARB; | ||
127 | extern PFNGLSHADERSOURCEARBPROC glShaderSourceARB; | ||
128 | extern PFNGLCOMPILESHADERARBPROC glCompileShaderARB; | ||
129 | extern PFNGLCREATEPROGRAMOBJECTARBPROC glCreateProgramObjectARB; | ||
130 | extern PFNGLATTACHOBJECTARBPROC glAttachObjectARB; | ||
131 | extern PFNGLLINKPROGRAMARBPROC glLinkProgramARB; | ||
132 | extern PFNGLUSEPROGRAMOBJECTARBPROC glUseProgramObjectARB; | ||
133 | extern PFNGLVALIDATEPROGRAMARBPROC glValidateProgramARB; | ||
134 | extern PFNGLUNIFORM1FARBPROC glUniform1fARB; | ||
135 | extern PFNGLUNIFORM2FARBPROC glUniform2fARB; | ||
136 | extern PFNGLUNIFORM3FARBPROC glUniform3fARB; | ||
137 | extern PFNGLUNIFORM4FARBPROC glUniform4fARB; | ||
138 | extern PFNGLUNIFORM1IARBPROC glUniform1iARB; | ||
139 | extern PFNGLUNIFORM2IARBPROC glUniform2iARB; | ||
140 | extern PFNGLUNIFORM3IARBPROC glUniform3iARB; | ||
141 | extern PFNGLUNIFORM4IARBPROC glUniform4iARB; | ||
142 | extern PFNGLUNIFORM1FVARBPROC glUniform1fvARB; | ||
143 | extern PFNGLUNIFORM2FVARBPROC glUniform2fvARB; | ||
144 | extern PFNGLUNIFORM3FVARBPROC glUniform3fvARB; | ||
145 | extern PFNGLUNIFORM4FVARBPROC glUniform4fvARB; | ||
146 | extern PFNGLUNIFORM1IVARBPROC glUniform1ivARB; | ||
147 | extern PFNGLUNIFORM2IVARBPROC glUniform2ivARB; | ||
148 | extern PFNGLUNIFORM3IVARBPROC glUniform3ivARB; | ||
149 | extern PFNGLUNIFORM4IVARBPROC glUniform4ivARB; | ||
150 | extern PFNGLUNIFORMMATRIX2FVARBPROC glUniformMatrix2fvARB; | ||
151 | extern PFNGLUNIFORMMATRIX3FVARBPROC glUniformMatrix3fvARB; | ||
152 | extern PFNGLUNIFORMMATRIX4FVARBPROC glUniformMatrix4fvARB; | ||
153 | extern PFNGLGETOBJECTPARAMETERFVARBPROC glGetObjectParameterfvARB; | ||
154 | extern PFNGLGETOBJECTPARAMETERIVARBPROC glGetObjectParameterivARB; | ||
155 | extern PFNGLGETINFOLOGARBPROC glGetInfoLogARB; | ||
156 | extern PFNGLGETATTACHEDOBJECTSARBPROC glGetAttachedObjectsARB; | ||
157 | extern PFNGLGETUNIFORMLOCATIONARBPROC glGetUniformLocationARB; | ||
158 | extern PFNGLGETACTIVEUNIFORMARBPROC glGetActiveUniformARB; | ||
159 | extern PFNGLGETUNIFORMFVARBPROC glGetUniformfvARB; | ||
160 | extern PFNGLGETUNIFORMIVARBPROC glGetUniformivARB; | ||
161 | extern PFNGLGETSHADERSOURCEARBPROC glGetShaderSourceARB; | ||
162 | |||
163 | // GL_ARB_vertex_shader | ||
164 | extern PFNGLVERTEXATTRIB1DARBPROC glVertexAttrib1dARB; | ||
165 | extern PFNGLVERTEXATTRIB1DVARBPROC glVertexAttrib1dvARB; | ||
166 | extern PFNGLVERTEXATTRIB1FARBPROC glVertexAttrib1fARB; | ||
167 | extern PFNGLVERTEXATTRIB1FVARBPROC glVertexAttrib1fvARB; | ||
168 | extern PFNGLVERTEXATTRIB1SARBPROC glVertexAttrib1sARB; | ||
169 | extern PFNGLVERTEXATTRIB1SVARBPROC glVertexAttrib1svARB; | ||
170 | extern PFNGLVERTEXATTRIB2DARBPROC glVertexAttrib2dARB; | ||
171 | extern PFNGLVERTEXATTRIB2DVARBPROC glVertexAttrib2dvARB; | ||
172 | extern PFNGLVERTEXATTRIB2FARBPROC glVertexAttrib2fARB; | ||
173 | extern PFNGLVERTEXATTRIB2FVARBPROC glVertexAttrib2fvARB; | ||
174 | extern PFNGLVERTEXATTRIB2SARBPROC glVertexAttrib2sARB; | ||
175 | extern PFNGLVERTEXATTRIB2SVARBPROC glVertexAttrib2svARB; | ||
176 | extern PFNGLVERTEXATTRIB3DARBPROC glVertexAttrib3dARB; | ||
177 | extern PFNGLVERTEXATTRIB3DVARBPROC glVertexAttrib3dvARB; | ||
178 | extern PFNGLVERTEXATTRIB3FARBPROC glVertexAttrib3fARB; | ||
179 | extern PFNGLVERTEXATTRIB3FVARBPROC glVertexAttrib3fvARB; | ||
180 | extern PFNGLVERTEXATTRIB3SARBPROC glVertexAttrib3sARB; | ||
181 | extern PFNGLVERTEXATTRIB3SVARBPROC glVertexAttrib3svARB; | ||
182 | extern PFNGLVERTEXATTRIB4NBVARBPROC glVertexAttrib4nbvARB; | ||
183 | extern PFNGLVERTEXATTRIB4NIVARBPROC glVertexAttrib4nivARB; | ||
184 | extern PFNGLVERTEXATTRIB4NSVARBPROC glVertexAttrib4nsvARB; | ||
185 | extern PFNGLVERTEXATTRIB4NUBARBPROC glVertexAttrib4nubARB; | ||
186 | extern PFNGLVERTEXATTRIB4NUBVARBPROC glVertexAttrib4nubvARB; | ||
187 | extern PFNGLVERTEXATTRIB4NUIVARBPROC glVertexAttrib4nuivARB; | ||
188 | extern PFNGLVERTEXATTRIB4NUSVARBPROC glVertexAttrib4nusvARB; | ||
189 | extern PFNGLVERTEXATTRIB4BVARBPROC glVertexAttrib4bvARB; | ||
190 | extern PFNGLVERTEXATTRIB4DARBPROC glVertexAttrib4dARB; | ||
191 | extern PFNGLVERTEXATTRIB4DVARBPROC glVertexAttrib4dvARB; | ||
192 | extern PFNGLVERTEXATTRIB4FARBPROC glVertexAttrib4fARB; | ||
193 | extern PFNGLVERTEXATTRIB4FVARBPROC glVertexAttrib4fvARB; | ||
194 | extern PFNGLVERTEXATTRIB4IVARBPROC glVertexAttrib4ivARB; | ||
195 | extern PFNGLVERTEXATTRIB4SARBPROC glVertexAttrib4sARB; | ||
196 | extern PFNGLVERTEXATTRIB4SVARBPROC glVertexAttrib4svARB; | ||
197 | extern PFNGLVERTEXATTRIB4UBVARBPROC glVertexAttrib4ubvARB; | ||
198 | extern PFNGLVERTEXATTRIB4UIVARBPROC glVertexAttrib4uivARB; | ||
199 | extern PFNGLVERTEXATTRIB4USVARBPROC glVertexAttrib4usvARB; | ||
200 | extern PFNGLVERTEXATTRIBPOINTERARBPROC glVertexAttribPointerARB; | ||
201 | extern PFNGLENABLEVERTEXATTRIBARRAYARBPROC glEnableVertexAttribArrayARB; | ||
202 | extern PFNGLDISABLEVERTEXATTRIBARRAYARBPROC glDisableVertexAttribArrayARB; | ||
203 | extern PFNGLPROGRAMSTRINGARBPROC glProgramStringARB; | ||
204 | extern PFNGLBINDPROGRAMARBPROC glBindProgramARB; | ||
205 | extern PFNGLDELETEPROGRAMSARBPROC glDeleteProgramsARB; | ||
206 | extern PFNGLGENPROGRAMSARBPROC glGenProgramsARB; | ||
207 | extern PFNGLPROGRAMENVPARAMETER4DARBPROC glProgramEnvParameter4dARB; | ||
208 | extern PFNGLPROGRAMENVPARAMETER4DVARBPROC glProgramEnvParameter4dvARB; | ||
209 | extern PFNGLPROGRAMENVPARAMETER4FARBPROC glProgramEnvParameter4fARB; | ||
210 | extern PFNGLPROGRAMENVPARAMETER4FVARBPROC glProgramEnvParameter4fvARB; | ||
211 | extern PFNGLPROGRAMLOCALPARAMETER4DARBPROC glProgramLocalParameter4dARB; | ||
212 | extern PFNGLPROGRAMLOCALPARAMETER4DVARBPROC glProgramLocalParameter4dvARB; | ||
213 | extern PFNGLPROGRAMLOCALPARAMETER4FARBPROC glProgramLocalParameter4fARB; | ||
214 | extern PFNGLPROGRAMLOCALPARAMETER4FVARBPROC glProgramLocalParameter4fvARB; | ||
215 | extern PFNGLGETPROGRAMENVPARAMETERDVARBPROC glGetProgramEnvParameterdvARB; | ||
216 | extern PFNGLGETPROGRAMENVPARAMETERFVARBPROC glGetProgramEnvParameterfvARB; | ||
217 | extern PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC glGetProgramLocalParameterdvARB; | ||
218 | extern PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC glGetProgramLocalParameterfvARB; | ||
219 | extern PFNGLGETPROGRAMIVARBPROC glGetProgramivARB; | ||
220 | extern PFNGLGETPROGRAMSTRINGARBPROC glGetProgramStringARB; | ||
221 | extern PFNGLGETVERTEXATTRIBDVARBPROC glGetVertexAttribdvARB; | ||
222 | extern PFNGLGETVERTEXATTRIBFVARBPROC glGetVertexAttribfvARB; | ||
223 | extern PFNGLGETVERTEXATTRIBIVARBPROC glGetVertexAttribivARB; | ||
224 | extern PFNGLGETVERTEXATTRIBPOINTERVARBPROC glGetVertexAttribPointervARB; | ||
225 | extern PFNGLISPROGRAMARBPROC glIsProgramARB; | ||
226 | extern PFNGLBINDATTRIBLOCATIONARBPROC glBindAttribLocationARB; | ||
227 | extern PFNGLGETACTIVEATTRIBARBPROC glGetActiveAttribARB; | ||
228 | extern PFNGLGETATTRIBLOCATIONARBPROC glGetAttribLocationARB; | ||
229 | |||
230 | extern PFNGLCOMPRESSEDTEXIMAGE2DARBPROC glCompressedTexImage2DARB; | ||
231 | extern PFNGLGETCOMPRESSEDTEXIMAGEARBPROC glGetCompressedTexImageARB; | ||
232 | |||
233 | extern PFNGLCOLORTABLEEXTPROC glColorTableEXT; | ||
234 | |||
235 | //GL_EXT_framebuffer_object | ||
236 | extern PFNGLISRENDERBUFFEREXTPROC glIsRenderbufferEXT; | ||
237 | extern PFNGLBINDRENDERBUFFEREXTPROC glBindRenderbufferEXT; | ||
238 | extern PFNGLDELETERENDERBUFFERSEXTPROC glDeleteRenderbuffersEXT; | ||
239 | extern PFNGLGENRENDERBUFFERSEXTPROC glGenRenderbuffersEXT; | ||
240 | extern PFNGLRENDERBUFFERSTORAGEEXTPROC glRenderbufferStorageEXT; | ||
241 | extern PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC glGetRenderbufferParameterivEXT; | ||
242 | extern PFNGLISFRAMEBUFFEREXTPROC glIsFramebufferEXT; | ||
243 | extern PFNGLBINDFRAMEBUFFEREXTPROC glBindFramebufferEXT; | ||
244 | extern PFNGLDELETEFRAMEBUFFERSEXTPROC glDeleteFramebuffersEXT; | ||
245 | extern PFNGLGENFRAMEBUFFERSEXTPROC glGenFramebuffersEXT; | ||
246 | extern PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC glCheckFramebufferStatusEXT; | ||
247 | extern PFNGLFRAMEBUFFERTEXTURE1DEXTPROC glFramebufferTexture1DEXT; | ||
248 | extern PFNGLFRAMEBUFFERTEXTURE2DEXTPROC glFramebufferTexture2DEXT; | ||
249 | extern PFNGLFRAMEBUFFERTEXTURE3DEXTPROC glFramebufferTexture3DEXT; | ||
250 | extern PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC glFramebufferRenderbufferEXT; | ||
251 | extern PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC glGetFramebufferAttachmentParameterivEXT; | ||
252 | extern PFNGLGENERATEMIPMAPEXTPROC glGenerateMipmapEXT; | ||
253 | |||
254 | |||
255 | #elif LL_WINDOWS | ||
256 | |||
257 | // windows gl headers depend on things like APIENTRY, so include windows. | ||
258 | #define WIN32_LEAN_AND_MEAN | ||
259 | #include <winsock2.h> | ||
260 | #include <windows.h> | ||
261 | |||
262 | //---------------------------------------------------------------------------- | ||
263 | #include <GL/gl.h> | ||
264 | #include <GL/glu.h> | ||
265 | |||
266 | // quotes so we get libraries/.../GL/ version | ||
267 | #include "GL/glext.h" | ||
268 | #include "GL/glh_extensions.h" | ||
269 | |||
270 | |||
271 | // GL_ARB_vertex_buffer_object | ||
272 | extern PFNGLBINDBUFFERARBPROC glBindBufferARB; | ||
273 | extern PFNGLDELETEBUFFERSARBPROC glDeleteBuffersARB; | ||
274 | extern PFNGLGENBUFFERSARBPROC glGenBuffersARB; | ||
275 | extern PFNGLISBUFFERARBPROC glIsBufferARB; | ||
276 | extern PFNGLBUFFERDATAARBPROC glBufferDataARB; | ||
277 | extern PFNGLBUFFERSUBDATAARBPROC glBufferSubDataARB; | ||
278 | extern PFNGLGETBUFFERSUBDATAARBPROC glGetBufferSubDataARB; | ||
279 | extern PFNGLMAPBUFFERARBPROC glMapBufferARB; | ||
280 | extern PFNGLUNMAPBUFFERARBPROC glUnmapBufferARB; | ||
281 | extern PFNGLGETBUFFERPARAMETERIVARBPROC glGetBufferParameterivARB; | ||
282 | extern PFNGLGETBUFFERPOINTERVARBPROC glGetBufferPointervARB; | ||
283 | |||
284 | // GL_ATI_vertex_array_object | ||
285 | extern PFNGLNEWOBJECTBUFFERATIPROC glNewObjectBufferATI; | ||
286 | extern PFNGLISOBJECTBUFFERATIPROC glIsObjectBufferATI; | ||
287 | extern PFNGLUPDATEOBJECTBUFFERATIPROC glUpdateObjectBufferATI; | ||
288 | extern PFNGLGETOBJECTBUFFERFVATIPROC glGetObjectBufferfvATI; | ||
289 | extern PFNGLGETOBJECTBUFFERIVATIPROC glGetObjectBufferivATI; | ||
290 | extern PFNGLFREEOBJECTBUFFERATIPROC glFreeObjectBufferATI; | ||
291 | extern PFNGLARRAYOBJECTATIPROC glArrayObjectATI; | ||
292 | extern PFNGLVERTEXATTRIBARRAYOBJECTATIPROC glVertexAttribArrayObjectATI; | ||
293 | extern PFNGLGETARRAYOBJECTFVATIPROC glGetArrayObjectfvATI; | ||
294 | extern PFNGLGETARRAYOBJECTIVATIPROC glGetArrayObjectivATI; | ||
295 | extern PFNGLVARIANTARRAYOBJECTATIPROC glVariantObjectArrayATI; | ||
296 | extern PFNGLGETVARIANTARRAYOBJECTFVATIPROC glGetVariantArrayObjectfvATI; | ||
297 | extern PFNGLGETVARIANTARRAYOBJECTIVATIPROC glGetVariantArrayObjectivATI; | ||
298 | |||
299 | extern PFNWGLSWAPINTERVALEXTPROC wglSwapIntervalEXT; | ||
300 | |||
301 | // GL_ARB_occlusion_query | ||
302 | extern PFNGLGENQUERIESARBPROC glGenQueriesARB; | ||
303 | extern PFNGLDELETEQUERIESARBPROC glDeleteQueriesARB; | ||
304 | extern PFNGLISQUERYARBPROC glIsQueryARB; | ||
305 | extern PFNGLBEGINQUERYARBPROC glBeginQueryARB; | ||
306 | extern PFNGLENDQUERYARBPROC glEndQueryARB; | ||
307 | extern PFNGLGETQUERYIVARBPROC glGetQueryivARB; | ||
308 | extern PFNGLGETQUERYOBJECTIVARBPROC glGetQueryObjectivARB; | ||
309 | extern PFNGLGETQUERYOBJECTUIVARBPROC glGetQueryObjectuivARB; | ||
310 | |||
311 | // GL_ARB_point_parameters | ||
312 | extern PFNGLPOINTPARAMETERFARBPROC glPointParameterfARB; | ||
313 | extern PFNGLPOINTPARAMETERFVARBPROC glPointParameterfvARB; | ||
314 | |||
315 | // GL_ARB_shader_objects | ||
316 | extern PFNGLDELETEOBJECTARBPROC glDeleteObjectARB; | ||
317 | extern PFNGLGETHANDLEARBPROC glGetHandleARB; | ||
318 | extern PFNGLDETACHOBJECTARBPROC glDetachObjectARB; | ||
319 | extern PFNGLCREATESHADEROBJECTARBPROC glCreateShaderObjectARB; | ||
320 | extern PFNGLSHADERSOURCEARBPROC glShaderSourceARB; | ||
321 | extern PFNGLCOMPILESHADERARBPROC glCompileShaderARB; | ||
322 | extern PFNGLCREATEPROGRAMOBJECTARBPROC glCreateProgramObjectARB; | ||
323 | extern PFNGLATTACHOBJECTARBPROC glAttachObjectARB; | ||
324 | extern PFNGLLINKPROGRAMARBPROC glLinkProgramARB; | ||
325 | extern PFNGLUSEPROGRAMOBJECTARBPROC glUseProgramObjectARB; | ||
326 | extern PFNGLVALIDATEPROGRAMARBPROC glValidateProgramARB; | ||
327 | extern PFNGLUNIFORM1FARBPROC glUniform1fARB; | ||
328 | extern PFNGLUNIFORM2FARBPROC glUniform2fARB; | ||
329 | extern PFNGLUNIFORM3FARBPROC glUniform3fARB; | ||
330 | extern PFNGLUNIFORM4FARBPROC glUniform4fARB; | ||
331 | extern PFNGLUNIFORM1IARBPROC glUniform1iARB; | ||
332 | extern PFNGLUNIFORM2IARBPROC glUniform2iARB; | ||
333 | extern PFNGLUNIFORM3IARBPROC glUniform3iARB; | ||
334 | extern PFNGLUNIFORM4IARBPROC glUniform4iARB; | ||
335 | extern PFNGLUNIFORM1FVARBPROC glUniform1fvARB; | ||
336 | extern PFNGLUNIFORM2FVARBPROC glUniform2fvARB; | ||
337 | extern PFNGLUNIFORM3FVARBPROC glUniform3fvARB; | ||
338 | extern PFNGLUNIFORM4FVARBPROC glUniform4fvARB; | ||
339 | extern PFNGLUNIFORM1IVARBPROC glUniform1ivARB; | ||
340 | extern PFNGLUNIFORM2IVARBPROC glUniform2ivARB; | ||
341 | extern PFNGLUNIFORM3IVARBPROC glUniform3ivARB; | ||
342 | extern PFNGLUNIFORM4IVARBPROC glUniform4ivARB; | ||
343 | extern PFNGLUNIFORMMATRIX2FVARBPROC glUniformMatrix2fvARB; | ||
344 | extern PFNGLUNIFORMMATRIX3FVARBPROC glUniformMatrix3fvARB; | ||
345 | extern PFNGLUNIFORMMATRIX4FVARBPROC glUniformMatrix4fvARB; | ||
346 | extern PFNGLGETOBJECTPARAMETERFVARBPROC glGetObjectParameterfvARB; | ||
347 | extern PFNGLGETOBJECTPARAMETERIVARBPROC glGetObjectParameterivARB; | ||
348 | extern PFNGLGETINFOLOGARBPROC glGetInfoLogARB; | ||
349 | extern PFNGLGETATTACHEDOBJECTSARBPROC glGetAttachedObjectsARB; | ||
350 | extern PFNGLGETUNIFORMLOCATIONARBPROC glGetUniformLocationARB; | ||
351 | extern PFNGLGETACTIVEUNIFORMARBPROC glGetActiveUniformARB; | ||
352 | extern PFNGLGETUNIFORMFVARBPROC glGetUniformfvARB; | ||
353 | extern PFNGLGETUNIFORMIVARBPROC glGetUniformivARB; | ||
354 | extern PFNGLGETSHADERSOURCEARBPROC glGetShaderSourceARB; | ||
355 | |||
356 | // GL_ARB_vertex_shader | ||
357 | extern PFNGLVERTEXATTRIB1DARBPROC glVertexAttrib1dARB; | ||
358 | extern PFNGLVERTEXATTRIB1DVARBPROC glVertexAttrib1dvARB; | ||
359 | extern PFNGLVERTEXATTRIB1FARBPROC glVertexAttrib1fARB; | ||
360 | extern PFNGLVERTEXATTRIB1FVARBPROC glVertexAttrib1fvARB; | ||
361 | extern PFNGLVERTEXATTRIB1SARBPROC glVertexAttrib1sARB; | ||
362 | extern PFNGLVERTEXATTRIB1SVARBPROC glVertexAttrib1svARB; | ||
363 | extern PFNGLVERTEXATTRIB2DARBPROC glVertexAttrib2dARB; | ||
364 | extern PFNGLVERTEXATTRIB2DVARBPROC glVertexAttrib2dvARB; | ||
365 | extern PFNGLVERTEXATTRIB2FARBPROC glVertexAttrib2fARB; | ||
366 | extern PFNGLVERTEXATTRIB2FVARBPROC glVertexAttrib2fvARB; | ||
367 | extern PFNGLVERTEXATTRIB2SARBPROC glVertexAttrib2sARB; | ||
368 | extern PFNGLVERTEXATTRIB2SVARBPROC glVertexAttrib2svARB; | ||
369 | extern PFNGLVERTEXATTRIB3DARBPROC glVertexAttrib3dARB; | ||
370 | extern PFNGLVERTEXATTRIB3DVARBPROC glVertexAttrib3dvARB; | ||
371 | extern PFNGLVERTEXATTRIB3FARBPROC glVertexAttrib3fARB; | ||
372 | extern PFNGLVERTEXATTRIB3FVARBPROC glVertexAttrib3fvARB; | ||
373 | extern PFNGLVERTEXATTRIB3SARBPROC glVertexAttrib3sARB; | ||
374 | extern PFNGLVERTEXATTRIB3SVARBPROC glVertexAttrib3svARB; | ||
375 | extern PFNGLVERTEXATTRIB4NBVARBPROC glVertexAttrib4nbvARB; | ||
376 | extern PFNGLVERTEXATTRIB4NIVARBPROC glVertexAttrib4nivARB; | ||
377 | extern PFNGLVERTEXATTRIB4NSVARBPROC glVertexAttrib4nsvARB; | ||
378 | extern PFNGLVERTEXATTRIB4NUBARBPROC glVertexAttrib4nubARB; | ||
379 | extern PFNGLVERTEXATTRIB4NUBVARBPROC glVertexAttrib4nubvARB; | ||
380 | extern PFNGLVERTEXATTRIB4NUIVARBPROC glVertexAttrib4nuivARB; | ||
381 | extern PFNGLVERTEXATTRIB4NUSVARBPROC glVertexAttrib4nusvARB; | ||
382 | extern PFNGLVERTEXATTRIB4BVARBPROC glVertexAttrib4bvARB; | ||
383 | extern PFNGLVERTEXATTRIB4DARBPROC glVertexAttrib4dARB; | ||
384 | extern PFNGLVERTEXATTRIB4DVARBPROC glVertexAttrib4dvARB; | ||
385 | extern PFNGLVERTEXATTRIB4FARBPROC glVertexAttrib4fARB; | ||
386 | extern PFNGLVERTEXATTRIB4FVARBPROC glVertexAttrib4fvARB; | ||
387 | extern PFNGLVERTEXATTRIB4IVARBPROC glVertexAttrib4ivARB; | ||
388 | extern PFNGLVERTEXATTRIB4SARBPROC glVertexAttrib4sARB; | ||
389 | extern PFNGLVERTEXATTRIB4SVARBPROC glVertexAttrib4svARB; | ||
390 | extern PFNGLVERTEXATTRIB4UBVARBPROC glVertexAttrib4ubvARB; | ||
391 | extern PFNGLVERTEXATTRIB4UIVARBPROC glVertexAttrib4uivARB; | ||
392 | extern PFNGLVERTEXATTRIB4USVARBPROC glVertexAttrib4usvARB; | ||
393 | extern PFNGLVERTEXATTRIBPOINTERARBPROC glVertexAttribPointerARB; | ||
394 | extern PFNGLENABLEVERTEXATTRIBARRAYARBPROC glEnableVertexAttribArrayARB; | ||
395 | extern PFNGLDISABLEVERTEXATTRIBARRAYARBPROC glDisableVertexAttribArrayARB; | ||
396 | extern PFNGLPROGRAMSTRINGARBPROC glProgramStringARB; | ||
397 | extern PFNGLBINDPROGRAMARBPROC glBindProgramARB; | ||
398 | extern PFNGLDELETEPROGRAMSARBPROC glDeleteProgramsARB; | ||
399 | extern PFNGLGENPROGRAMSARBPROC glGenProgramsARB; | ||
400 | extern PFNGLPROGRAMENVPARAMETER4DARBPROC glProgramEnvParameter4dARB; | ||
401 | extern PFNGLPROGRAMENVPARAMETER4DVARBPROC glProgramEnvParameter4dvARB; | ||
402 | extern PFNGLPROGRAMENVPARAMETER4FARBPROC glProgramEnvParameter4fARB; | ||
403 | extern PFNGLPROGRAMENVPARAMETER4FVARBPROC glProgramEnvParameter4fvARB; | ||
404 | extern PFNGLPROGRAMLOCALPARAMETER4DARBPROC glProgramLocalParameter4dARB; | ||
405 | extern PFNGLPROGRAMLOCALPARAMETER4DVARBPROC glProgramLocalParameter4dvARB; | ||
406 | extern PFNGLPROGRAMLOCALPARAMETER4FARBPROC glProgramLocalParameter4fARB; | ||
407 | extern PFNGLPROGRAMLOCALPARAMETER4FVARBPROC glProgramLocalParameter4fvARB; | ||
408 | extern PFNGLGETPROGRAMENVPARAMETERDVARBPROC glGetProgramEnvParameterdvARB; | ||
409 | extern PFNGLGETPROGRAMENVPARAMETERFVARBPROC glGetProgramEnvParameterfvARB; | ||
410 | extern PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC glGetProgramLocalParameterdvARB; | ||
411 | extern PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC glGetProgramLocalParameterfvARB; | ||
412 | extern PFNGLGETPROGRAMIVARBPROC glGetProgramivARB; | ||
413 | extern PFNGLGETPROGRAMSTRINGARBPROC glGetProgramStringARB; | ||
414 | extern PFNGLGETVERTEXATTRIBDVARBPROC glGetVertexAttribdvARB; | ||
415 | extern PFNGLGETVERTEXATTRIBFVARBPROC glGetVertexAttribfvARB; | ||
416 | extern PFNGLGETVERTEXATTRIBIVARBPROC glGetVertexAttribivARB; | ||
417 | extern PFNGLGETVERTEXATTRIBPOINTERVARBPROC glGetVertexAttribPointervARB; | ||
418 | extern PFNGLISPROGRAMARBPROC glIsProgramARB; | ||
419 | extern PFNGLBINDATTRIBLOCATIONARBPROC glBindAttribLocationARB; | ||
420 | extern PFNGLGETACTIVEATTRIBARBPROC glGetActiveAttribARB; | ||
421 | extern PFNGLGETATTRIBLOCATIONARBPROC glGetAttribLocationARB; | ||
422 | |||
423 | //GL_EXT_framebuffer_object | ||
424 | extern PFNGLISRENDERBUFFEREXTPROC glIsRenderbufferEXT; | ||
425 | extern PFNGLBINDRENDERBUFFEREXTPROC glBindRenderbufferEXT; | ||
426 | extern PFNGLDELETERENDERBUFFERSEXTPROC glDeleteRenderbuffersEXT; | ||
427 | extern PFNGLGENRENDERBUFFERSEXTPROC glGenRenderbuffersEXT; | ||
428 | extern PFNGLRENDERBUFFERSTORAGEEXTPROC glRenderbufferStorageEXT; | ||
429 | extern PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC glGetRenderbufferParameterivEXT; | ||
430 | extern PFNGLISFRAMEBUFFEREXTPROC glIsFramebufferEXT; | ||
431 | extern PFNGLBINDFRAMEBUFFEREXTPROC glBindFramebufferEXT; | ||
432 | extern PFNGLDELETEFRAMEBUFFERSEXTPROC glDeleteFramebuffersEXT; | ||
433 | extern PFNGLGENFRAMEBUFFERSEXTPROC glGenFramebuffersEXT; | ||
434 | extern PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC glCheckFramebufferStatusEXT; | ||
435 | extern PFNGLFRAMEBUFFERTEXTURE1DEXTPROC glFramebufferTexture1DEXT; | ||
436 | extern PFNGLFRAMEBUFFERTEXTURE2DEXTPROC glFramebufferTexture2DEXT; | ||
437 | extern PFNGLFRAMEBUFFERTEXTURE3DEXTPROC glFramebufferTexture3DEXT; | ||
438 | extern PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC glFramebufferRenderbufferEXT; | ||
439 | extern PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC glGetFramebufferAttachmentParameterivEXT; | ||
440 | extern PFNGLGENERATEMIPMAPEXTPROC glGenerateMipmapEXT; | ||
441 | |||
442 | |||
443 | #elif LL_DARWIN | ||
444 | //---------------------------------------------------------------------------- | ||
445 | // LL_DARWIN | ||
446 | |||
447 | #include <OpenGL/gl.h> | ||
448 | #include <OpenGL/glu.h> | ||
449 | |||
450 | #define GL_EXT_separate_specular_color 1 | ||
451 | #include <OpenGL/glext.h> | ||
452 | |||
453 | #include "GL/glh_extensions.h" | ||
454 | |||
455 | // These symbols don't exist on 10.3.9, so they have to be declared weak. Redeclaring them here fixes the problem. | ||
456 | // Note that they also must not be called on 10.3.9. This should be taken care of by a runtime check for the existence of the GL extension. | ||
457 | #include <AvailabilityMacros.h> | ||
458 | |||
459 | // GL_EXT_framebuffer_object | ||
460 | extern GLboolean glIsRenderbufferEXT(GLuint renderbuffer) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
461 | extern void glBindRenderbufferEXT(GLenum target, GLuint renderbuffer) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
462 | extern void glDeleteRenderbuffersEXT(GLsizei n, const GLuint *renderbuffers) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
463 | extern void glGenRenderbuffersEXT(GLsizei n, GLuint *renderbuffers) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
464 | extern void glRenderbufferStorageEXT(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
465 | extern void glGetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint *params) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
466 | extern GLboolean glIsFramebufferEXT(GLuint framebuffer) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
467 | extern void glBindFramebufferEXT(GLenum target, GLuint framebuffer) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
468 | extern void glDeleteFramebuffersEXT(GLsizei n, const GLuint *framebuffers) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
469 | extern void glGenFramebuffersEXT(GLsizei n, GLuint *framebuffers) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
470 | extern GLenum glCheckFramebufferStatusEXT(GLenum target) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
471 | extern void glFramebufferTexture1DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
472 | extern void glFramebufferTexture2DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
473 | extern void glFramebufferTexture3DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
474 | extern void glFramebufferRenderbufferEXT(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
475 | extern void glGetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, GLenum pname, GLint *params) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
476 | extern void glGenerateMipmapEXT(GLenum target) AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER; | ||
477 | |||
478 | |||
479 | #ifdef __cplusplus | ||
480 | extern "C" { | ||
481 | #endif | ||
482 | // | ||
483 | // Define vertex buffer object headers on Mac | ||
484 | // | ||
485 | #ifndef GL_ARB_vertex_buffer_object | ||
486 | #define GL_BUFFER_SIZE_ARB 0x8764 | ||
487 | #define GL_BUFFER_USAGE_ARB 0x8765 | ||
488 | #define GL_ARRAY_BUFFER_ARB 0x8892 | ||
489 | #define GL_ELEMENT_ARRAY_BUFFER_ARB 0x8893 | ||
490 | #define GL_ARRAY_BUFFER_BINDING_ARB 0x8894 | ||
491 | #define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895 | ||
492 | #define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896 | ||
493 | #define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897 | ||
494 | #define GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898 | ||
495 | #define GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899 | ||
496 | #define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889A | ||
497 | #define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889B | ||
498 | #define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889C | ||
499 | #define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889D | ||
500 | #define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889E | ||
501 | #define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889F | ||
502 | #define GL_READ_ONLY_ARB 0x88B8 | ||
503 | #define GL_WRITE_ONLY_ARB 0x88B9 | ||
504 | #define GL_READ_WRITE_ARB 0x88BA | ||
505 | #define GL_BUFFER_ACCESS_ARB 0x88BB | ||
506 | #define GL_BUFFER_MAPPED_ARB 0x88BC | ||
507 | #define GL_BUFFER_MAP_POINTER_ARB 0x88BD | ||
508 | #define GL_STREAM_DRAW_ARB 0x88E0 | ||
509 | #define GL_STREAM_READ_ARB 0x88E1 | ||
510 | #define GL_STREAM_COPY_ARB 0x88E2 | ||
511 | #define GL_STATIC_DRAW_ARB 0x88E4 | ||
512 | #define GL_STATIC_READ_ARB 0x88E5 | ||
513 | #define GL_STATIC_COPY_ARB 0x88E6 | ||
514 | #define GL_DYNAMIC_DRAW_ARB 0x88E8 | ||
515 | #define GL_DYNAMIC_READ_ARB 0x88E9 | ||
516 | #define GL_DYNAMIC_COPY_ARB 0x88EA | ||
517 | #endif | ||
518 | |||
519 | |||
520 | |||
521 | #ifndef GL_ARB_vertex_buffer_object | ||
522 | /* GL types for handling large vertex buffer objects */ | ||
523 | typedef intptr_t GLintptrARB; | ||
524 | typedef intptr_t GLsizeiptrARB; | ||
525 | #endif | ||
526 | |||
527 | |||
528 | #ifndef GL_ARB_vertex_buffer_object | ||
529 | #define GL_ARB_vertex_buffer_object 1 | ||
530 | #ifdef GL_GLEXT_FUNCTION_POINTERS | ||
531 | typedef void (* glBindBufferARBProcPtr) (GLenum target, GLuint buffer); | ||
532 | typedef void (* glDeleteBufferARBProcPtr) (GLsizei n, const GLuint *buffers); | ||
533 | typedef void (* glGenBuffersARBProcPtr) (GLsizei n, GLuint *buffers); | ||
534 | typedef GLboolean (* glIsBufferARBProcPtr) (GLuint buffer); | ||
535 | typedef void (* glBufferDataARBProcPtr) (GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage); | ||
536 | typedef void (* glBufferSubDataARBProcPtr) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data); | ||
537 | typedef void (* glGetBufferSubDataARBProcPtr) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data); | ||
538 | typedef GLvoid* (* glMapBufferARBProcPtr) (GLenum target, GLenum access); /* Flawfinder: ignore */ | ||
539 | typedef GLboolean (* glUnmapBufferARBProcPtr) (GLenum target); | ||
540 | typedef void (* glGetBufferParameterivARBProcPtr) (GLenum target, GLenum pname, GLint *params); | ||
541 | typedef void (* glGetBufferPointervARBProcPtr) (GLenum target, GLenum pname, GLvoid* *params); | ||
542 | #else | ||
543 | extern void glBindBufferARB (GLenum, GLuint); | ||
544 | extern void glDeleteBuffersARB (GLsizei, const GLuint *); | ||
545 | extern void glGenBuffersARB (GLsizei, GLuint *); | ||
546 | extern GLboolean glIsBufferARB (GLuint); | ||
547 | extern void glBufferDataARB (GLenum, GLsizeiptrARB, const GLvoid *, GLenum); | ||
548 | extern void glBufferSubDataARB (GLenum, GLintptrARB, GLsizeiptrARB, const GLvoid *); | ||
549 | extern void glGetBufferSubDataARB (GLenum, GLintptrARB, GLsizeiptrARB, GLvoid *); | ||
550 | extern GLvoid* glMapBufferARB (GLenum, GLenum); | ||
551 | extern GLboolean glUnmapBufferARB (GLenum); | ||
552 | extern void glGetBufferParameterivARB (GLenum, GLenum, GLint *); | ||
553 | extern void glGetBufferPointervARB (GLenum, GLenum, GLvoid* *); | ||
554 | #endif /* GL_GLEXT_FUNCTION_POINTERS */ | ||
555 | #endif | ||
556 | |||
557 | // May be needed for DARWIN... | ||
558 | // #ifndef GL_ARB_compressed_tex_image | ||
559 | // #define GL_ARB_compressed_tex_image 1 | ||
560 | // #ifdef GL_GLEXT_FUNCTION_POINTERS | ||
561 | // typedef void (* glCompressedTexImage1D) (GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid*); | ||
562 | // typedef void (* glCompressedTexImage2D) (GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid*); | ||
563 | // typedef void (* glCompressedTexImage3D) (GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid*); | ||
564 | // typedef void (* glCompressedTexSubImage1D) (GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid*); | ||
565 | // typedef void (* glCompressedTexSubImage2D) (GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid*); | ||
566 | // typedef void (* glCompressedTexSubImage3D) (GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid*); | ||
567 | // typedef void (* glGetCompressedTexImage) (GLenum, GLint, GLvoid*); | ||
568 | // #else | ||
569 | // extern void glCompressedTexImage1D (GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid*); | ||
570 | // extern void glCompressedTexImage2D (GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid*); | ||
571 | // extern void glCompressedTexImage3D (GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid*); | ||
572 | // extern void glCompressedTexSubImage1D (GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid*); | ||
573 | // extern void glCompressedTexSubImage2D (GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid*); | ||
574 | // extern void glCompressedTexSubImage3D (GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid*); | ||
575 | // extern void glGetCompressedTexImage (GLenum, GLint, GLvoid*); | ||
576 | // #endif /* GL_GLEXT_FUNCTION_POINTERS */ | ||
577 | // #endif | ||
578 | |||
579 | #ifdef __cplusplus | ||
580 | } | ||
581 | #endif | ||
582 | |||
583 | #include <AGL/gl.h> | ||
584 | |||
585 | #endif // LL_MESA / LL_WINDOWS / LL_DARWIN | ||
586 | |||
587 | |||
588 | #endif // LL_LLGLHEADERS_H | ||