-
Notifications
You must be signed in to change notification settings - Fork 130
/
glext.bi
10568 lines (10005 loc) · 779 KB
/
glext.bi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
'' FreeBASIC binding for mingw-w64-v4.0.4
''
'' based on the C header files:
'' Copyright (c) 2013-2014 The Khronos Group Inc.
''
'' Permission is hereby granted, free of charge, to any person obtaining a
'' copy of this software and/or associated documentation files (the
'' "Materials"), to deal in the Materials without restriction, including
'' without limitation the rights to use, copy, modify, merge, publish,
'' distribute, sublicense, and/or sell copies of the Materials, and to
'' permit persons to whom the Materials are furnished to do so, subject to
'' the following conditions:
''
'' The above copyright notice and this permission notice shall be included
'' in all copies or substantial portions of the Materials.
''
'' THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
'' EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
'' MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
'' IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
'' CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
'' TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
'' MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
''
'' translated to FreeBASIC by:
'' FreeBASIC development team
#pragma once
#include once "GL/windows/gl.bi"
extern "Windows"
const __glext_h_ = 1
const GL_GLEXT_VERSION = 20150104
const GL_VERSION_1_2 = 1
const GL_UNSIGNED_BYTE_3_3_2 = &h8032
const GL_UNSIGNED_SHORT_4_4_4_4 = &h8033
const GL_UNSIGNED_SHORT_5_5_5_1 = &h8034
const GL_UNSIGNED_INT_8_8_8_8 = &h8035
const GL_UNSIGNED_INT_10_10_10_2 = &h8036
const GL_TEXTURE_BINDING_3D = &h806A
const GL_PACK_SKIP_IMAGES = &h806B
const GL_PACK_IMAGE_HEIGHT = &h806C
const GL_UNPACK_SKIP_IMAGES = &h806D
const GL_UNPACK_IMAGE_HEIGHT = &h806E
const GL_TEXTURE_3D = &h806F
const GL_PROXY_TEXTURE_3D = &h8070
const GL_TEXTURE_DEPTH = &h8071
const GL_TEXTURE_WRAP_R = &h8072
const GL_MAX_3D_TEXTURE_SIZE = &h8073
const GL_UNSIGNED_BYTE_2_3_3_REV = &h8362
const GL_UNSIGNED_SHORT_5_6_5 = &h8363
const GL_UNSIGNED_SHORT_5_6_5_REV = &h8364
const GL_UNSIGNED_SHORT_4_4_4_4_REV = &h8365
const GL_UNSIGNED_SHORT_1_5_5_5_REV = &h8366
const GL_UNSIGNED_INT_8_8_8_8_REV = &h8367
const GL_UNSIGNED_INT_2_10_10_10_REV = &h8368
const GL_BGR = &h80E0
const GL_BGRA = &h80E1
const GL_MAX_ELEMENTS_VERTICES = &h80E8
const GL_MAX_ELEMENTS_INDICES = &h80E9
const GL_CLAMP_TO_EDGE = &h812F
const GL_TEXTURE_MIN_LOD = &h813A
const GL_TEXTURE_MAX_LOD = &h813B
const GL_TEXTURE_BASE_LEVEL = &h813C
const GL_TEXTURE_MAX_LEVEL = &h813D
const GL_SMOOTH_POINT_SIZE_RANGE = &h0B12
const GL_SMOOTH_POINT_SIZE_GRANULARITY = &h0B13
const GL_SMOOTH_LINE_WIDTH_RANGE = &h0B22
const GL_SMOOTH_LINE_WIDTH_GRANULARITY = &h0B23
const GL_ALIASED_LINE_WIDTH_RANGE = &h846E
const GL_RESCALE_NORMAL = &h803A
const GL_LIGHT_MODEL_COLOR_CONTROL = &h81F8
const GL_SINGLE_COLOR = &h81F9
const GL_SEPARATE_SPECULAR_COLOR = &h81FA
const GL_ALIASED_POINT_SIZE_RANGE = &h846D
type PFNGLDRAWRANGEELEMENTSPROC as sub(byval mode as GLenum, byval start as GLuint, byval end as GLuint, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr)
type PFNGLTEXIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval internalformat as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval border as GLint, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr)
type PFNGLTEXSUBIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr)
type PFNGLCOPYTEXSUBIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei)
#ifdef GL_GLEXT_PROTOTYPES
declare sub glDrawRangeElements(byval mode as GLenum, byval start as GLuint, byval end as GLuint, byval count as GLsizei, byval type as GLenum, byval indices as const any ptr)
declare sub glTexImage3D(byval target as GLenum, byval level as GLint, byval internalformat as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval border as GLint, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr)
declare sub glTexSubImage3D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval type as GLenum, byval pixels as const any ptr)
declare sub glCopyTexSubImage3D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval x as GLint, byval y as GLint, byval width as GLsizei, byval height as GLsizei)
#endif
const GL_VERSION_1_3 = 1
const GL_TEXTURE0 = &h84C0
const GL_TEXTURE1 = &h84C1
const GL_TEXTURE2 = &h84C2
const GL_TEXTURE3 = &h84C3
const GL_TEXTURE4 = &h84C4
const GL_TEXTURE5 = &h84C5
const GL_TEXTURE6 = &h84C6
const GL_TEXTURE7 = &h84C7
const GL_TEXTURE8 = &h84C8
const GL_TEXTURE9 = &h84C9
const GL_TEXTURE10 = &h84CA
const GL_TEXTURE11 = &h84CB
const GL_TEXTURE12 = &h84CC
const GL_TEXTURE13 = &h84CD
const GL_TEXTURE14 = &h84CE
const GL_TEXTURE15 = &h84CF
const GL_TEXTURE16 = &h84D0
const GL_TEXTURE17 = &h84D1
const GL_TEXTURE18 = &h84D2
const GL_TEXTURE19 = &h84D3
const GL_TEXTURE20 = &h84D4
const GL_TEXTURE21 = &h84D5
const GL_TEXTURE22 = &h84D6
const GL_TEXTURE23 = &h84D7
const GL_TEXTURE24 = &h84D8
const GL_TEXTURE25 = &h84D9
const GL_TEXTURE26 = &h84DA
const GL_TEXTURE27 = &h84DB
const GL_TEXTURE28 = &h84DC
const GL_TEXTURE29 = &h84DD
const GL_TEXTURE30 = &h84DE
const GL_TEXTURE31 = &h84DF
const GL_ACTIVE_TEXTURE = &h84E0
const GL_MULTISAMPLE = &h809D
const GL_SAMPLE_ALPHA_TO_COVERAGE = &h809E
const GL_SAMPLE_ALPHA_TO_ONE = &h809F
const GL_SAMPLE_COVERAGE = &h80A0
const GL_SAMPLE_BUFFERS = &h80A8
const GL_SAMPLES = &h80A9
const GL_SAMPLE_COVERAGE_VALUE = &h80AA
const GL_SAMPLE_COVERAGE_INVERT = &h80AB
const GL_TEXTURE_CUBE_MAP = &h8513
const GL_TEXTURE_BINDING_CUBE_MAP = &h8514
const GL_TEXTURE_CUBE_MAP_POSITIVE_X = &h8515
const GL_TEXTURE_CUBE_MAP_NEGATIVE_X = &h8516
const GL_TEXTURE_CUBE_MAP_POSITIVE_Y = &h8517
const GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = &h8518
const GL_TEXTURE_CUBE_MAP_POSITIVE_Z = &h8519
const GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = &h851A
const GL_PROXY_TEXTURE_CUBE_MAP = &h851B
const GL_MAX_CUBE_MAP_TEXTURE_SIZE = &h851C
const GL_COMPRESSED_RGB = &h84ED
const GL_COMPRESSED_RGBA = &h84EE
const GL_TEXTURE_COMPRESSION_HINT = &h84EF
const GL_TEXTURE_COMPRESSED_IMAGE_SIZE = &h86A0
const GL_TEXTURE_COMPRESSED = &h86A1
const GL_NUM_COMPRESSED_TEXTURE_FORMATS = &h86A2
const GL_COMPRESSED_TEXTURE_FORMATS = &h86A3
const GL_CLAMP_TO_BORDER = &h812D
const GL_CLIENT_ACTIVE_TEXTURE = &h84E1
const GL_MAX_TEXTURE_UNITS = &h84E2
const GL_TRANSPOSE_MODELVIEW_MATRIX = &h84E3
const GL_TRANSPOSE_PROJECTION_MATRIX = &h84E4
const GL_TRANSPOSE_TEXTURE_MATRIX = &h84E5
const GL_TRANSPOSE_COLOR_MATRIX = &h84E6
const GL_MULTISAMPLE_BIT = &h20000000
const GL_NORMAL_MAP = &h8511
const GL_REFLECTION_MAP = &h8512
const GL_COMPRESSED_ALPHA = &h84E9
const GL_COMPRESSED_LUMINANCE = &h84EA
const GL_COMPRESSED_LUMINANCE_ALPHA = &h84EB
const GL_COMPRESSED_INTENSITY = &h84EC
const GL_COMBINE = &h8570
const GL_COMBINE_RGB = &h8571
const GL_COMBINE_ALPHA = &h8572
const GL_SOURCE0_RGB = &h8580
const GL_SOURCE1_RGB = &h8581
const GL_SOURCE2_RGB = &h8582
const GL_SOURCE0_ALPHA = &h8588
const GL_SOURCE1_ALPHA = &h8589
const GL_SOURCE2_ALPHA = &h858A
const GL_OPERAND0_RGB = &h8590
const GL_OPERAND1_RGB = &h8591
const GL_OPERAND2_RGB = &h8592
const GL_OPERAND0_ALPHA = &h8598
const GL_OPERAND1_ALPHA = &h8599
const GL_OPERAND2_ALPHA = &h859A
const GL_RGB_SCALE = &h8573
const GL_ADD_SIGNED = &h8574
const GL_INTERPOLATE = &h8575
const GL_SUBTRACT = &h84E7
const GL_CONSTANT = &h8576
const GL_PRIMARY_COLOR = &h8577
const GL_PREVIOUS = &h8578
const GL_DOT3_RGB = &h86AE
const GL_DOT3_RGBA = &h86AF
type PFNGLACTIVETEXTUREPROC as sub(byval texture as GLenum)
type PFNGLSAMPLECOVERAGEPROC as sub(byval value as GLfloat, byval invert as GLboolean)
type PFNGLCOMPRESSEDTEXIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr)
type PFNGLCOMPRESSEDTEXIMAGE2DPROC as sub(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr)
type PFNGLCOMPRESSEDTEXIMAGE1DPROC as sub(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr)
type PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr)
type PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr)
type PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC as sub(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval width as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr)
type PFNGLGETCOMPRESSEDTEXIMAGEPROC as sub(byval target as GLenum, byval level as GLint, byval img as any ptr)
type PFNGLCLIENTACTIVETEXTUREPROC as sub(byval texture as GLenum)
type PFNGLMULTITEXCOORD1DPROC as sub(byval target as GLenum, byval s as GLdouble)
type PFNGLMULTITEXCOORD1DVPROC as sub(byval target as GLenum, byval v as const GLdouble ptr)
type PFNGLMULTITEXCOORD1FPROC as sub(byval target as GLenum, byval s as GLfloat)
type PFNGLMULTITEXCOORD1FVPROC as sub(byval target as GLenum, byval v as const GLfloat ptr)
type PFNGLMULTITEXCOORD1IPROC as sub(byval target as GLenum, byval s as GLint)
type PFNGLMULTITEXCOORD1IVPROC as sub(byval target as GLenum, byval v as const GLint ptr)
type PFNGLMULTITEXCOORD1SPROC as sub(byval target as GLenum, byval s as GLshort)
type PFNGLMULTITEXCOORD1SVPROC as sub(byval target as GLenum, byval v as const GLshort ptr)
type PFNGLMULTITEXCOORD2DPROC as sub(byval target as GLenum, byval s as GLdouble, byval t as GLdouble)
type PFNGLMULTITEXCOORD2DVPROC as sub(byval target as GLenum, byval v as const GLdouble ptr)
type PFNGLMULTITEXCOORD2FPROC as sub(byval target as GLenum, byval s as GLfloat, byval t as GLfloat)
type PFNGLMULTITEXCOORD2FVPROC as sub(byval target as GLenum, byval v as const GLfloat ptr)
type PFNGLMULTITEXCOORD2IPROC as sub(byval target as GLenum, byval s as GLint, byval t as GLint)
type PFNGLMULTITEXCOORD2IVPROC as sub(byval target as GLenum, byval v as const GLint ptr)
type PFNGLMULTITEXCOORD2SPROC as sub(byval target as GLenum, byval s as GLshort, byval t as GLshort)
type PFNGLMULTITEXCOORD2SVPROC as sub(byval target as GLenum, byval v as const GLshort ptr)
type PFNGLMULTITEXCOORD3DPROC as sub(byval target as GLenum, byval s as GLdouble, byval t as GLdouble, byval r as GLdouble)
type PFNGLMULTITEXCOORD3DVPROC as sub(byval target as GLenum, byval v as const GLdouble ptr)
type PFNGLMULTITEXCOORD3FPROC as sub(byval target as GLenum, byval s as GLfloat, byval t as GLfloat, byval r as GLfloat)
type PFNGLMULTITEXCOORD3FVPROC as sub(byval target as GLenum, byval v as const GLfloat ptr)
type PFNGLMULTITEXCOORD3IPROC as sub(byval target as GLenum, byval s as GLint, byval t as GLint, byval r as GLint)
type PFNGLMULTITEXCOORD3IVPROC as sub(byval target as GLenum, byval v as const GLint ptr)
type PFNGLMULTITEXCOORD3SPROC as sub(byval target as GLenum, byval s as GLshort, byval t as GLshort, byval r as GLshort)
type PFNGLMULTITEXCOORD3SVPROC as sub(byval target as GLenum, byval v as const GLshort ptr)
type PFNGLMULTITEXCOORD4DPROC as sub(byval target as GLenum, byval s as GLdouble, byval t as GLdouble, byval r as GLdouble, byval q as GLdouble)
type PFNGLMULTITEXCOORD4DVPROC as sub(byval target as GLenum, byval v as const GLdouble ptr)
type PFNGLMULTITEXCOORD4FPROC as sub(byval target as GLenum, byval s as GLfloat, byval t as GLfloat, byval r as GLfloat, byval q as GLfloat)
type PFNGLMULTITEXCOORD4FVPROC as sub(byval target as GLenum, byval v as const GLfloat ptr)
type PFNGLMULTITEXCOORD4IPROC as sub(byval target as GLenum, byval s as GLint, byval t as GLint, byval r as GLint, byval q as GLint)
type PFNGLMULTITEXCOORD4IVPROC as sub(byval target as GLenum, byval v as const GLint ptr)
type PFNGLMULTITEXCOORD4SPROC as sub(byval target as GLenum, byval s as GLshort, byval t as GLshort, byval r as GLshort, byval q as GLshort)
type PFNGLMULTITEXCOORD4SVPROC as sub(byval target as GLenum, byval v as const GLshort ptr)
type PFNGLLOADTRANSPOSEMATRIXFPROC as sub(byval m as const GLfloat ptr)
type PFNGLLOADTRANSPOSEMATRIXDPROC as sub(byval m as const GLdouble ptr)
type PFNGLMULTTRANSPOSEMATRIXFPROC as sub(byval m as const GLfloat ptr)
type PFNGLMULTTRANSPOSEMATRIXDPROC as sub(byval m as const GLdouble ptr)
#ifdef GL_GLEXT_PROTOTYPES
declare sub glActiveTexture(byval texture as GLenum)
declare sub glSampleCoverage(byval value as GLfloat, byval invert as GLboolean)
declare sub glCompressedTexImage3D(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr)
declare sub glCompressedTexImage2D(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval height as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr)
declare sub glCompressedTexImage1D(byval target as GLenum, byval level as GLint, byval internalformat as GLenum, byval width as GLsizei, byval border as GLint, byval imageSize as GLsizei, byval data as const any ptr)
declare sub glCompressedTexSubImage3D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval zoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval depth as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr)
declare sub glCompressedTexSubImage2D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval yoffset as GLint, byval width as GLsizei, byval height as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr)
declare sub glCompressedTexSubImage1D(byval target as GLenum, byval level as GLint, byval xoffset as GLint, byval width as GLsizei, byval format as GLenum, byval imageSize as GLsizei, byval data as const any ptr)
declare sub glGetCompressedTexImage(byval target as GLenum, byval level as GLint, byval img as any ptr)
declare sub glClientActiveTexture(byval texture as GLenum)
declare sub glMultiTexCoord1d(byval target as GLenum, byval s as GLdouble)
declare sub glMultiTexCoord1dv(byval target as GLenum, byval v as const GLdouble ptr)
declare sub glMultiTexCoord1f(byval target as GLenum, byval s as GLfloat)
declare sub glMultiTexCoord1fv(byval target as GLenum, byval v as const GLfloat ptr)
declare sub glMultiTexCoord1i(byval target as GLenum, byval s as GLint)
declare sub glMultiTexCoord1iv(byval target as GLenum, byval v as const GLint ptr)
declare sub glMultiTexCoord1s(byval target as GLenum, byval s as GLshort)
declare sub glMultiTexCoord1sv(byval target as GLenum, byval v as const GLshort ptr)
declare sub glMultiTexCoord2d(byval target as GLenum, byval s as GLdouble, byval t as GLdouble)
declare sub glMultiTexCoord2dv(byval target as GLenum, byval v as const GLdouble ptr)
declare sub glMultiTexCoord2f(byval target as GLenum, byval s as GLfloat, byval t as GLfloat)
declare sub glMultiTexCoord2fv(byval target as GLenum, byval v as const GLfloat ptr)
declare sub glMultiTexCoord2i(byval target as GLenum, byval s as GLint, byval t as GLint)
declare sub glMultiTexCoord2iv(byval target as GLenum, byval v as const GLint ptr)
declare sub glMultiTexCoord2s(byval target as GLenum, byval s as GLshort, byval t as GLshort)
declare sub glMultiTexCoord2sv(byval target as GLenum, byval v as const GLshort ptr)
declare sub glMultiTexCoord3d(byval target as GLenum, byval s as GLdouble, byval t as GLdouble, byval r as GLdouble)
declare sub glMultiTexCoord3dv(byval target as GLenum, byval v as const GLdouble ptr)
declare sub glMultiTexCoord3f(byval target as GLenum, byval s as GLfloat, byval t as GLfloat, byval r as GLfloat)
declare sub glMultiTexCoord3fv(byval target as GLenum, byval v as const GLfloat ptr)
declare sub glMultiTexCoord3i(byval target as GLenum, byval s as GLint, byval t as GLint, byval r as GLint)
declare sub glMultiTexCoord3iv(byval target as GLenum, byval v as const GLint ptr)
declare sub glMultiTexCoord3s(byval target as GLenum, byval s as GLshort, byval t as GLshort, byval r as GLshort)
declare sub glMultiTexCoord3sv(byval target as GLenum, byval v as const GLshort ptr)
declare sub glMultiTexCoord4d(byval target as GLenum, byval s as GLdouble, byval t as GLdouble, byval r as GLdouble, byval q as GLdouble)
declare sub glMultiTexCoord4dv(byval target as GLenum, byval v as const GLdouble ptr)
declare sub glMultiTexCoord4f(byval target as GLenum, byval s as GLfloat, byval t as GLfloat, byval r as GLfloat, byval q as GLfloat)
declare sub glMultiTexCoord4fv(byval target as GLenum, byval v as const GLfloat ptr)
declare sub glMultiTexCoord4i(byval target as GLenum, byval s as GLint, byval t as GLint, byval r as GLint, byval q as GLint)
declare sub glMultiTexCoord4iv(byval target as GLenum, byval v as const GLint ptr)
declare sub glMultiTexCoord4s(byval target as GLenum, byval s as GLshort, byval t as GLshort, byval r as GLshort, byval q as GLshort)
declare sub glMultiTexCoord4sv(byval target as GLenum, byval v as const GLshort ptr)
declare sub glLoadTransposeMatrixf(byval m as const GLfloat ptr)
declare sub glLoadTransposeMatrixd(byval m as const GLdouble ptr)
declare sub glMultTransposeMatrixf(byval m as const GLfloat ptr)
declare sub glMultTransposeMatrixd(byval m as const GLdouble ptr)
#endif
const GL_VERSION_1_4 = 1
const GL_BLEND_DST_RGB = &h80C8
const GL_BLEND_SRC_RGB = &h80C9
const GL_BLEND_DST_ALPHA = &h80CA
const GL_BLEND_SRC_ALPHA = &h80CB
const GL_POINT_FADE_THRESHOLD_SIZE = &h8128
const GL_DEPTH_COMPONENT16 = &h81A5
const GL_DEPTH_COMPONENT24 = &h81A6
const GL_DEPTH_COMPONENT32 = &h81A7
const GL_MIRRORED_REPEAT = &h8370
const GL_MAX_TEXTURE_LOD_BIAS = &h84FD
const GL_TEXTURE_LOD_BIAS = &h8501
const GL_INCR_WRAP = &h8507
const GL_DECR_WRAP = &h8508
const GL_TEXTURE_DEPTH_SIZE = &h884A
const GL_TEXTURE_COMPARE_MODE = &h884C
const GL_TEXTURE_COMPARE_FUNC = &h884D
const GL_POINT_SIZE_MIN = &h8126
const GL_POINT_SIZE_MAX = &h8127
const GL_POINT_DISTANCE_ATTENUATION = &h8129
const GL_GENERATE_MIPMAP = &h8191
const GL_GENERATE_MIPMAP_HINT = &h8192
const GL_FOG_COORDINATE_SOURCE = &h8450
const GL_FOG_COORDINATE = &h8451
const GL_FRAGMENT_DEPTH = &h8452
const GL_CURRENT_FOG_COORDINATE = &h8453
const GL_FOG_COORDINATE_ARRAY_TYPE = &h8454
const GL_FOG_COORDINATE_ARRAY_STRIDE = &h8455
const GL_FOG_COORDINATE_ARRAY_POINTER = &h8456
const GL_FOG_COORDINATE_ARRAY = &h8457
const GL_COLOR_SUM = &h8458
const GL_CURRENT_SECONDARY_COLOR = &h8459
const GL_SECONDARY_COLOR_ARRAY_SIZE = &h845A
const GL_SECONDARY_COLOR_ARRAY_TYPE = &h845B
const GL_SECONDARY_COLOR_ARRAY_STRIDE = &h845C
const GL_SECONDARY_COLOR_ARRAY_POINTER = &h845D
const GL_SECONDARY_COLOR_ARRAY = &h845E
const GL_TEXTURE_FILTER_CONTROL = &h8500
const GL_DEPTH_TEXTURE_MODE = &h884B
const GL_COMPARE_R_TO_TEXTURE = &h884E
const GL_FUNC_ADD = &h8006
const GL_FUNC_SUBTRACT = &h800A
const GL_FUNC_REVERSE_SUBTRACT = &h800B
const GL_MIN = &h8007
const GL_MAX = &h8008
const GL_CONSTANT_COLOR = &h8001
const GL_ONE_MINUS_CONSTANT_COLOR = &h8002
const GL_CONSTANT_ALPHA = &h8003
const GL_ONE_MINUS_CONSTANT_ALPHA = &h8004
type PFNGLBLENDFUNCSEPARATEPROC as sub(byval sfactorRGB as GLenum, byval dfactorRGB as GLenum, byval sfactorAlpha as GLenum, byval dfactorAlpha as GLenum)
type PFNGLMULTIDRAWARRAYSPROC as sub(byval mode as GLenum, byval first as const GLint ptr, byval count as const GLsizei ptr, byval drawcount as GLsizei)
type PFNGLMULTIDRAWELEMENTSPROC as sub(byval mode as GLenum, byval count as const GLsizei ptr, byval type as GLenum, byval indices as const any const ptr ptr, byval drawcount as GLsizei)
type PFNGLPOINTPARAMETERFPROC as sub(byval pname as GLenum, byval param as GLfloat)
type PFNGLPOINTPARAMETERFVPROC as sub(byval pname as GLenum, byval params as const GLfloat ptr)
type PFNGLPOINTPARAMETERIPROC as sub(byval pname as GLenum, byval param as GLint)
type PFNGLPOINTPARAMETERIVPROC as sub(byval pname as GLenum, byval params as const GLint ptr)
type PFNGLFOGCOORDFPROC as sub(byval coord as GLfloat)
type PFNGLFOGCOORDFVPROC as sub(byval coord as const GLfloat ptr)
type PFNGLFOGCOORDDPROC as sub(byval coord as GLdouble)
type PFNGLFOGCOORDDVPROC as sub(byval coord as const GLdouble ptr)
type PFNGLFOGCOORDPOINTERPROC as sub(byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr)
type PFNGLSECONDARYCOLOR3BPROC as sub(byval red as GLbyte, byval green as GLbyte, byval blue as GLbyte)
type PFNGLSECONDARYCOLOR3BVPROC as sub(byval v as const GLbyte ptr)
type PFNGLSECONDARYCOLOR3DPROC as sub(byval red as GLdouble, byval green as GLdouble, byval blue as GLdouble)
type PFNGLSECONDARYCOLOR3DVPROC as sub(byval v as const GLdouble ptr)
type PFNGLSECONDARYCOLOR3FPROC as sub(byval red as GLfloat, byval green as GLfloat, byval blue as GLfloat)
type PFNGLSECONDARYCOLOR3FVPROC as sub(byval v as const GLfloat ptr)
type PFNGLSECONDARYCOLOR3IPROC as sub(byval red as GLint, byval green as GLint, byval blue as GLint)
type PFNGLSECONDARYCOLOR3IVPROC as sub(byval v as const GLint ptr)
type PFNGLSECONDARYCOLOR3SPROC as sub(byval red as GLshort, byval green as GLshort, byval blue as GLshort)
type PFNGLSECONDARYCOLOR3SVPROC as sub(byval v as const GLshort ptr)
type PFNGLSECONDARYCOLOR3UBPROC as sub(byval red as GLubyte, byval green as GLubyte, byval blue as GLubyte)
type PFNGLSECONDARYCOLOR3UBVPROC as sub(byval v as const GLubyte ptr)
type PFNGLSECONDARYCOLOR3UIPROC as sub(byval red as GLuint, byval green as GLuint, byval blue as GLuint)
type PFNGLSECONDARYCOLOR3UIVPROC as sub(byval v as const GLuint ptr)
type PFNGLSECONDARYCOLOR3USPROC as sub(byval red as GLushort, byval green as GLushort, byval blue as GLushort)
type PFNGLSECONDARYCOLOR3USVPROC as sub(byval v as const GLushort ptr)
type PFNGLSECONDARYCOLORPOINTERPROC as sub(byval size as GLint, byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr)
type PFNGLWINDOWPOS2DPROC as sub(byval x as GLdouble, byval y as GLdouble)
type PFNGLWINDOWPOS2DVPROC as sub(byval v as const GLdouble ptr)
type PFNGLWINDOWPOS2FPROC as sub(byval x as GLfloat, byval y as GLfloat)
type PFNGLWINDOWPOS2FVPROC as sub(byval v as const GLfloat ptr)
type PFNGLWINDOWPOS2IPROC as sub(byval x as GLint, byval y as GLint)
type PFNGLWINDOWPOS2IVPROC as sub(byval v as const GLint ptr)
type PFNGLWINDOWPOS2SPROC as sub(byval x as GLshort, byval y as GLshort)
type PFNGLWINDOWPOS2SVPROC as sub(byval v as const GLshort ptr)
type PFNGLWINDOWPOS3DPROC as sub(byval x as GLdouble, byval y as GLdouble, byval z as GLdouble)
type PFNGLWINDOWPOS3DVPROC as sub(byval v as const GLdouble ptr)
type PFNGLWINDOWPOS3FPROC as sub(byval x as GLfloat, byval y as GLfloat, byval z as GLfloat)
type PFNGLWINDOWPOS3FVPROC as sub(byval v as const GLfloat ptr)
type PFNGLWINDOWPOS3IPROC as sub(byval x as GLint, byval y as GLint, byval z as GLint)
type PFNGLWINDOWPOS3IVPROC as sub(byval v as const GLint ptr)
type PFNGLWINDOWPOS3SPROC as sub(byval x as GLshort, byval y as GLshort, byval z as GLshort)
type PFNGLWINDOWPOS3SVPROC as sub(byval v as const GLshort ptr)
type PFNGLBLENDCOLORPROC as sub(byval red as GLfloat, byval green as GLfloat, byval blue as GLfloat, byval alpha as GLfloat)
type PFNGLBLENDEQUATIONPROC as sub(byval mode as GLenum)
#ifdef GL_GLEXT_PROTOTYPES
declare sub glBlendFuncSeparate(byval sfactorRGB as GLenum, byval dfactorRGB as GLenum, byval sfactorAlpha as GLenum, byval dfactorAlpha as GLenum)
declare sub glMultiDrawArrays(byval mode as GLenum, byval first as const GLint ptr, byval count as const GLsizei ptr, byval drawcount as GLsizei)
declare sub glMultiDrawElements(byval mode as GLenum, byval count as const GLsizei ptr, byval type as GLenum, byval indices as const any const ptr ptr, byval drawcount as GLsizei)
declare sub glPointParameterf(byval pname as GLenum, byval param as GLfloat)
declare sub glPointParameterfv(byval pname as GLenum, byval params as const GLfloat ptr)
declare sub glPointParameteri(byval pname as GLenum, byval param as GLint)
declare sub glPointParameteriv(byval pname as GLenum, byval params as const GLint ptr)
declare sub glFogCoordf(byval coord as GLfloat)
declare sub glFogCoordfv(byval coord as const GLfloat ptr)
declare sub glFogCoordd(byval coord as GLdouble)
declare sub glFogCoorddv(byval coord as const GLdouble ptr)
declare sub glFogCoordPointer(byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr)
declare sub glSecondaryColor3b(byval red as GLbyte, byval green as GLbyte, byval blue as GLbyte)
declare sub glSecondaryColor3bv(byval v as const GLbyte ptr)
declare sub glSecondaryColor3d(byval red as GLdouble, byval green as GLdouble, byval blue as GLdouble)
declare sub glSecondaryColor3dv(byval v as const GLdouble ptr)
declare sub glSecondaryColor3f(byval red as GLfloat, byval green as GLfloat, byval blue as GLfloat)
declare sub glSecondaryColor3fv(byval v as const GLfloat ptr)
declare sub glSecondaryColor3i(byval red as GLint, byval green as GLint, byval blue as GLint)
declare sub glSecondaryColor3iv(byval v as const GLint ptr)
declare sub glSecondaryColor3s(byval red as GLshort, byval green as GLshort, byval blue as GLshort)
declare sub glSecondaryColor3sv(byval v as const GLshort ptr)
declare sub glSecondaryColor3ub(byval red as GLubyte, byval green as GLubyte, byval blue as GLubyte)
declare sub glSecondaryColor3ubv(byval v as const GLubyte ptr)
declare sub glSecondaryColor3ui(byval red as GLuint, byval green as GLuint, byval blue as GLuint)
declare sub glSecondaryColor3uiv(byval v as const GLuint ptr)
declare sub glSecondaryColor3us(byval red as GLushort, byval green as GLushort, byval blue as GLushort)
declare sub glSecondaryColor3usv(byval v as const GLushort ptr)
declare sub glSecondaryColorPointer(byval size as GLint, byval type as GLenum, byval stride as GLsizei, byval pointer as const any ptr)
declare sub glWindowPos2d(byval x as GLdouble, byval y as GLdouble)
declare sub glWindowPos2dv(byval v as const GLdouble ptr)
declare sub glWindowPos2f(byval x as GLfloat, byval y as GLfloat)
declare sub glWindowPos2fv(byval v as const GLfloat ptr)
declare sub glWindowPos2i(byval x as GLint, byval y as GLint)
declare sub glWindowPos2iv(byval v as const GLint ptr)
declare sub glWindowPos2s(byval x as GLshort, byval y as GLshort)
declare sub glWindowPos2sv(byval v as const GLshort ptr)
declare sub glWindowPos3d(byval x as GLdouble, byval y as GLdouble, byval z as GLdouble)
declare sub glWindowPos3dv(byval v as const GLdouble ptr)
declare sub glWindowPos3f(byval x as GLfloat, byval y as GLfloat, byval z as GLfloat)
declare sub glWindowPos3fv(byval v as const GLfloat ptr)
declare sub glWindowPos3i(byval x as GLint, byval y as GLint, byval z as GLint)
declare sub glWindowPos3iv(byval v as const GLint ptr)
declare sub glWindowPos3s(byval x as GLshort, byval y as GLshort, byval z as GLshort)
declare sub glWindowPos3sv(byval v as const GLshort ptr)
declare sub glBlendColor(byval red as GLfloat, byval green as GLfloat, byval blue as GLfloat, byval alpha as GLfloat)
declare sub glBlendEquation(byval mode as GLenum)
#endif
const GL_VERSION_1_5 = 1
type GLsizeiptr as integer
type GLintptr as integer
const GL_BUFFER_SIZE = &h8764
const GL_BUFFER_USAGE = &h8765
const GL_QUERY_COUNTER_BITS = &h8864
const GL_CURRENT_QUERY = &h8865
const GL_QUERY_RESULT = &h8866
const GL_QUERY_RESULT_AVAILABLE = &h8867
const GL_ARRAY_BUFFER = &h8892
const GL_ELEMENT_ARRAY_BUFFER = &h8893
const GL_ARRAY_BUFFER_BINDING = &h8894
const GL_ELEMENT_ARRAY_BUFFER_BINDING = &h8895
const GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = &h889F
const GL_READ_ONLY = &h88B8
const GL_WRITE_ONLY = &h88B9
const GL_READ_WRITE = &h88BA
const GL_BUFFER_ACCESS = &h88BB
const GL_BUFFER_MAPPED = &h88BC
const GL_BUFFER_MAP_POINTER = &h88BD
const GL_STREAM_DRAW = &h88E0
const GL_STREAM_READ = &h88E1
const GL_STREAM_COPY = &h88E2
const GL_STATIC_DRAW = &h88E4
const GL_STATIC_READ = &h88E5
const GL_STATIC_COPY = &h88E6
const GL_DYNAMIC_DRAW = &h88E8
const GL_DYNAMIC_READ = &h88E9
const GL_DYNAMIC_COPY = &h88EA
const GL_SAMPLES_PASSED = &h8914
const GL_SRC1_ALPHA = &h8589
const GL_VERTEX_ARRAY_BUFFER_BINDING = &h8896
const GL_NORMAL_ARRAY_BUFFER_BINDING = &h8897
const GL_COLOR_ARRAY_BUFFER_BINDING = &h8898
const GL_INDEX_ARRAY_BUFFER_BINDING = &h8899
const GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = &h889A
const GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = &h889B
const GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = &h889C
const GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = &h889D
const GL_WEIGHT_ARRAY_BUFFER_BINDING = &h889E
const GL_FOG_COORD_SRC = &h8450
const GL_FOG_COORD = &h8451
const GL_CURRENT_FOG_COORD = &h8453
const GL_FOG_COORD_ARRAY_TYPE = &h8454
const GL_FOG_COORD_ARRAY_STRIDE = &h8455
const GL_FOG_COORD_ARRAY_POINTER = &h8456
const GL_FOG_COORD_ARRAY = &h8457
const GL_FOG_COORD_ARRAY_BUFFER_BINDING = &h889D
const GL_SRC0_RGB = &h8580
const GL_SRC1_RGB = &h8581
const GL_SRC2_RGB = &h8582
const GL_SRC0_ALPHA = &h8588
const GL_SRC2_ALPHA = &h858A
type PFNGLGENQUERIESPROC as sub(byval n as GLsizei, byval ids as GLuint ptr)
type PFNGLDELETEQUERIESPROC as sub(byval n as GLsizei, byval ids as const GLuint ptr)
type PFNGLISQUERYPROC as function(byval id as GLuint) as GLboolean
type PFNGLBEGINQUERYPROC as sub(byval target as GLenum, byval id as GLuint)
type PFNGLENDQUERYPROC as sub(byval target as GLenum)
type PFNGLGETQUERYIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr)
type PFNGLGETQUERYOBJECTIVPROC as sub(byval id as GLuint, byval pname as GLenum, byval params as GLint ptr)
type PFNGLGETQUERYOBJECTUIVPROC as sub(byval id as GLuint, byval pname as GLenum, byval params as GLuint ptr)
type PFNGLBINDBUFFERPROC as sub(byval target as GLenum, byval buffer as GLuint)
type PFNGLDELETEBUFFERSPROC as sub(byval n as GLsizei, byval buffers as const GLuint ptr)
type PFNGLGENBUFFERSPROC as sub(byval n as GLsizei, byval buffers as GLuint ptr)
type PFNGLISBUFFERPROC as function(byval buffer as GLuint) as GLboolean
type PFNGLBUFFERDATAPROC as sub(byval target as GLenum, byval size as GLsizeiptr, byval data as const any ptr, byval usage as GLenum)
type PFNGLBUFFERSUBDATAPROC as sub(byval target as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval data as const any ptr)
type PFNGLGETBUFFERSUBDATAPROC as sub(byval target as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval data as any ptr)
type PFNGLMAPBUFFERPROC as function(byval target as GLenum, byval access as GLenum) as any ptr
type PFNGLUNMAPBUFFERPROC as function(byval target as GLenum) as GLboolean
type PFNGLGETBUFFERPARAMETERIVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr)
type PFNGLGETBUFFERPOINTERVPROC as sub(byval target as GLenum, byval pname as GLenum, byval params as any ptr ptr)
#ifdef GL_GLEXT_PROTOTYPES
declare sub glGenQueries(byval n as GLsizei, byval ids as GLuint ptr)
declare sub glDeleteQueries(byval n as GLsizei, byval ids as const GLuint ptr)
declare function glIsQuery(byval id as GLuint) as GLboolean
declare sub glBeginQuery(byval target as GLenum, byval id as GLuint)
declare sub glEndQuery(byval target as GLenum)
declare sub glGetQueryiv(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr)
declare sub glGetQueryObjectiv(byval id as GLuint, byval pname as GLenum, byval params as GLint ptr)
declare sub glGetQueryObjectuiv(byval id as GLuint, byval pname as GLenum, byval params as GLuint ptr)
declare sub glBindBuffer(byval target as GLenum, byval buffer as GLuint)
declare sub glDeleteBuffers(byval n as GLsizei, byval buffers as const GLuint ptr)
declare sub glGenBuffers(byval n as GLsizei, byval buffers as GLuint ptr)
declare function glIsBuffer(byval buffer as GLuint) as GLboolean
declare sub glBufferData(byval target as GLenum, byval size as GLsizeiptr, byval data as const any ptr, byval usage as GLenum)
declare sub glBufferSubData(byval target as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval data as const any ptr)
declare sub glGetBufferSubData(byval target as GLenum, byval offset as GLintptr, byval size as GLsizeiptr, byval data as any ptr)
declare function glMapBuffer(byval target as GLenum, byval access as GLenum) as any ptr
declare function glUnmapBuffer(byval target as GLenum) as GLboolean
declare sub glGetBufferParameteriv(byval target as GLenum, byval pname as GLenum, byval params as GLint ptr)
declare sub glGetBufferPointerv(byval target as GLenum, byval pname as GLenum, byval params as any ptr ptr)
#endif
const GL_VERSION_2_0 = 1
type GLchar as zstring
const GL_BLEND_EQUATION_RGB = &h8009
const GL_VERTEX_ATTRIB_ARRAY_ENABLED = &h8622
const GL_VERTEX_ATTRIB_ARRAY_SIZE = &h8623
const GL_VERTEX_ATTRIB_ARRAY_STRIDE = &h8624
const GL_VERTEX_ATTRIB_ARRAY_TYPE = &h8625
const GL_CURRENT_VERTEX_ATTRIB = &h8626
const GL_VERTEX_PROGRAM_POINT_SIZE = &h8642
const GL_VERTEX_ATTRIB_ARRAY_POINTER = &h8645
const GL_STENCIL_BACK_FUNC = &h8800
const GL_STENCIL_BACK_FAIL = &h8801
const GL_STENCIL_BACK_PASS_DEPTH_FAIL = &h8802
const GL_STENCIL_BACK_PASS_DEPTH_PASS = &h8803
const GL_MAX_DRAW_BUFFERS = &h8824
const GL_DRAW_BUFFER0 = &h8825
const GL_DRAW_BUFFER1 = &h8826
const GL_DRAW_BUFFER2 = &h8827
const GL_DRAW_BUFFER3 = &h8828
const GL_DRAW_BUFFER4 = &h8829
const GL_DRAW_BUFFER5 = &h882A
const GL_DRAW_BUFFER6 = &h882B
const GL_DRAW_BUFFER7 = &h882C
const GL_DRAW_BUFFER8 = &h882D
const GL_DRAW_BUFFER9 = &h882E
const GL_DRAW_BUFFER10 = &h882F
const GL_DRAW_BUFFER11 = &h8830
const GL_DRAW_BUFFER12 = &h8831
const GL_DRAW_BUFFER13 = &h8832
const GL_DRAW_BUFFER14 = &h8833
const GL_DRAW_BUFFER15 = &h8834
const GL_BLEND_EQUATION_ALPHA = &h883D
const GL_MAX_VERTEX_ATTRIBS = &h8869
const GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = &h886A
const GL_MAX_TEXTURE_IMAGE_UNITS = &h8872
const GL_FRAGMENT_SHADER = &h8B30
const GL_VERTEX_SHADER = &h8B31
const GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = &h8B49
const GL_MAX_VERTEX_UNIFORM_COMPONENTS = &h8B4A
const GL_MAX_VARYING_FLOATS = &h8B4B
const GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = &h8B4C
const GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = &h8B4D
const GL_SHADER_TYPE = &h8B4F
const GL_FLOAT_VEC2 = &h8B50
const GL_FLOAT_VEC3 = &h8B51
const GL_FLOAT_VEC4 = &h8B52
const GL_INT_VEC2 = &h8B53
const GL_INT_VEC3 = &h8B54
const GL_INT_VEC4 = &h8B55
const GL_BOOL = &h8B56
const GL_BOOL_VEC2 = &h8B57
const GL_BOOL_VEC3 = &h8B58
const GL_BOOL_VEC4 = &h8B59
const GL_FLOAT_MAT2 = &h8B5A
const GL_FLOAT_MAT3 = &h8B5B
const GL_FLOAT_MAT4 = &h8B5C
const GL_SAMPLER_1D = &h8B5D
const GL_SAMPLER_2D = &h8B5E
const GL_SAMPLER_3D = &h8B5F
const GL_SAMPLER_CUBE = &h8B60
const GL_SAMPLER_1D_SHADOW = &h8B61
const GL_SAMPLER_2D_SHADOW = &h8B62
const GL_DELETE_STATUS = &h8B80
const GL_COMPILE_STATUS = &h8B81
const GL_LINK_STATUS = &h8B82
const GL_VALIDATE_STATUS = &h8B83
const GL_INFO_LOG_LENGTH = &h8B84
const GL_ATTACHED_SHADERS = &h8B85
const GL_ACTIVE_UNIFORMS = &h8B86
const GL_ACTIVE_UNIFORM_MAX_LENGTH = &h8B87
const GL_SHADER_SOURCE_LENGTH = &h8B88
const GL_ACTIVE_ATTRIBUTES = &h8B89
const GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = &h8B8A
const GL_FRAGMENT_SHADER_DERIVATIVE_HINT = &h8B8B
const GL_SHADING_LANGUAGE_VERSION = &h8B8C
const GL_CURRENT_PROGRAM = &h8B8D
const GL_POINT_SPRITE_COORD_ORIGIN = &h8CA0
const GL_LOWER_LEFT = &h8CA1
const GL_UPPER_LEFT = &h8CA2
const GL_STENCIL_BACK_REF = &h8CA3
const GL_STENCIL_BACK_VALUE_MASK = &h8CA4
const GL_STENCIL_BACK_WRITEMASK = &h8CA5
const GL_VERTEX_PROGRAM_TWO_SIDE = &h8643
const GL_POINT_SPRITE = &h8861
const GL_COORD_REPLACE = &h8862
const GL_MAX_TEXTURE_COORDS = &h8871
type PFNGLBLENDEQUATIONSEPARATEPROC as sub(byval modeRGB as GLenum, byval modeAlpha as GLenum)
type PFNGLDRAWBUFFERSPROC as sub(byval n as GLsizei, byval bufs as const GLenum ptr)
type PFNGLSTENCILOPSEPARATEPROC as sub(byval face as GLenum, byval sfail as GLenum, byval dpfail as GLenum, byval dppass as GLenum)
type PFNGLSTENCILFUNCSEPARATEPROC as sub(byval face as GLenum, byval func as GLenum, byval ref as GLint, byval mask as GLuint)
type PFNGLSTENCILMASKSEPARATEPROC as sub(byval face as GLenum, byval mask as GLuint)
type PFNGLATTACHSHADERPROC as sub(byval program as GLuint, byval shader as GLuint)
type PFNGLBINDATTRIBLOCATIONPROC as sub(byval program as GLuint, byval index as GLuint, byval name as const GLchar ptr)
type PFNGLCOMPILESHADERPROC as sub(byval shader as GLuint)
type PFNGLCREATEPROGRAMPROC as function() as GLuint
type PFNGLCREATESHADERPROC as function(byval type as GLenum) as GLuint
type PFNGLDELETEPROGRAMPROC as sub(byval program as GLuint)
type PFNGLDELETESHADERPROC as sub(byval shader as GLuint)
type PFNGLDETACHSHADERPROC as sub(byval program as GLuint, byval shader as GLuint)
type PFNGLDISABLEVERTEXATTRIBARRAYPROC as sub(byval index as GLuint)
type PFNGLENABLEVERTEXATTRIBARRAYPROC as sub(byval index as GLuint)
type PFNGLGETACTIVEATTRIBPROC as sub(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLint ptr, byval type as GLenum ptr, byval name as GLchar ptr)
type PFNGLGETACTIVEUNIFORMPROC as sub(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLint ptr, byval type as GLenum ptr, byval name as GLchar ptr)
type PFNGLGETATTACHEDSHADERSPROC as sub(byval program as GLuint, byval maxCount as GLsizei, byval count as GLsizei ptr, byval shaders as GLuint ptr)
type PFNGLGETATTRIBLOCATIONPROC as function(byval program as GLuint, byval name as const GLchar ptr) as GLint
type PFNGLGETPROGRAMIVPROC as sub(byval program as GLuint, byval pname as GLenum, byval params as GLint ptr)
type PFNGLGETPROGRAMINFOLOGPROC as sub(byval program as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr)
type PFNGLGETSHADERIVPROC as sub(byval shader as GLuint, byval pname as GLenum, byval params as GLint ptr)
type PFNGLGETSHADERINFOLOGPROC as sub(byval shader as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr)
type PFNGLGETSHADERSOURCEPROC as sub(byval shader as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval source as GLchar ptr)
type PFNGLGETUNIFORMLOCATIONPROC as function(byval program as GLuint, byval name as const GLchar ptr) as GLint
type PFNGLGETUNIFORMFVPROC as sub(byval program as GLuint, byval location as GLint, byval params as GLfloat ptr)
type PFNGLGETUNIFORMIVPROC as sub(byval program as GLuint, byval location as GLint, byval params as GLint ptr)
type PFNGLGETVERTEXATTRIBDVPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLdouble ptr)
type PFNGLGETVERTEXATTRIBFVPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLfloat ptr)
type PFNGLGETVERTEXATTRIBIVPROC as sub(byval index as GLuint, byval pname as GLenum, byval params as GLint ptr)
type PFNGLGETVERTEXATTRIBPOINTERVPROC as sub(byval index as GLuint, byval pname as GLenum, byval pointer as any ptr ptr)
type PFNGLISPROGRAMPROC as function(byval program as GLuint) as GLboolean
type PFNGLISSHADERPROC as function(byval shader as GLuint) as GLboolean
type PFNGLLINKPROGRAMPROC as sub(byval program as GLuint)
type PFNGLSHADERSOURCEPROC as sub(byval shader as GLuint, byval count as GLsizei, byval string as const GLchar const ptr ptr, byval length as const GLint ptr)
type PFNGLUSEPROGRAMPROC as sub(byval program as GLuint)
type PFNGLUNIFORM1FPROC as sub(byval location as GLint, byval v0 as GLfloat)
type PFNGLUNIFORM2FPROC as sub(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat)
type PFNGLUNIFORM3FPROC as sub(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat)
type PFNGLUNIFORM4FPROC as sub(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat, byval v3 as GLfloat)
type PFNGLUNIFORM1IPROC as sub(byval location as GLint, byval v0 as GLint)
type PFNGLUNIFORM2IPROC as sub(byval location as GLint, byval v0 as GLint, byval v1 as GLint)
type PFNGLUNIFORM3IPROC as sub(byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint)
type PFNGLUNIFORM4IPROC as sub(byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint, byval v3 as GLint)
type PFNGLUNIFORM1FVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr)
type PFNGLUNIFORM2FVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr)
type PFNGLUNIFORM3FVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr)
type PFNGLUNIFORM4FVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr)
type PFNGLUNIFORM1IVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr)
type PFNGLUNIFORM2IVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr)
type PFNGLUNIFORM3IVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr)
type PFNGLUNIFORM4IVPROC as sub(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr)
type PFNGLUNIFORMMATRIX2FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
type PFNGLUNIFORMMATRIX3FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
type PFNGLUNIFORMMATRIX4FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
type PFNGLVALIDATEPROGRAMPROC as sub(byval program as GLuint)
type PFNGLVERTEXATTRIB1DPROC as sub(byval index as GLuint, byval x as GLdouble)
type PFNGLVERTEXATTRIB1DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr)
type PFNGLVERTEXATTRIB1FPROC as sub(byval index as GLuint, byval x as GLfloat)
type PFNGLVERTEXATTRIB1FVPROC as sub(byval index as GLuint, byval v as const GLfloat ptr)
type PFNGLVERTEXATTRIB1SPROC as sub(byval index as GLuint, byval x as GLshort)
type PFNGLVERTEXATTRIB1SVPROC as sub(byval index as GLuint, byval v as const GLshort ptr)
type PFNGLVERTEXATTRIB2DPROC as sub(byval index as GLuint, byval x as GLdouble, byval y as GLdouble)
type PFNGLVERTEXATTRIB2DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr)
type PFNGLVERTEXATTRIB2FPROC as sub(byval index as GLuint, byval x as GLfloat, byval y as GLfloat)
type PFNGLVERTEXATTRIB2FVPROC as sub(byval index as GLuint, byval v as const GLfloat ptr)
type PFNGLVERTEXATTRIB2SPROC as sub(byval index as GLuint, byval x as GLshort, byval y as GLshort)
type PFNGLVERTEXATTRIB2SVPROC as sub(byval index as GLuint, byval v as const GLshort ptr)
type PFNGLVERTEXATTRIB3DPROC as sub(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble)
type PFNGLVERTEXATTRIB3DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr)
type PFNGLVERTEXATTRIB3FPROC as sub(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval z as GLfloat)
type PFNGLVERTEXATTRIB3FVPROC as sub(byval index as GLuint, byval v as const GLfloat ptr)
type PFNGLVERTEXATTRIB3SPROC as sub(byval index as GLuint, byval x as GLshort, byval y as GLshort, byval z as GLshort)
type PFNGLVERTEXATTRIB3SVPROC as sub(byval index as GLuint, byval v as const GLshort ptr)
type PFNGLVERTEXATTRIB4NBVPROC as sub(byval index as GLuint, byval v as const GLbyte ptr)
type PFNGLVERTEXATTRIB4NIVPROC as sub(byval index as GLuint, byval v as const GLint ptr)
type PFNGLVERTEXATTRIB4NSVPROC as sub(byval index as GLuint, byval v as const GLshort ptr)
type PFNGLVERTEXATTRIB4NUBPROC as sub(byval index as GLuint, byval x as GLubyte, byval y as GLubyte, byval z as GLubyte, byval w as GLubyte)
type PFNGLVERTEXATTRIB4NUBVPROC as sub(byval index as GLuint, byval v as const GLubyte ptr)
type PFNGLVERTEXATTRIB4NUIVPROC as sub(byval index as GLuint, byval v as const GLuint ptr)
type PFNGLVERTEXATTRIB4NUSVPROC as sub(byval index as GLuint, byval v as const GLushort ptr)
type PFNGLVERTEXATTRIB4BVPROC as sub(byval index as GLuint, byval v as const GLbyte ptr)
type PFNGLVERTEXATTRIB4DPROC as sub(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble, byval w as GLdouble)
type PFNGLVERTEXATTRIB4DVPROC as sub(byval index as GLuint, byval v as const GLdouble ptr)
type PFNGLVERTEXATTRIB4FPROC as sub(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval z as GLfloat, byval w as GLfloat)
type PFNGLVERTEXATTRIB4FVPROC as sub(byval index as GLuint, byval v as const GLfloat ptr)
type PFNGLVERTEXATTRIB4IVPROC as sub(byval index as GLuint, byval v as const GLint ptr)
type PFNGLVERTEXATTRIB4SPROC as sub(byval index as GLuint, byval x as GLshort, byval y as GLshort, byval z as GLshort, byval w as GLshort)
type PFNGLVERTEXATTRIB4SVPROC as sub(byval index as GLuint, byval v as const GLshort ptr)
type PFNGLVERTEXATTRIB4UBVPROC as sub(byval index as GLuint, byval v as const GLubyte ptr)
type PFNGLVERTEXATTRIB4UIVPROC as sub(byval index as GLuint, byval v as const GLuint ptr)
type PFNGLVERTEXATTRIB4USVPROC as sub(byval index as GLuint, byval v as const GLushort ptr)
type PFNGLVERTEXATTRIBPOINTERPROC as sub(byval index as GLuint, byval size as GLint, byval type as GLenum, byval normalized as GLboolean, byval stride as GLsizei, byval pointer as const any ptr)
#ifdef GL_GLEXT_PROTOTYPES
declare sub glBlendEquationSeparate(byval modeRGB as GLenum, byval modeAlpha as GLenum)
declare sub glDrawBuffers(byval n as GLsizei, byval bufs as const GLenum ptr)
declare sub glStencilOpSeparate(byval face as GLenum, byval sfail as GLenum, byval dpfail as GLenum, byval dppass as GLenum)
declare sub glStencilFuncSeparate(byval face as GLenum, byval func as GLenum, byval ref as GLint, byval mask as GLuint)
declare sub glStencilMaskSeparate(byval face as GLenum, byval mask as GLuint)
declare sub glAttachShader(byval program as GLuint, byval shader as GLuint)
declare sub glBindAttribLocation(byval program as GLuint, byval index as GLuint, byval name as const GLchar ptr)
declare sub glCompileShader(byval shader as GLuint)
declare function glCreateProgram() as GLuint
declare function glCreateShader(byval type as GLenum) as GLuint
declare sub glDeleteProgram(byval program as GLuint)
declare sub glDeleteShader(byval shader as GLuint)
declare sub glDetachShader(byval program as GLuint, byval shader as GLuint)
declare sub glDisableVertexAttribArray(byval index as GLuint)
declare sub glEnableVertexAttribArray(byval index as GLuint)
declare sub glGetActiveAttrib(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLint ptr, byval type as GLenum ptr, byval name as GLchar ptr)
declare sub glGetActiveUniform(byval program as GLuint, byval index as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval size as GLint ptr, byval type as GLenum ptr, byval name as GLchar ptr)
declare sub glGetAttachedShaders(byval program as GLuint, byval maxCount as GLsizei, byval count as GLsizei ptr, byval shaders as GLuint ptr)
declare function glGetAttribLocation(byval program as GLuint, byval name as const GLchar ptr) as GLint
declare sub glGetProgramiv(byval program as GLuint, byval pname as GLenum, byval params as GLint ptr)
declare sub glGetProgramInfoLog(byval program as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr)
declare sub glGetShaderiv(byval shader as GLuint, byval pname as GLenum, byval params as GLint ptr)
declare sub glGetShaderInfoLog(byval shader as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval infoLog as GLchar ptr)
declare sub glGetShaderSource(byval shader as GLuint, byval bufSize as GLsizei, byval length as GLsizei ptr, byval source as GLchar ptr)
declare function glGetUniformLocation(byval program as GLuint, byval name as const GLchar ptr) as GLint
declare sub glGetUniformfv(byval program as GLuint, byval location as GLint, byval params as GLfloat ptr)
declare sub glGetUniformiv(byval program as GLuint, byval location as GLint, byval params as GLint ptr)
declare sub glGetVertexAttribdv(byval index as GLuint, byval pname as GLenum, byval params as GLdouble ptr)
declare sub glGetVertexAttribfv(byval index as GLuint, byval pname as GLenum, byval params as GLfloat ptr)
declare sub glGetVertexAttribiv(byval index as GLuint, byval pname as GLenum, byval params as GLint ptr)
declare sub glGetVertexAttribPointerv(byval index as GLuint, byval pname as GLenum, byval pointer as any ptr ptr)
declare function glIsProgram(byval program as GLuint) as GLboolean
declare function glIsShader(byval shader as GLuint) as GLboolean
declare sub glLinkProgram(byval program as GLuint)
declare sub glShaderSource(byval shader as GLuint, byval count as GLsizei, byval string as const GLchar const ptr ptr, byval length as const GLint ptr)
declare sub glUseProgram(byval program as GLuint)
declare sub glUniform1f(byval location as GLint, byval v0 as GLfloat)
declare sub glUniform2f(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat)
declare sub glUniform3f(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat)
declare sub glUniform4f(byval location as GLint, byval v0 as GLfloat, byval v1 as GLfloat, byval v2 as GLfloat, byval v3 as GLfloat)
declare sub glUniform1i(byval location as GLint, byval v0 as GLint)
declare sub glUniform2i(byval location as GLint, byval v0 as GLint, byval v1 as GLint)
declare sub glUniform3i(byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint)
declare sub glUniform4i(byval location as GLint, byval v0 as GLint, byval v1 as GLint, byval v2 as GLint, byval v3 as GLint)
declare sub glUniform1fv(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr)
declare sub glUniform2fv(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr)
declare sub glUniform3fv(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr)
declare sub glUniform4fv(byval location as GLint, byval count as GLsizei, byval value as const GLfloat ptr)
declare sub glUniform1iv(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr)
declare sub glUniform2iv(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr)
declare sub glUniform3iv(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr)
declare sub glUniform4iv(byval location as GLint, byval count as GLsizei, byval value as const GLint ptr)
declare sub glUniformMatrix2fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
declare sub glUniformMatrix3fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
declare sub glUniformMatrix4fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
declare sub glValidateProgram(byval program as GLuint)
declare sub glVertexAttrib1d(byval index as GLuint, byval x as GLdouble)
declare sub glVertexAttrib1dv(byval index as GLuint, byval v as const GLdouble ptr)
declare sub glVertexAttrib1f(byval index as GLuint, byval x as GLfloat)
declare sub glVertexAttrib1fv(byval index as GLuint, byval v as const GLfloat ptr)
declare sub glVertexAttrib1s(byval index as GLuint, byval x as GLshort)
declare sub glVertexAttrib1sv(byval index as GLuint, byval v as const GLshort ptr)
declare sub glVertexAttrib2d(byval index as GLuint, byval x as GLdouble, byval y as GLdouble)
declare sub glVertexAttrib2dv(byval index as GLuint, byval v as const GLdouble ptr)
declare sub glVertexAttrib2f(byval index as GLuint, byval x as GLfloat, byval y as GLfloat)
declare sub glVertexAttrib2fv(byval index as GLuint, byval v as const GLfloat ptr)
declare sub glVertexAttrib2s(byval index as GLuint, byval x as GLshort, byval y as GLshort)
declare sub glVertexAttrib2sv(byval index as GLuint, byval v as const GLshort ptr)
declare sub glVertexAttrib3d(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble)
declare sub glVertexAttrib3dv(byval index as GLuint, byval v as const GLdouble ptr)
declare sub glVertexAttrib3f(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval z as GLfloat)
declare sub glVertexAttrib3fv(byval index as GLuint, byval v as const GLfloat ptr)
declare sub glVertexAttrib3s(byval index as GLuint, byval x as GLshort, byval y as GLshort, byval z as GLshort)
declare sub glVertexAttrib3sv(byval index as GLuint, byval v as const GLshort ptr)
declare sub glVertexAttrib4Nbv(byval index as GLuint, byval v as const GLbyte ptr)
declare sub glVertexAttrib4Niv(byval index as GLuint, byval v as const GLint ptr)
declare sub glVertexAttrib4Nsv(byval index as GLuint, byval v as const GLshort ptr)
declare sub glVertexAttrib4Nub(byval index as GLuint, byval x as GLubyte, byval y as GLubyte, byval z as GLubyte, byval w as GLubyte)
declare sub glVertexAttrib4Nubv(byval index as GLuint, byval v as const GLubyte ptr)
declare sub glVertexAttrib4Nuiv(byval index as GLuint, byval v as const GLuint ptr)
declare sub glVertexAttrib4Nusv(byval index as GLuint, byval v as const GLushort ptr)
declare sub glVertexAttrib4bv(byval index as GLuint, byval v as const GLbyte ptr)
declare sub glVertexAttrib4d(byval index as GLuint, byval x as GLdouble, byval y as GLdouble, byval z as GLdouble, byval w as GLdouble)
declare sub glVertexAttrib4dv(byval index as GLuint, byval v as const GLdouble ptr)
declare sub glVertexAttrib4f(byval index as GLuint, byval x as GLfloat, byval y as GLfloat, byval z as GLfloat, byval w as GLfloat)
declare sub glVertexAttrib4fv(byval index as GLuint, byval v as const GLfloat ptr)
declare sub glVertexAttrib4iv(byval index as GLuint, byval v as const GLint ptr)
declare sub glVertexAttrib4s(byval index as GLuint, byval x as GLshort, byval y as GLshort, byval z as GLshort, byval w as GLshort)
declare sub glVertexAttrib4sv(byval index as GLuint, byval v as const GLshort ptr)
declare sub glVertexAttrib4ubv(byval index as GLuint, byval v as const GLubyte ptr)
declare sub glVertexAttrib4uiv(byval index as GLuint, byval v as const GLuint ptr)
declare sub glVertexAttrib4usv(byval index as GLuint, byval v as const GLushort ptr)
declare sub glVertexAttribPointer(byval index as GLuint, byval size as GLint, byval type as GLenum, byval normalized as GLboolean, byval stride as GLsizei, byval pointer as const any ptr)
#endif
const GL_VERSION_2_1 = 1
const GL_PIXEL_PACK_BUFFER = &h88EB
const GL_PIXEL_UNPACK_BUFFER = &h88EC
const GL_PIXEL_PACK_BUFFER_BINDING = &h88ED
const GL_PIXEL_UNPACK_BUFFER_BINDING = &h88EF
const GL_FLOAT_MAT2x3 = &h8B65
const GL_FLOAT_MAT2x4 = &h8B66
const GL_FLOAT_MAT3x2 = &h8B67
const GL_FLOAT_MAT3x4 = &h8B68
const GL_FLOAT_MAT4x2 = &h8B69
const GL_FLOAT_MAT4x3 = &h8B6A
const GL_SRGB = &h8C40
const GL_SRGB8 = &h8C41
const GL_SRGB_ALPHA = &h8C42
const GL_SRGB8_ALPHA8 = &h8C43
const GL_COMPRESSED_SRGB = &h8C48
const GL_COMPRESSED_SRGB_ALPHA = &h8C49
const GL_CURRENT_RASTER_SECONDARY_COLOR = &h845F
const GL_SLUMINANCE_ALPHA = &h8C44
const GL_SLUMINANCE8_ALPHA8 = &h8C45
const GL_SLUMINANCE = &h8C46
const GL_SLUMINANCE8 = &h8C47
const GL_COMPRESSED_SLUMINANCE = &h8C4A
const GL_COMPRESSED_SLUMINANCE_ALPHA = &h8C4B
type PFNGLUNIFORMMATRIX2X3FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
type PFNGLUNIFORMMATRIX3X2FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
type PFNGLUNIFORMMATRIX2X4FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
type PFNGLUNIFORMMATRIX4X2FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
type PFNGLUNIFORMMATRIX3X4FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
type PFNGLUNIFORMMATRIX4X3FVPROC as sub(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
#ifdef GL_GLEXT_PROTOTYPES
declare sub glUniformMatrix2x3fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
declare sub glUniformMatrix3x2fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
declare sub glUniformMatrix2x4fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
declare sub glUniformMatrix4x2fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
declare sub glUniformMatrix3x4fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
declare sub glUniformMatrix4x3fv(byval location as GLint, byval count as GLsizei, byval transpose as GLboolean, byval value as const GLfloat ptr)
#endif
const GL_VERSION_3_0 = 1
type GLhalf as ushort
const GL_COMPARE_REF_TO_TEXTURE = &h884E
const GL_CLIP_DISTANCE0 = &h3000
const GL_CLIP_DISTANCE1 = &h3001
const GL_CLIP_DISTANCE2 = &h3002
const GL_CLIP_DISTANCE3 = &h3003
const GL_CLIP_DISTANCE4 = &h3004
const GL_CLIP_DISTANCE5 = &h3005
const GL_CLIP_DISTANCE6 = &h3006
const GL_CLIP_DISTANCE7 = &h3007
const GL_MAX_CLIP_DISTANCES = &h0D32
const GL_MAJOR_VERSION = &h821B
const GL_MINOR_VERSION = &h821C
const GL_NUM_EXTENSIONS = &h821D
const GL_CONTEXT_FLAGS = &h821E
const GL_COMPRESSED_RED = &h8225
const GL_COMPRESSED_RG = &h8226
const GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = &h00000001
const GL_RGBA32F = &h8814
const GL_RGB32F = &h8815
const GL_RGBA16F = &h881A
const GL_RGB16F = &h881B
const GL_VERTEX_ATTRIB_ARRAY_INTEGER = &h88FD
const GL_MAX_ARRAY_TEXTURE_LAYERS = &h88FF
const GL_MIN_PROGRAM_TEXEL_OFFSET = &h8904
const GL_MAX_PROGRAM_TEXEL_OFFSET = &h8905
const GL_CLAMP_READ_COLOR = &h891C
const GL_FIXED_ONLY = &h891D
const GL_MAX_VARYING_COMPONENTS = &h8B4B
const GL_TEXTURE_1D_ARRAY = &h8C18
const GL_PROXY_TEXTURE_1D_ARRAY = &h8C19
const GL_TEXTURE_2D_ARRAY = &h8C1A
const GL_PROXY_TEXTURE_2D_ARRAY = &h8C1B
const GL_TEXTURE_BINDING_1D_ARRAY = &h8C1C
const GL_TEXTURE_BINDING_2D_ARRAY = &h8C1D
const GL_R11F_G11F_B10F = &h8C3A
const GL_UNSIGNED_INT_10F_11F_11F_REV = &h8C3B
const GL_RGB9_E5 = &h8C3D
const GL_UNSIGNED_INT_5_9_9_9_REV = &h8C3E
const GL_TEXTURE_SHARED_SIZE = &h8C3F
const GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = &h8C76
const GL_TRANSFORM_FEEDBACK_BUFFER_MODE = &h8C7F
const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = &h8C80
const GL_TRANSFORM_FEEDBACK_VARYINGS = &h8C83
const GL_TRANSFORM_FEEDBACK_BUFFER_START = &h8C84
const GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = &h8C85
const GL_PRIMITIVES_GENERATED = &h8C87
const GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = &h8C88
const GL_RASTERIZER_DISCARD = &h8C89
const GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = &h8C8A
const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = &h8C8B
const GL_INTERLEAVED_ATTRIBS = &h8C8C
const GL_SEPARATE_ATTRIBS = &h8C8D
const GL_TRANSFORM_FEEDBACK_BUFFER = &h8C8E
const GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = &h8C8F
const GL_RGBA32UI = &h8D70
const GL_RGB32UI = &h8D71
const GL_RGBA16UI = &h8D76
const GL_RGB16UI = &h8D77
const GL_RGBA8UI = &h8D7C
const GL_RGB8UI = &h8D7D
const GL_RGBA32I = &h8D82
const GL_RGB32I = &h8D83
const GL_RGBA16I = &h8D88
const GL_RGB16I = &h8D89
const GL_RGBA8I = &h8D8E
const GL_RGB8I = &h8D8F
const GL_RED_INTEGER = &h8D94
const GL_GREEN_INTEGER = &h8D95
const GL_BLUE_INTEGER = &h8D96
const GL_RGB_INTEGER = &h8D98
const GL_RGBA_INTEGER = &h8D99
const GL_BGR_INTEGER = &h8D9A
const GL_BGRA_INTEGER = &h8D9B
const GL_SAMPLER_1D_ARRAY = &h8DC0
const GL_SAMPLER_2D_ARRAY = &h8DC1
const GL_SAMPLER_1D_ARRAY_SHADOW = &h8DC3
const GL_SAMPLER_2D_ARRAY_SHADOW = &h8DC4
const GL_SAMPLER_CUBE_SHADOW = &h8DC5
const GL_UNSIGNED_INT_VEC2 = &h8DC6
const GL_UNSIGNED_INT_VEC3 = &h8DC7
const GL_UNSIGNED_INT_VEC4 = &h8DC8
const GL_INT_SAMPLER_1D = &h8DC9
const GL_INT_SAMPLER_2D = &h8DCA
const GL_INT_SAMPLER_3D = &h8DCB
const GL_INT_SAMPLER_CUBE = &h8DCC
const GL_INT_SAMPLER_1D_ARRAY = &h8DCE
const GL_INT_SAMPLER_2D_ARRAY = &h8DCF
const GL_UNSIGNED_INT_SAMPLER_1D = &h8DD1
const GL_UNSIGNED_INT_SAMPLER_2D = &h8DD2
const GL_UNSIGNED_INT_SAMPLER_3D = &h8DD3
const GL_UNSIGNED_INT_SAMPLER_CUBE = &h8DD4
const GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = &h8DD6
const GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = &h8DD7
const GL_QUERY_WAIT = &h8E13
const GL_QUERY_NO_WAIT = &h8E14
const GL_QUERY_BY_REGION_WAIT = &h8E15
const GL_QUERY_BY_REGION_NO_WAIT = &h8E16
const GL_BUFFER_ACCESS_FLAGS = &h911F
const GL_BUFFER_MAP_LENGTH = &h9120
const GL_BUFFER_MAP_OFFSET = &h9121
const GL_DEPTH_COMPONENT32F = &h8CAC
const GL_DEPTH32F_STENCIL8 = &h8CAD
const GL_FLOAT_32_UNSIGNED_INT_24_8_REV = &h8DAD
const GL_INVALID_FRAMEBUFFER_OPERATION = &h0506
const GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = &h8210
const GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = &h8211
const GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = &h8212
const GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = &h8213
const GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = &h8214
const GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = &h8215
const GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = &h8216
const GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = &h8217
const GL_FRAMEBUFFER_DEFAULT = &h8218
const GL_FRAMEBUFFER_UNDEFINED = &h8219
const GL_DEPTH_STENCIL_ATTACHMENT = &h821A
const GL_MAX_RENDERBUFFER_SIZE = &h84E8
const GL_DEPTH_STENCIL = &h84F9
const GL_UNSIGNED_INT_24_8 = &h84FA
const GL_DEPTH24_STENCIL8 = &h88F0
const GL_TEXTURE_STENCIL_SIZE = &h88F1
const GL_TEXTURE_RED_TYPE = &h8C10
const GL_TEXTURE_GREEN_TYPE = &h8C11
const GL_TEXTURE_BLUE_TYPE = &h8C12
const GL_TEXTURE_ALPHA_TYPE = &h8C13
const GL_TEXTURE_DEPTH_TYPE = &h8C16
const GL_UNSIGNED_NORMALIZED = &h8C17
const GL_FRAMEBUFFER_BINDING = &h8CA6
const GL_DRAW_FRAMEBUFFER_BINDING = &h8CA6
const GL_RENDERBUFFER_BINDING = &h8CA7
const GL_READ_FRAMEBUFFER = &h8CA8
const GL_DRAW_FRAMEBUFFER = &h8CA9
const GL_READ_FRAMEBUFFER_BINDING = &h8CAA
const GL_RENDERBUFFER_SAMPLES = &h8CAB
const GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = &h8CD0
const GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = &h8CD1
const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = &h8CD2
const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = &h8CD3
const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = &h8CD4
const GL_FRAMEBUFFER_COMPLETE = &h8CD5
const GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = &h8CD6
const GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = &h8CD7
const GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = &h8CDB
const GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER = &h8CDC
const GL_FRAMEBUFFER_UNSUPPORTED = &h8CDD
const GL_MAX_COLOR_ATTACHMENTS = &h8CDF
const GL_COLOR_ATTACHMENT0 = &h8CE0
const GL_COLOR_ATTACHMENT1 = &h8CE1
const GL_COLOR_ATTACHMENT2 = &h8CE2
const GL_COLOR_ATTACHMENT3 = &h8CE3
const GL_COLOR_ATTACHMENT4 = &h8CE4
const GL_COLOR_ATTACHMENT5 = &h8CE5
const GL_COLOR_ATTACHMENT6 = &h8CE6