Diligent Engine  v.2.4.g
GLStubsIOS.h
Go to the documentation of this file.
1 /*
2  * Copyright 2019-2021 Diligent Graphics LLC
3  * Copyright 2015-2019 Egor Yusov
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * In no event and under no legal theory, whether in tort (including negligence),
18  * contract, or otherwise, unless required by applicable law (such as deliberate
19  * and grossly negligent acts) or agreed to in writing, shall any Contributor be
20  * liable for any damages, including any direct, indirect, special, incidental,
21  * or consequential damages of any character arising as a result of this License or
22  * out of the use or inability to use the software (including but not limited to damages
23  * for loss of goodwill, work stoppage, computer failure or malfunction, or any and
24  * all other commercial damages or losses), even if such Contributor has been advised
25  * of the possibility of such damages.
26  */
27 
28 #pragma once
29 
30 #include "Errors.hpp"
31 
32 #ifndef GLAPIENTRY
33 # define GLAPIENTRY
34 #endif
35 
36 #define glUseProgramStages glUseProgramStagesEXT
37 #define glActiveShaderProgram glActiveShaderProgramEXT
38 #define glCreateShaderProgramv glCreateShaderProgramvEXT
39 #define glBindProgramPipeline glBindProgramPipelineEXT
40 #define glDeleteProgramPipelines glDeleteProgramPipelinesEXT
41 #define glGenProgramPipelines glGenProgramPipelinesEXT
42 #define glIsProgramPipeline glIsProgramPipelineEXT
43 #define glProgramParameteri glProgramParameteriEXT
44 #define glGetProgramPipelineiv glGetProgramPipelineivEXT
45 #define glValidateProgramPipeline glValidateProgramPipelineEXT
46 #define glGetProgramPipelineInfoLog glGetProgramPipelineInfoLogEXT
47 #define glProgramUniform1i glProgramUniform1iEXT
48 
49 #define GL_VERTEX_SHADER_BIT GL_VERTEX_SHADER_BIT_EXT
50 #define GL_FRAGMENT_SHADER_BIT GL_FRAGMENT_SHADER_BIT_EXT
51 #define GL_ALL_SHADER_BITS GL_ALL_SHADER_BITS_EXT
52 #define GL_PROGRAM_SEPARABLE GL_PROGRAM_SEPARABLE_EXT
53 #define GL_ACTIVE_PROGRAM GL_ACTIVE_PROGRAM_EXT
54 #define GL_PROGRAM_PIPELINE_BINDING GL_PROGRAM_PIPELINE_BINDING_EXT
55 
56 #define GL_ARB_shader_image_load_store 0
57 #define GL_ARB_shader_storage_buffer_object 0
58 #define GL_ARB_tessellation_shader 0
59 #define GL_ARB_draw_indirect 0
60 #define GL_ARB_compute_shader 0
61 #define GL_ARB_program_interface_query 0
62 #define GL_ARB_internalformat_query2 0
63 #define GL_ARB_texture_storage_multisample 0
64 
65 #ifndef GL_CLAMP_TO_BORDER
66 # define GL_CLAMP_TO_BORDER GL_CLAMP_TO_EDGE
67 #endif
68 
69 #ifndef GL_MIRROR_CLAMP_TO_EDGE
70 # define GL_MIRROR_CLAMP_TO_EDGE GL_CLAMP_TO_EDGE
71 #endif
72 
73 #ifndef GL_UNSIGNED_INT_10_10_10_2
74 # define GL_UNSIGNED_INT_10_10_10_2 0x8036
75 #endif
76 
77 #ifndef GL_UNSIGNED_SHORT_5_6_5_REV
78 # define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
79 #endif
80 
81 #ifndef GL_TEXTURE_BUFFER
82 # define GL_TEXTURE_BUFFER 0
83 #endif
84 
85 #define glTexBuffer(...) 0
86 
87 #ifndef GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER
88 # define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8CDB
89 #endif
90 
91 #ifndef GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER
92 # define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC
93 #endif
94 
95 #ifndef GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS
96 # define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8
97 #endif
98 
99 #ifndef GL_DRAW_INDIRECT_BUFFER
100 # define GL_DRAW_INDIRECT_BUFFER 0
101 #endif
102 
103 #ifndef GL_GEOMETRY_SHADER
104 # define GL_GEOMETRY_SHADER 0x8DD9
105 #endif
106 
107 #ifndef GL_TESS_CONTROL_SHADER
108 # define GL_TESS_CONTROL_SHADER 0x8E88
109 #endif
110 
111 #ifndef GL_TESS_EVALUATION_SHADER
112 # define GL_TESS_EVALUATION_SHADER 0x8E87
113 #endif
114 
115 #ifndef GL_COMPUTE_SHADER
116 # define GL_COMPUTE_SHADER 0x91B9
117 #endif
118 
119 #ifndef GL_GEOMETRY_SHADER_BIT
120 # define GL_GEOMETRY_SHADER_BIT 0x00000004
121 #endif
122 
123 #ifndef GL_TESS_CONTROL_SHADER_BIT
124 # define GL_TESS_CONTROL_SHADER_BIT 0x00000008
125 #endif
126 
127 #ifndef GL_TESS_EVALUATION_SHADER_BIT
128 # define GL_TESS_EVALUATION_SHADER_BIT 0x00000010
129 #endif
130 
131 #ifndef GL_COMPUTE_SHADER_BIT
132 # define GL_COMPUTE_SHADER_BIT 0x00000020
133 #endif
134 
135 #ifndef GL_SAMPLER_BUFFER
136 # define GL_SAMPLER_BUFFER 0x8DC2
137 #endif
138 
139 #ifndef GL_INT_SAMPLER_BUFFER
140 # define GL_INT_SAMPLER_BUFFER 0x8DD0
141 #endif
142 
143 #ifndef GL_UNSIGNED_INT_SAMPLER_BUFFER
144 # define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8
145 #endif
146 
147 #ifndef GL_SAMPLER_EXTERNAL_OES
148 # define GL_SAMPLER_EXTERNAL_OES 0x8D66
149 #endif
150 
151 
152 // Polygon mode
153 #ifndef GL_POINT
154 # define GL_POINT 0x1B00
155 #endif
156 
157 #ifndef GL_LINE
158 # define GL_LINE 0x1B01
159 #endif
160 
161 #ifndef GL_FILL
162 # define GL_FILL 0x1B02
163 #endif
164 
165 #ifndef GL_DEPTH_CLAMP
166 # define GL_DEPTH_CLAMP 0
167 #endif
168 
169 
170 // Define unsupported formats for OpenGL ES
171 #ifndef GL_RGBA16
172 # define GL_RGBA16 0x805B
173 #endif
174 
175 #ifndef GL_RGBA16_SNORM
176 # define GL_RGBA16_SNORM 0x8F9B
177 #endif
178 
179 #ifndef GL_RG16
180 # define GL_RG16 0x822C
181 #endif
182 
183 #ifndef GL_RG16_SNORM
184 # define GL_RG16_SNORM 0x8F99
185 #endif
186 
187 #ifndef GL_R16
188 # define GL_R16 0x822A
189 #endif
190 
191 #ifndef GL_R16_SNORM
192 # define GL_R16_SNORM 0x8F98
193 #endif
194 
195 #ifndef GL_COMPRESSED_RGB_S3TC_DXT1_EXT
196 # define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
197 #endif
198 
199 #ifndef GL_COMPRESSED_SRGB_S3TC_DXT1_EXT
200 # define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
201 #endif
202 
203 #ifndef GL_COMPRESSED_RGBA_S3TC_DXT3_EXT
204 # define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
205 #endif
206 
207 #ifndef GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT
208 # define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
209 #endif
210 
211 #ifndef GL_COMPRESSED_RGBA_S3TC_DXT5_EXT
212 # define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
213 #endif
214 
215 #ifndef GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT
216 # define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
217 #endif
218 
219 #ifndef GL_COMPRESSED_RED_RGTC1
220 # define GL_COMPRESSED_RED_RGTC1 0x8DBB
221 #endif
222 
223 #ifndef GL_COMPRESSED_SIGNED_RED_RGTC1
224 # define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC
225 #endif
226 
227 #ifndef GL_COMPRESSED_RG_RGTC2
228 # define GL_COMPRESSED_RG_RGTC2 0x8DBD
229 #endif
230 
231 #ifndef GL_COMPRESSED_SIGNED_RG_RGTC2
232 # define GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE
233 #endif
234 
235 #ifndef GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT
236 # define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT 0x8E8F
237 #endif
238 
239 #ifndef GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT
240 # define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT 0x8E8E
241 #endif
242 
243 #ifndef GL_COMPRESSED_RGBA_BPTC_UNORM
244 # define GL_COMPRESSED_RGBA_BPTC_UNORM 0x8E8C
245 #endif
246 
247 #ifndef GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM
248 # define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM 0x8E8D
249 #endif
250 
251 #ifndef GL_UNSIGNED_SHORT_5_6_5_REV
252 # define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
253 #endif
254 
255 #ifndef GL_UNSIGNED_INT_10_10_10_2
256 # define GL_UNSIGNED_INT_10_10_10_2 0x8036
257 #endif
258 
259 #ifndef GL_UNSIGNED_SHORT_5_6_5_REV
260 # define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
261 #endif
262 
263 #ifndef GL_UNSIGNED_SHORT_1_5_5_5_REV
264 # define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
265 #endif
266 
267 
268 // Define unsupported uniform data types
269 #ifndef GL_SAMPLER_1D
270 # define GL_SAMPLER_1D 0x8B5D
271 #endif
272 
273 #ifndef GL_SAMPLER_1D_SHADOW
274 # define GL_SAMPLER_1D_SHADOW 0x8B61
275 #endif
276 
277 #ifndef GL_SAMPLER_1D_ARRAY
278 # define GL_SAMPLER_1D_ARRAY 0x8DC0
279 #endif
280 
281 #ifndef GL_SAMPLER_1D_ARRAY_SHADOW
282 # define GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3
283 #endif
284 
285 #ifndef GL_INT_SAMPLER_1D
286 # define GL_INT_SAMPLER_1D 0x8DC9
287 #endif
288 
289 #ifndef GL_INT_SAMPLER_1D_ARRAY
290 # define GL_INT_SAMPLER_1D_ARRAY 0x8DCE
291 #endif
292 
293 #ifndef GL_UNSIGNED_INT_SAMPLER_1D
294 # define GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1
295 #endif
296 
297 #ifndef GL_UNSIGNED_INT_SAMPLER_1D_ARRAY
298 # define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6
299 #endif
300 
301 #ifndef GL_SAMPLER_CUBE_MAP_ARRAY
302 # define GL_SAMPLER_CUBE_MAP_ARRAY 0x900C
303 #endif
304 
305 #ifndef GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW
306 # define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW 0x900D
307 #endif
308 
309 #ifndef GL_INT_SAMPLER_CUBE_MAP_ARRAY
310 # define GL_INT_SAMPLER_CUBE_MAP_ARRAY 0x900E
311 #endif
312 
313 #ifndef GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY
314 # define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY 0x900F
315 #endif
316 
317 #ifndef GL_SAMPLER_BUFFER
318 # define GL_SAMPLER_BUFFER 0x8DC2
319 #endif
320 
321 #ifndef GL_INT_SAMPLER_BUFFER
322 # define GL_INT_SAMPLER_BUFFER 0x8DD0
323 #endif
324 
325 #ifndef GL_UNSIGNED_INT_SAMPLER_BUFFER
326 # define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8
327 #endif
328 
329 #ifndef GL_SAMPLER_2D_MULTISAMPLE
330 # define GL_SAMPLER_2D_MULTISAMPLE 0x9108
331 #endif
332 
333 #ifndef GL_INT_SAMPLER_2D_MULTISAMPLE
334 # define GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109
335 #endif
336 
337 #ifndef GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE
338 # define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A
339 #endif
340 
341 #ifndef GL_SAMPLER_2D_MULTISAMPLE_ARRAY
342 # define GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B
343 #endif
344 
345 #ifndef GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY
346 # define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C
347 #endif
348 
349 #ifndef GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY
350 # define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D
351 #endif
352 
353 
354 // Blend functions
355 #ifndef GL_SRC1_COLOR
356 # define GL_SRC1_COLOR 0x88F9
357 #endif
358 
359 #ifndef GL_ONE_MINUS_SRC1_COLOR
360 # define GL_ONE_MINUS_SRC1_COLOR 0x88FA
361 #endif
362 
363 #ifndef GL_SOURCE1_ALPHA
364 # define GL_SOURCE1_ALPHA 0x8589
365 #endif
366 
367 #ifndef GL_SRC1_ALPHA
368 # define GL_SRC1_ALPHA GL_SOURCE1_ALPHA
369 #endif
370 
371 #ifndef GL_ONE_MINUS_SRC1_ALPHA
372 # define GL_ONE_MINUS_SRC1_ALPHA 0x88FB
373 #endif
374 
375 
376 #ifndef GL_READ_ONLY
377 # define GL_READ_ONLY 0x88B8
378 #endif
379 
380 #ifndef GL_WRITE_ONLY
381 # define GL_WRITE_ONLY 0x88B9
382 #endif
383 
384 #ifndef GL_READ_WRITE
385 # define GL_READ_WRITE 0x88BA
386 #endif
387 
388 
389 
390 // Define unsupported sampler attributes
391 #ifndef GL_TEXTURE_LOD_BIAS
392 # define GL_TEXTURE_LOD_BIAS 0
393 #endif
394 
395 #ifndef GL_TEXTURE_BORDER_COLOR
396 # define GL_TEXTURE_BORDER_COLOR 0
397 #endif
398 
399 
400 
401 
402 #ifndef GL_TEXTURE_1D
403 # define GL_TEXTURE_1D 0x0DE0
404 #endif
405 
406 #ifndef GL_TEXTURE_1D_ARRAY
407 # define GL_TEXTURE_1D_ARRAY 0x8C18
408 #endif
409 
410 #ifndef GL_TEXTURE_BINDING_1D_ARRAY
411 # define GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C
412 #endif
413 
414 #ifndef GL_TEXTURE_BINDING_1D
415 # define GL_TEXTURE_BINDING_1D 0x8068
416 #endif
417 
418 #ifndef GL_TEXTURE_2D_MULTISAMPLE
419 # define GL_TEXTURE_2D_MULTISAMPLE 0x9100
420 #endif
421 
422 #ifndef GL_TEXTURE_BINDING_2D_MULTISAMPLE
423 # define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104
424 #endif
425 
426 #ifndef GL_TEXTURE_2D_MULTISAMPLE_ARRAY
427 # define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102
428 #endif
429 
430 #ifndef GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY
431 # define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105
432 #endif
433 
434 #ifndef GL_TEXTURE_CUBE_MAP_ARRAY
435 # define GL_TEXTURE_CUBE_MAP_ARRAY 0x9009
436 #endif
437 
438 #ifndef GL_TEXTURE_BINDING_CUBE_MAP_ARRAY
439 # define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY 0x900A
440 #endif
441 
442 //#ifndef GL_TEXTURE_BUFFER
443 //# define GL_TEXTURE_BUFFER 0x8C2A
444 //#endif
445 
446 
447 #ifndef GL_TEXTURE_WIDTH
448 # define GL_TEXTURE_WIDTH 0
449 #endif
450 
451 #ifndef GL_TEXTURE_HEIGHT
452 # define GL_TEXTURE_HEIGHT 0
453 #endif
454 
455 #ifndef GL_TEXTURE_DEPTH
456 # define GL_TEXTURE_DEPTH 0
457 #endif
458 
459 #ifndef GL_TEXTURE_INTERNAL_FORMAT
460 # define GL_TEXTURE_INTERNAL_FORMAT 0
461 #endif
462 
463 #ifndef GL_TEXTURE_INTERNAL_FORMAT
464 # define GL_TEXTURE_INTERNAL_FORMAT 0
465 #endif
466 
467 
468 
469 
470 #ifndef GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT
471 # define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT 0x00000001
472 #endif
473 #ifndef GL_ELEMENT_ARRAY_BARRIER_BIT
474 # define GL_ELEMENT_ARRAY_BARRIER_BIT 0x00000002
475 #endif
476 #ifndef GL_UNIFORM_BARRIER_BIT
477 # define GL_UNIFORM_BARRIER_BIT 0x00000004
478 #endif
479 #ifndef GL_TEXTURE_FETCH_BARRIER_BIT
480 # define GL_TEXTURE_FETCH_BARRIER_BIT 0x00000008
481 #endif
482 #ifndef GL_SHADER_IMAGE_ACCESS_BARRIER_BIT
483 # define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT 0x00000020
484 #endif
485 #ifndef GL_COMMAND_BARRIER_BIT
486 # define GL_COMMAND_BARRIER_BIT 0x00000040
487 #endif
488 #ifndef GL_PIXEL_BUFFER_BARRIER_BIT
489 # define GL_PIXEL_BUFFER_BARRIER_BIT 0x00000080
490 #endif
491 #ifndef GL_TEXTURE_UPDATE_BARRIER_BIT
492 # define GL_TEXTURE_UPDATE_BARRIER_BIT 0x00000100
493 #endif
494 #ifndef GL_BUFFER_UPDATE_BARRIER_BIT
495 # define GL_BUFFER_UPDATE_BARRIER_BIT 0x00000200
496 #endif
497 #ifndef GL_FRAMEBUFFER_BARRIER_BIT
498 # define GL_FRAMEBUFFER_BARRIER_BIT 0x00000400
499 #endif
500 #ifndef GL_TRANSFORM_FEEDBACK_BARRIER_BIT
501 # define GL_TRANSFORM_FEEDBACK_BARRIER_BIT 0x00000800
502 #endif
503 #ifndef GL_ATOMIC_COUNTER_BARRIER_BIT
504 # define GL_ATOMIC_COUNTER_BARRIER_BIT 0x00001000
505 #endif
506 #ifndef GL_SHADER_STORAGE_BARRIER_BIT
507 # define GL_SHADER_STORAGE_BARRIER_BIT 0x00002000
508 #endif
509 #ifndef GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT
510 # define GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT 0x00004000
511 #endif
512 #ifndef GL_QUERY_BUFFER_BARRIER_BIT
513 # define GL_QUERY_BUFFER_BARRIER_BIT 0x00008000
514 #endif
515 #ifndef GL_ALL_BARRIER_BITS
516 # define GL_ALL_BARRIER_BITS 0xFFFFFFFF
517 #endif
518 
519 
520 #ifndef GL_SAMPLES_PASSED
521 # define GL_SAMPLES_PASSED 0
522 #endif
523 
524 #ifndef GL_PRIMITIVES_GENERATED
525 # define GL_PRIMITIVES_GENERATED 0
526 #endif
527 
528 
529 // Define unsupported GL function stubs
530 template <typename T>
531 void UnsupportedGLFunctionStub(const T& Name)
532 {
533  LOG_ERROR_MESSAGE(Name, "() is not supported on iOS!\n");
534 }
535 
536 #define glDrawElementsInstancedBaseVertexBaseInstance(...) UnsupportedGLFunctionStub("glDrawElementsInstancedBaseVertexBaseInstance")
537 #define glDrawElementsInstancedBaseVertex(...) UnsupportedGLFunctionStub("glDrawElementsInstancedBaseVertex")
538 #define glDrawElementsInstancedBaseInstance(...) UnsupportedGLFunctionStub("glDrawElementsInstancedBaseInstance")
539 #define glDrawArraysInstancedBaseInstance(...) UnsupportedGLFunctionStub("glDrawArraysInstancedBaseInstance")
540 #define glDrawElementsBaseVertex(...) UnsupportedGLFunctionStub("glDrawElementsBaseVertex")
541 #define glTextureView(...) UnsupportedGLFunctionStub("glTextureView")
542 #define glTexStorage1D(...) UnsupportedGLFunctionStub("glTexStorage1D")
543 #define glTexSubImage1D(...) UnsupportedGLFunctionStub("glTexSubImage1D")
544 #define glTexStorage3DMultisample(...) UnsupportedGLFunctionStub("glTexStorage3DMultisample")
545 #define glViewportIndexedf(...) UnsupportedGLFunctionStub("glViewportIndexedf")
546 #define glScissorIndexed(...) UnsupportedGLFunctionStub("glScissorIndexed")
547 static void (*glPolygonMode)(GLenum face, GLenum mode) = nullptr;
548 #define glEnablei(...) UnsupportedGLFunctionStub("glEnablei")
549 #define glBlendFuncSeparatei(...) UnsupportedGLFunctionStub("glBlendFuncSeparatei")
550 #define glBlendEquationSeparatei(...) UnsupportedGLFunctionStub("glBlendEquationSeparatei")
551 #define glDisablei(...) UnsupportedGLFunctionStub("glDisablei")
552 #define glColorMaski(...) UnsupportedGLFunctionStub("glColorMaski")
553 #define glFramebufferTexture(...) UnsupportedGLFunctionStub("glFramebufferTexture")
554 #define glFramebufferTexture1D(...) UnsupportedGLFunctionStub("glFramebufferTexture1D")
555 static void (*glGetQueryObjectui64v)(GLuint id, GLenum pname, GLuint64* params) = nullptr;
LOG_ERROR_MESSAGE
#define LOG_ERROR_MESSAGE(...)
Definition: Errors.hpp:122
glGetQueryObjectui64v
PFNGLGETQUERYOBJECTUI64VPROC glGetQueryObjectui64v
UnsupportedGLFunctionStub
void UnsupportedGLFunctionStub(const T &Name)
Definition: GLStubsIOS.h:531
glPolygonMode
PFNGLPOLYGONMODE glPolygonMode
Errors.hpp