1#lang scribble/doc 2@(require "common.rkt" scribble/bnf scribble/eval (for-syntax racket/base)) 3 4@title[#:tag "gl"]{C-Style OpenGL} 5 6@defmodule[sgl/gl] 7 8The @racketmodname[sgl/gl] module provides a direct interface to the 9system's GL library closely following the conventions of the 10C-language OpenGL API. It provides a binding for each @tt{#defined} 11constant (these start with @racketidfont{GL_}) and for the functions 12in the GL 1.5 and GLU 1.3 specifications, except for the following: 13 14@itemize[#:style 'compact 15 @item{Vertex arrays (GL 1.5, Section 2.8)} 16 @item{Buffer objects (GL 1.5, Section 2.9)} 17 @item{@tt{glGetPointerv} (GL 1.5, Section 6.1.11)} 18 @item{Buffer object queries (GL 1.5, Section 6.1.13)} 19 @item{Polygon tessellation (GLU 1.3, Section 5)} 20 @item{@tt{gluQuadricCallback} (GLU 1.3, Section 6.2)} 21 @item{NURBS callbacks (GLU 1.3, Section 7.2)} 22] 23 24If one of the provided functions is not present on your system 25(e.g. if your system supports only GL 1.3), then the corresponding 26@racketmodname[sgl/gl] function raises a run-time exception when 27invoked. 28 29The functions provided by @racketmodname[sgl/gl] perform comparable 30checking to their C-language counterparts; they check the types of 31their arguments, but do not check the length of array arguments. The 32following details the kinds of Racket values that can be provided for 33each primitive OpenGL type: 34 35@itemize[ 36 37 @item{@as-index{@tt{GLbyte}}, 38 @as-index{@tt{GLshort}}, 39 @as-index{@tt{GLint}}: 40 exact integer in the proper range} 41 42 @item{@as-index{@tt{GLubyte}}, 43 @as-index{@tt{GLushort}}, 44 @as-index{@tt{GLuint}}: 45 exact non-negative integer in the proper range} 46 47 @item{@as-index{@tt{GLsizei}}, 48 @as-index{@tt{GLenum}}, 49 @as-index{@tt{GLbitfield}}: 50 exact non-negative integer in the proper range} 51 52 @item{@as-index{@tt{GFfloat}}, 53 @as-index{@tt{GLdouble}}: 54 real number} 55 56 @item{@as-index{@tt{GFclampf}}, 57 @as-index{@tt{GLclampd}}: 58 real number} 59 60 @item{@as-index{@tt{GLboolean}}: any value, where @racket[#f] means 61 @as-index{@tt{GL_FALSE}} and all other values mean 62 @as-index{@tt{GL_TRUE}}; do not use @racket[GL_FALSE] or 63 @racket[GL_TRUE], since they are bound to integers, both will 64 end up being converted to GL_TRUE.} 65 66] 67 68OpenGL functions that take vector arguments accept @racket[cvector] 69values. The type of the @racket[cvector] is checked; for example, 70@tt{glVertex3fv} expects a vector of @tt{GLfloats}, so 71@racket[glVertex3fv] accepts only a @racket[cvector] containing reals. 72See also @racketmodname[sgl/gl-vectors]. Functions that accept arrays 73of type @tt{void*} accept any @racket[cvector]; you must ensure that 74you supply the proper kind of vector, as in the C-language OpenGL API. 75 76@as-examples[ 77@racketblock[ 78(require sgl/gl 79 sgl/gl-vectors) 80(glBegin GL_TRIANGLES) 81(glVertex3i 1 2 3) 82(glVertex4fv (gl-float-vector 1 2 3 4)) 83(glEnd) 84]] 85 86@(define-syntax-rule (def-C-gl (id ...) body ...) 87 @deftogether[( 88 @defthing[id procedure?] ... 89 ) body ...]) 90 91@def-C-gl[( 92 glPixelMapfv 93 glPixelMapuiv 94 glPixelMapusv 95 glDeleteTextures 96 glDeleteQueries 97)]{ 98 99These functions do not take a size argument, because it is derived 100from the length of the argument vector.} 101 102@def-C-gl[( 103 glGenTextures 104 glGenQueries 105)]{ 106 107These functions do not take vector arguments. Instead, they allocate 108a vector of the requested size and return it.} 109 110@def-C-gl[( 111 glAreTexturesResident 112)]{ 113 114This function takes in a @tt{GLuint} vector and textures, and it 115returns 2 values: the specified boolean and a boolean vector of 116residences.} 117 118@def-C-gl[( 119 glGetBooleanv 120 glGetIntegerv 121 glGetFloatv 122 glGetDoublev 123 glGetLightfv 124 glGetLightiv 125 glGetMaterialfv 126 glGetMaterialiv 127 glGetTexEnvfv 128 glGetTexEnviv 129 glGetTexGendv 130 glGetTexGenfv 131 glGetTexGeniv 132 glGetTexParameterfv 133 glGetTexParameteriv 134 glGetTexLevelParameterfv 135 glGetTexLevelParameteriv 136 glGetPixelMapfv 137 glGetPixelMapuiv 138 glGetPixelMapusv 139 glGetMapdv 140 glGetMapfv 141 glGetMapiv 142 glGetBufferParameteriv 143 glGetConvolutionParameterfv 144 glGetConvolutionParameteriv 145 glGetHistogramParameterfv 146 glGetHistogramParameteriv 147 glGetMinmaxParameterfv 148 glGetMinmaxParameteriv 149 glGetQueryiv 150 glGetQueryObjectiv 151 glGetQueryObjectuiv 152)]{ 153 154Instead of taking a vector argument, these function take an integer argument 155that specifies the size of the vector that is returned.} 156 157@def-C-gl[( 158 glGetClipPlane 159)]{ 160 161This function does not take a vector argument and returns a @tt{GLdouble} vector of 162length 4.} 163 164@def-C-gl[( 165 glGetString 166 gluCheckExtension 167 gluErrorString 168 gluGetString 169)]{ 170These functions deal with strings instead of @tt{GLubyte} vectors.} 171 172@def-C-gl[( 173 gluProject 174 gluUnProject 175 gluUnProject4 176)]{ 177 178Instead of taking pointers to @tt{GLdoubles} for return values, these 179function directly return @tt{GLdouble} vectors.} 180 181@def-C-gl[( 182 glSelectBuffer 183 glFeedbackBuffer 184)]{ 185 186These functions do not take vectors, instead they return a 187@racket[selection-buffer-object] or @racket[feedback-buffer-object]. 188The @racket[select-buffer->gl-uint-vector] and 189@racket[feedback-buffer->gl-float-vector] functions copy the contents 190of the buffer into a vector. Because the OpenGL library writes to the 191buffer-object on OpenGL function calls after @tt{glSelectBuffer} or 192@tt{glFeedbackBuffer} has returned, if the buffer is garbage collected 193before OpenGL is finished writing to it, the entire Racket system can 194crash. The @racket[gl-process-selection] function in 195@racketmodname[sgl] helps interpret the results of @tt{glSelectBuffer} 196in a Racket-friendly format.} 197 198@def-C-gl[( 199glAccum 200glActiveTexture 201glAlphaFunc 202glBegin 203glBeginQuery 204glBindTexture 205glBitmap 206glBlendColor 207glBlendEquation 208glBlendFunc 209glBlendFuncSeparate 210glCallList 211glCallLists 212glClear 213glClearAccum 214glClearColor 215glClearDepth 216glClearIndex 217glClearStencil 218glClipPlane 219glColor3b 220glColor3bv 221glColor3d 222glColor3dv 223glColor3f 224glColor3fv 225glColor3i 226glColor3iv 227glColor3s 228glColor3sv 229glColor3ub 230glColor3ubv 231glColor3ui 232glColor3uiv 233glColor3us 234glColor3usv 235glColor4b 236glColor4bv 237glColor4d 238glColor4dv 239glColor4f 240glColor4fv 241glColor4i 242glColor4iv 243glColor4s 244glColor4sv 245glColor4ub 246glColor4ubv 247glColor4ui 248glColor4uiv 249glColor4us 250glColor4usv 251glColorMask 252glColorMaterial 253glColorSubTable 254glColorTable 255glColorTableParameterfv 256glColorTableParameteriv 257glCompressedTexImage1D 258glCompressedTexImage2D 259glCompressedTexImage3D 260glCompressedTexSubImage1D 261glCompressedTexSubImage2D 262glCompressedTexSubImage3D 263glConvolutionFilter1D 264glConvolutionFilter2D 265glConvolutionParameterf 266glConvolutionParameterfv 267glConvolutionParameteri 268glConvolutionParameteriv 269glCopyColorSubTable 270glCopyColorTable 271glCopyConvolutionFilter1D 272glCopyConvolutionFilter2D 273glCopyPixels 274glCopyTexImage1D 275glCopyTexImage2D 276glCopyTexSubImage1D 277glCopyTexSubImage2D 278glCopyTexSubImage3D 279glCullFace 280glDeleteLists 281glDepthFunc 282glDepthMask 283glDepthRange 284glDisable 285glDrawBuffer 286glDrawPixels 287glEdgeFlag 288glEdgeFlagv 289glEnable 290glEnd 291glEndList 292glEndQuery 293glEvalCoord1d 294glEvalCoord1dv 295glEvalCoord1f 296glEvalCoord1fv 297glEvalCoord2d 298glEvalCoord2dv 299glEvalCoord2f 300glEvalCoord2fv 301glEvalMesh1 302glEvalMesh2 303glEvalPoint1 304glEvalPoint2 305glFinish 306glFlush 307glFogCoordd 308glFogCoorddv 309glFogCoordf 310glFogCoordfv 311glFogf 312glFogfv 313glFogi 314glFogiv 315glFrontFace 316glFrustum 317glGenLists 318glGetColorTable 319glGetCompressedTexImage 320glGetConvolutionFilter 321glGetError 322glGetHistogram 323glGetMinmax 324glGetPolygonStipple 325glGetSeparableFilter 326glGetTexImage 327glHint 328glHistogram 329glIndexMask 330glIndexd 331glIndexdv 332glIndexf 333glIndexfv 334glIndexi 335glIndexiv 336glIndexs 337glIndexsv 338glIndexub 339glIndexubv 340glInitNames 341glIsBuffer 342glIsEnabled 343glIsList 344glIsQuery 345glIsTexture 346glLightModelf 347glLightModelfv 348glLightModeli 349glLightModeliv 350glLightf 351glLightfv 352glLighti 353glLightiv 354glLineStipple 355glLineWidth 356glListBase 357glLoadIdentity 358glLoadMatrixd 359glLoadMatrixf 360glLoadName 361glLoadTransposeMatrixd 362glLoadTransposeMatrixf 363glLogicOp 364glMap1d 365glMap1f 366glMap2d 367glMap2f 368glMapGrid1d 369glMapGrid1f 370glMapGrid2d 371glMapGrid2f 372glMaterialf 373glMaterialfv 374glMateriali 375glMaterialiv 376glMatrixMode 377glMinmax 378glMultMatrixd 379glMultMatrixf 380glMultTransposeMatrixd 381glMultTransposeMatrixf 382glMultiTexCoord1d 383glMultiTexCoord1dv 384glMultiTexCoord1f 385glMultiTexCoord1fv 386glMultiTexCoord1i 387glMultiTexCoord1iv 388glMultiTexCoord1s 389glMultiTexCoord1sv 390glMultiTexCoord2d 391glMultiTexCoord2dv 392glMultiTexCoord2f 393glMultiTexCoord2fv 394glMultiTexCoord2i 395glMultiTexCoord2iv 396glMultiTexCoord2s 397glMultiTexCoord2sv 398glMultiTexCoord3d 399glMultiTexCoord3dv 400glMultiTexCoord3f 401glMultiTexCoord3fv 402glMultiTexCoord3i 403glMultiTexCoord3iv 404glMultiTexCoord3s 405glMultiTexCoord3sv 406glMultiTexCoord4d 407glMultiTexCoord4dv 408glMultiTexCoord4f 409glMultiTexCoord4fv 410glMultiTexCoord4i 411glMultiTexCoord4iv 412glMultiTexCoord4s 413glMultiTexCoord4sv 414glNewList 415glNormal3b 416glNormal3bv 417glNormal3d 418glNormal3dv 419glNormal3f 420glNormal3fv 421glNormal3i 422glNormal3iv 423glNormal3s 424glNormal3sv 425glOrtho 426glPassThrough 427glPixelStoref 428glPixelStorei 429glPixelTransferf 430glPixelTransferi 431glPixelZoom 432glPointParameterf 433glPointParameterfv 434glPointParameteri 435glPointParameteriv 436glPointSize 437glPolygonMode 438glPolygonOffset 439glPolygonStipple 440glPopAttrib 441glPopClientAttrib 442glPopMatrix 443glPopName 444glPushAttrib 445glPushClientAttrib 446glPushMatrix 447glPushName 448glRasterPos2d 449glRasterPos2dv 450glRasterPos2f 451glRasterPos2fv 452glRasterPos2i 453glRasterPos2iv 454glRasterPos2s 455glRasterPos2sv 456glRasterPos3d 457glRasterPos3dv 458glRasterPos3f 459glRasterPos3fv 460glRasterPos3i 461glRasterPos3iv 462glRasterPos3s 463glRasterPos3sv 464glRasterPos4d 465glRasterPos4dv 466glRasterPos4f 467glRasterPos4fv 468glRasterPos4i 469glRasterPos4iv 470glRasterPos4s 471glRasterPos4sv 472glReadBuffer 473glReadPixels 474glRectd 475glRectdv 476glRectf 477glRectfv 478glRecti 479glRectiv 480glRects 481glRectsv 482glRenderMode 483glResetHistogram 484glResetMinmax 485glRotated 486glRotatef 487glSampleCoverage 488glScaled 489glScalef 490glScissor 491glSecondaryColor3b 492glSecondaryColor3bv 493glSecondaryColor3d 494glSecondaryColor3dv 495glSecondaryColor3f 496glSecondaryColor3fv 497glSecondaryColor3i 498glSecondaryColor3iv 499glSecondaryColor3s 500glSecondaryColor3sv 501glSecondaryColor3ub 502glSecondaryColor3ubv 503glSecondaryColor3ui 504glSecondaryColor3uiv 505glSecondaryColor3us 506glSecondaryColor3usv 507glSeparableFilter2D 508glShadeModel 509glStencilFunc 510glStencilMask 511glStencilOp 512glTexCoord1d 513glTexCoord1dv 514glTexCoord1f 515glTexCoord1fv 516glTexCoord1i 517glTexCoord1iv 518glTexCoord1s 519glTexCoord1sv 520glTexCoord2d 521glTexCoord2dv 522glTexCoord2f 523glTexCoord2fv 524glTexCoord2i 525glTexCoord2iv 526glTexCoord2s 527glTexCoord2sv 528glTexCoord3d 529glTexCoord3dv 530glTexCoord3f 531glTexCoord3fv 532glTexCoord3i 533glTexCoord3iv 534glTexCoord3s 535glTexCoord3sv 536glTexCoord4d 537glTexCoord4dv 538glTexCoord4f 539glTexCoord4fv 540glTexCoord4i 541glTexCoord4iv 542glTexCoord4s 543glTexCoord4sv 544glTexEnvf 545glTexEnvfv 546glTexEnvi 547glTexEnviv 548glTexGend 549glTexGendv 550glTexGenf 551glTexGenfv 552glTexGeni 553glTexGeniv 554glTexImage1D 555glTexImage2D 556glTexImage3D 557glTexParameterf 558glTexParameterfv 559glTexParameteri 560glTexParameteriv 561glTexSubImage1D 562glTexSubImage2D 563glTexSubImage3D 564glTranslated 565glTranslatef 566glVertex2d 567glVertex2dv 568glVertex2f 569glVertex2fv 570glVertex2i 571glVertex2iv 572glVertex2s 573glVertex2sv 574glVertex3d 575glVertex3dv 576glVertex3f 577glVertex3fv 578glVertex3i 579glVertex3iv 580glVertex3s 581glVertex3sv 582glVertex4d 583glVertex4dv 584glVertex4f 585glVertex4fv 586glVertex4i 587glVertex4iv 588glVertex4s 589glVertex4sv 590glViewport 591glWindowPos2d 592glWindowPos2dv 593glWindowPos2f 594glWindowPos2fv 595glWindowPos2i 596glWindowPos2iv 597glWindowPos2s 598glWindowPos2sv 599glWindowPos3d 600glWindowPos3dv 601glWindowPos3f 602glWindowPos3fv 603glWindowPos3i 604glWindowPos3iv 605glWindowPos3s 606glWindowPos3sv 607gluBuild1DMipmapLevels 608gluBuild1DMipmaps 609gluBuild2DMipmapLevels 610gluBuild2DMipmaps 611gluBuild3DMipmapLevels 612gluBuild3DMipmaps 613gluCylinder 614gluDisk 615gluLookAt 616gluNewQuadric 617gluOrtho2D 618gluPartialDisk 619gluPerspective 620gluPickMatrix 621gluQuadricDrawStyle 622gluQuadricNormals 623gluQuadricOrientation 624gluQuadricTexture 625gluScaleImage 626gluSphere 627)]{ 628 629These functions are all direct translations of the C OpenGL API.} 630 631@(define-syntax def-one-thing 632 (syntax-rules () 633 [(_ [id pred]) @defthing[id pred]] 634 [(_ id) @defthing[id exact-integer?]])) 635 636@(define-syntax-rule (def-C-const (decl ...) body ...) 637 @deftogether[( 638 @def-one-thing[decl] ... 639 ) body ...]) 640 641@def-C-const[( 642 GL_FALSE 643 GL_TRUE 644 GL_BYTE 645 GL_UNSIGNED_BYTE 646 GL_SHORT 647 GL_UNSIGNED_SHORT 648 GL_INT 649 GL_UNSIGNED_INT 650 GL_FLOAT 651 GL_DOUBLE 652 GL_2_BYTES 653 GL_3_BYTES 654 GL_4_BYTES 655 GL_POINTS 656 GL_LINES 657 GL_LINE_LOOP 658 GL_LINE_STRIP 659 GL_TRIANGLES 660 GL_TRIANGLE_STRIP 661 GL_TRIANGLE_FAN 662 GL_QUADS 663 GL_QUAD_STRIP 664 GL_POLYGON 665 GL_VERTEX_ARRAY 666 GL_NORMAL_ARRAY 667 GL_COLOR_ARRAY 668 GL_INDEX_ARRAY 669 GL_TEXTURE_COORD_ARRAY 670 GL_EDGE_FLAG_ARRAY 671 GL_VERTEX_ARRAY_SIZE 672 GL_VERTEX_ARRAY_TYPE 673 GL_VERTEX_ARRAY_STRIDE 674 GL_NORMAL_ARRAY_TYPE 675 GL_NORMAL_ARRAY_STRIDE 676 GL_COLOR_ARRAY_SIZE 677 GL_COLOR_ARRAY_TYPE 678 GL_COLOR_ARRAY_STRIDE 679 GL_INDEX_ARRAY_TYPE 680 GL_INDEX_ARRAY_STRIDE 681 GL_TEXTURE_COORD_ARRAY_SIZE 682 GL_TEXTURE_COORD_ARRAY_TYPE 683 GL_TEXTURE_COORD_ARRAY_STRIDE 684 GL_EDGE_FLAG_ARRAY_STRIDE 685 GL_VERTEX_ARRAY_POINTER 686 GL_NORMAL_ARRAY_POINTER 687 GL_COLOR_ARRAY_POINTER 688 GL_INDEX_ARRAY_POINTER 689 GL_TEXTURE_COORD_ARRAY_POINTER 690 GL_EDGE_FLAG_ARRAY_POINTER 691 GL_V2F 692 GL_V3F 693 GL_C4UB_V2F 694 GL_C4UB_V3F 695 GL_C3F_V3F 696 GL_N3F_V3F 697 GL_C4F_N3F_V3F 698 GL_T2F_V3F 699 GL_T4F_V4F 700 GL_T2F_C4UB_V3F 701 GL_T2F_C3F_V3F 702 GL_T2F_N3F_V3F 703 GL_T2F_C4F_N3F_V3F 704 GL_T4F_C4F_N3F_V4F 705 GL_MATRIX_MODE 706 GL_MODELVIEW 707 GL_PROJECTION 708 GL_TEXTURE 709 GL_POINT_SMOOTH 710 GL_POINT_SIZE 711 GL_POINT_SIZE_GRANULARITY 712 GL_POINT_SIZE_RANGE 713 GL_LINE_SMOOTH 714 GL_LINE_STIPPLE 715 GL_LINE_STIPPLE_PATTERN 716 GL_LINE_STIPPLE_REPEAT 717 GL_LINE_WIDTH 718 GL_LINE_WIDTH_GRANULARITY 719 GL_LINE_WIDTH_RANGE 720 GL_POINT 721 GL_LINE 722 GL_FILL 723 GL_CW 724 GL_CCW 725 GL_FRONT 726 GL_BACK 727 GL_POLYGON_MODE 728 GL_POLYGON_SMOOTH 729 GL_POLYGON_STIPPLE 730 GL_EDGE_FLAG 731 GL_CULL_FACE 732 GL_CULL_FACE_MODE 733 GL_FRONT_FACE 734 GL_POLYGON_OFFSET_FACTOR 735 GL_POLYGON_OFFSET_UNITS 736 GL_POLYGON_OFFSET_POINT 737 GL_POLYGON_OFFSET_LINE 738 GL_POLYGON_OFFSET_FILL 739 GL_COMPILE 740 GL_COMPILE_AND_EXECUTE 741 GL_LIST_BASE 742 GL_LIST_INDEX 743 GL_LIST_MODE 744 GL_NEVER 745 GL_LESS 746 GL_EQUAL 747 GL_LEQUAL 748 GL_GREATER 749 GL_NOTEQUAL 750 GL_GEQUAL 751 GL_ALWAYS 752 GL_DEPTH_TEST 753 GL_DEPTH_BITS 754 GL_DEPTH_CLEAR_VALUE 755 GL_DEPTH_FUNC 756 GL_DEPTH_RANGE 757 GL_DEPTH_WRITEMASK 758 GL_DEPTH_COMPONENT 759 GL_LIGHTING 760 GL_LIGHT0 761 GL_LIGHT1 762 GL_LIGHT2 763 GL_LIGHT3 764 GL_LIGHT4 765 GL_LIGHT5 766 GL_LIGHT6 767 GL_LIGHT7 768 GL_SPOT_EXPONENT 769 GL_SPOT_CUTOFF 770 GL_CONSTANT_ATTENUATION 771 GL_LINEAR_ATTENUATION 772 GL_QUADRATIC_ATTENUATION 773 GL_AMBIENT 774 GL_DIFFUSE 775 GL_SPECULAR 776 GL_SHININESS 777 GL_EMISSION 778 GL_POSITION 779 GL_SPOT_DIRECTION 780 GL_AMBIENT_AND_DIFFUSE 781 GL_COLOR_INDEXES 782 GL_LIGHT_MODEL_TWO_SIDE 783 GL_LIGHT_MODEL_LOCAL_VIEWER 784 GL_LIGHT_MODEL_AMBIENT 785 GL_FRONT_AND_BACK 786 GL_SHADE_MODEL 787 GL_FLAT 788 GL_SMOOTH 789 GL_COLOR_MATERIAL 790 GL_COLOR_MATERIAL_FACE 791 GL_COLOR_MATERIAL_PARAMETER 792 GL_NORMALIZE 793 GL_CLIP_PLANE0 794 GL_CLIP_PLANE1 795 GL_CLIP_PLANE2 796 GL_CLIP_PLANE3 797 GL_CLIP_PLANE4 798 GL_CLIP_PLANE5 799 GL_ACCUM_RED_BITS 800 GL_ACCUM_GREEN_BITS 801 GL_ACCUM_BLUE_BITS 802 GL_ACCUM_ALPHA_BITS 803 GL_ACCUM_CLEAR_VALUE 804 GL_ACCUM 805 GL_ADD 806 GL_LOAD 807 GL_MULT 808 GL_RETURN 809 GL_ALPHA_TEST 810 GL_ALPHA_TEST_REF 811 GL_ALPHA_TEST_FUNC 812 GL_BLEND 813 GL_BLEND_SRC 814 GL_BLEND_DST 815 GL_ZERO 816 GL_ONE 817 GL_SRC_COLOR 818 GL_ONE_MINUS_SRC_COLOR 819 GL_SRC_ALPHA 820 GL_ONE_MINUS_SRC_ALPHA 821 GL_DST_ALPHA 822 GL_ONE_MINUS_DST_ALPHA 823 GL_DST_COLOR 824 GL_ONE_MINUS_DST_COLOR 825 GL_SRC_ALPHA_SATURATE 826 GL_FEEDBACK 827 GL_RENDER 828 GL_SELECT 829 GL_2D 830 GL_3D 831 GL_3D_COLOR 832 GL_3D_COLOR_TEXTURE 833 GL_4D_COLOR_TEXTURE 834 GL_POINT_TOKEN 835 GL_LINE_TOKEN 836 GL_LINE_RESET_TOKEN 837 GL_POLYGON_TOKEN 838 GL_BITMAP_TOKEN 839 GL_DRAW_PIXEL_TOKEN 840 GL_COPY_PIXEL_TOKEN 841 GL_PASS_THROUGH_TOKEN 842 GL_FEEDBACK_BUFFER_POINTER 843 GL_FEEDBACK_BUFFER_SIZE 844 GL_FEEDBACK_BUFFER_TYPE 845 GL_SELECTION_BUFFER_POINTER 846 GL_SELECTION_BUFFER_SIZE 847 GL_FOG 848 GL_FOG_MODE 849 GL_FOG_DENSITY 850 GL_FOG_COLOR 851 GL_FOG_INDEX 852 GL_FOG_START 853 GL_FOG_END 854 GL_LINEAR 855 GL_EXP 856 GL_EXP2 857 GL_LOGIC_OP 858 GL_INDEX_LOGIC_OP 859 GL_COLOR_LOGIC_OP 860 GL_LOGIC_OP_MODE 861 GL_CLEAR 862 GL_SET 863 GL_COPY 864 GL_COPY_INVERTED 865 GL_NOOP 866 GL_INVERT 867 GL_AND 868 GL_NAND 869 GL_OR 870 GL_NOR 871 GL_XOR 872 GL_EQUIV 873 GL_AND_REVERSE 874 GL_AND_INVERTED 875 GL_OR_REVERSE 876 GL_OR_INVERTED 877 GL_STENCIL_TEST 878 GL_STENCIL_WRITEMASK 879 GL_STENCIL_BITS 880 GL_STENCIL_FUNC 881 GL_STENCIL_VALUE_MASK 882 GL_STENCIL_REF 883 GL_STENCIL_FAIL 884 GL_STENCIL_PASS_DEPTH_PASS 885 GL_STENCIL_PASS_DEPTH_FAIL 886 GL_STENCIL_CLEAR_VALUE 887 GL_STENCIL_INDEX 888 GL_KEEP 889 GL_REPLACE 890 GL_INCR 891 GL_DECR 892 GL_NONE 893 GL_LEFT 894 GL_RIGHT 895 GL_FRONT_LEFT 896 GL_FRONT_RIGHT 897 GL_BACK_LEFT 898 GL_BACK_RIGHT 899 GL_AUX0 900 GL_AUX1 901 GL_AUX2 902 GL_AUX3 903 GL_COLOR_INDEX 904 GL_RED 905 GL_GREEN 906 GL_BLUE 907 GL_ALPHA 908 GL_LUMINANCE 909 GL_LUMINANCE_ALPHA 910 GL_ALPHA_BITS 911 GL_RED_BITS 912 GL_GREEN_BITS 913 GL_BLUE_BITS 914 GL_INDEX_BITS 915 GL_SUBPIXEL_BITS 916 GL_AUX_BUFFERS 917 GL_READ_BUFFER 918 GL_DRAW_BUFFER 919 GL_DOUBLEBUFFER 920 GL_STEREO 921 GL_BITMAP 922 GL_COLOR 923 GL_DEPTH 924 GL_STENCIL 925 GL_DITHER 926 GL_RGB 927 GL_RGBA 928 GL_MAX_LIST_NESTING 929 GL_MAX_ATTRIB_STACK_DEPTH 930 GL_MAX_MODELVIEW_STACK_DEPTH 931 GL_MAX_NAME_STACK_DEPTH 932 GL_MAX_PROJECTION_STACK_DEPTH 933 GL_MAX_TEXTURE_STACK_DEPTH 934 GL_MAX_EVAL_ORDER 935 GL_MAX_LIGHTS 936 GL_MAX_CLIP_PLANES 937 GL_MAX_TEXTURE_SIZE 938 GL_MAX_PIXEL_MAP_TABLE 939 GL_MAX_VIEWPORT_DIMS 940 GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 941 GL_ATTRIB_STACK_DEPTH 942 GL_CLIENT_ATTRIB_STACK_DEPTH 943 GL_COLOR_CLEAR_VALUE 944 GL_COLOR_WRITEMASK 945 GL_CURRENT_INDEX 946 GL_CURRENT_COLOR 947 GL_CURRENT_NORMAL 948 GL_CURRENT_RASTER_COLOR 949 GL_CURRENT_RASTER_DISTANCE 950 GL_CURRENT_RASTER_INDEX 951 GL_CURRENT_RASTER_POSITION 952 GL_CURRENT_RASTER_TEXTURE_COORDS 953 GL_CURRENT_RASTER_POSITION_VALID 954 GL_CURRENT_TEXTURE_COORDS 955 GL_INDEX_CLEAR_VALUE 956 GL_INDEX_MODE 957 GL_INDEX_WRITEMASK 958 GL_MODELVIEW_MATRIX 959 GL_MODELVIEW_STACK_DEPTH 960 GL_NAME_STACK_DEPTH 961 GL_PROJECTION_MATRIX 962 GL_PROJECTION_STACK_DEPTH 963 GL_RENDER_MODE 964 GL_RGBA_MODE 965 GL_TEXTURE_MATRIX 966 GL_TEXTURE_STACK_DEPTH 967 GL_VIEWPORT 968 GL_AUTO_NORMAL 969 GL_MAP1_COLOR_4 970 GL_MAP1_GRID_DOMAIN 971 GL_MAP1_GRID_SEGMENTS 972 GL_MAP1_INDEX 973 GL_MAP1_NORMAL 974 GL_MAP1_TEXTURE_COORD_1 975 GL_MAP1_TEXTURE_COORD_2 976 GL_MAP1_TEXTURE_COORD_3 977 GL_MAP1_TEXTURE_COORD_4 978 GL_MAP1_VERTEX_3 979 GL_MAP1_VERTEX_4 980 GL_MAP2_COLOR_4 981 GL_MAP2_GRID_DOMAIN 982 GL_MAP2_GRID_SEGMENTS 983 GL_MAP2_INDEX 984 GL_MAP2_NORMAL 985 GL_MAP2_TEXTURE_COORD_1 986 GL_MAP2_TEXTURE_COORD_2 987 GL_MAP2_TEXTURE_COORD_3 988 GL_MAP2_TEXTURE_COORD_4 989 GL_MAP2_VERTEX_3 990 GL_MAP2_VERTEX_4 991 GL_COEFF 992 GL_DOMAIN 993 GL_ORDER 994 GL_FOG_HINT 995 GL_LINE_SMOOTH_HINT 996 GL_PERSPECTIVE_CORRECTION_HINT 997 GL_POINT_SMOOTH_HINT 998 GL_POLYGON_SMOOTH_HINT 999 GL_DONT_CARE 1000 GL_FASTEST 1001 GL_NICEST 1002 GL_SCISSOR_TEST 1003 GL_SCISSOR_BOX 1004 GL_MAP_COLOR 1005 GL_MAP_STENCIL 1006 GL_INDEX_SHIFT 1007 GL_INDEX_OFFSET 1008 GL_RED_SCALE 1009 GL_RED_BIAS 1010 GL_GREEN_SCALE 1011 GL_GREEN_BIAS 1012 GL_BLUE_SCALE 1013 GL_BLUE_BIAS 1014 GL_ALPHA_SCALE 1015 GL_ALPHA_BIAS 1016 GL_DEPTH_SCALE 1017 GL_DEPTH_BIAS 1018 GL_PIXEL_MAP_S_TO_S_SIZE 1019 GL_PIXEL_MAP_I_TO_I_SIZE 1020 GL_PIXEL_MAP_I_TO_R_SIZE 1021 GL_PIXEL_MAP_I_TO_G_SIZE 1022 GL_PIXEL_MAP_I_TO_B_SIZE 1023 GL_PIXEL_MAP_I_TO_A_SIZE 1024 GL_PIXEL_MAP_R_TO_R_SIZE 1025 GL_PIXEL_MAP_G_TO_G_SIZE 1026 GL_PIXEL_MAP_B_TO_B_SIZE 1027 GL_PIXEL_MAP_A_TO_A_SIZE 1028 GL_PIXEL_MAP_S_TO_S 1029 GL_PIXEL_MAP_I_TO_I 1030 GL_PIXEL_MAP_I_TO_R 1031 GL_PIXEL_MAP_I_TO_G 1032 GL_PIXEL_MAP_I_TO_B 1033 GL_PIXEL_MAP_I_TO_A 1034 GL_PIXEL_MAP_R_TO_R 1035 GL_PIXEL_MAP_G_TO_G 1036 GL_PIXEL_MAP_B_TO_B 1037 GL_PIXEL_MAP_A_TO_A 1038 GL_PACK_ALIGNMENT 1039 GL_PACK_LSB_FIRST 1040 GL_PACK_ROW_LENGTH 1041 GL_PACK_SKIP_PIXELS 1042 GL_PACK_SKIP_ROWS 1043 GL_PACK_SWAP_BYTES 1044 GL_UNPACK_ALIGNMENT 1045 GL_UNPACK_LSB_FIRST 1046 GL_UNPACK_ROW_LENGTH 1047 GL_UNPACK_SKIP_PIXELS 1048 GL_UNPACK_SKIP_ROWS 1049 GL_UNPACK_SWAP_BYTES 1050 GL_ZOOM_X 1051 GL_ZOOM_Y 1052 GL_TEXTURE_ENV 1053 GL_TEXTURE_ENV_MODE 1054 GL_TEXTURE_1D 1055 GL_TEXTURE_2D 1056 GL_TEXTURE_WRAP_S 1057 GL_TEXTURE_WRAP_T 1058 GL_TEXTURE_MAG_FILTER 1059 GL_TEXTURE_MIN_FILTER 1060 GL_TEXTURE_ENV_COLOR 1061 GL_TEXTURE_GEN_S 1062 GL_TEXTURE_GEN_T 1063 GL_TEXTURE_GEN_MODE 1064 GL_TEXTURE_BORDER_COLOR 1065 GL_TEXTURE_WIDTH 1066 GL_TEXTURE_HEIGHT 1067 GL_TEXTURE_BORDER 1068 GL_TEXTURE_COMPONENTS 1069 GL_TEXTURE_RED_SIZE 1070 GL_TEXTURE_GREEN_SIZE 1071 GL_TEXTURE_BLUE_SIZE 1072 GL_TEXTURE_ALPHA_SIZE 1073 GL_TEXTURE_LUMINANCE_SIZE 1074 GL_TEXTURE_INTENSITY_SIZE 1075 GL_NEAREST_MIPMAP_NEAREST 1076 GL_NEAREST_MIPMAP_LINEAR 1077 GL_LINEAR_MIPMAP_NEAREST 1078 GL_LINEAR_MIPMAP_LINEAR 1079 GL_OBJECT_LINEAR 1080 GL_OBJECT_PLANE 1081 GL_EYE_LINEAR 1082 GL_EYE_PLANE 1083 GL_SPHERE_MAP 1084 GL_DECAL 1085 GL_MODULATE 1086 GL_NEAREST 1087 GL_REPEAT 1088 GL_CLAMP 1089 GL_S 1090 GL_T 1091 GL_R 1092 GL_Q 1093 GL_TEXTURE_GEN_R 1094 GL_TEXTURE_GEN_Q 1095 GL_VENDOR 1096 GL_RENDERER 1097 GL_VERSION 1098 GL_EXTENSIONS 1099 GL_NO_ERROR 1100 GL_INVALID_VALUE 1101 GL_INVALID_ENUM 1102 GL_INVALID_OPERATION 1103 GL_STACK_OVERFLOW 1104 GL_STACK_UNDERFLOW 1105 GL_OUT_OF_MEMORY 1106 GL_CURRENT_BIT 1107 GL_POINT_BIT 1108 GL_LINE_BIT 1109 GL_POLYGON_BIT 1110 GL_POLYGON_STIPPLE_BIT 1111 GL_PIXEL_MODE_BIT 1112 GL_LIGHTING_BIT 1113 GL_FOG_BIT 1114 GL_DEPTH_BUFFER_BIT 1115 GL_ACCUM_BUFFER_BIT 1116 GL_STENCIL_BUFFER_BIT 1117 GL_VIEWPORT_BIT 1118 GL_TRANSFORM_BIT 1119 GL_ENABLE_BIT 1120 GL_COLOR_BUFFER_BIT 1121 GL_HINT_BIT 1122 GL_EVAL_BIT 1123 GL_LIST_BIT 1124 GL_TEXTURE_BIT 1125 GL_SCISSOR_BIT 1126 GL_ALL_ATTRIB_BITS 1127 GL_PROXY_TEXTURE_1D 1128 GL_PROXY_TEXTURE_2D 1129 GL_TEXTURE_PRIORITY 1130 GL_TEXTURE_RESIDENT 1131 GL_TEXTURE_BINDING_1D 1132 GL_TEXTURE_BINDING_2D 1133 GL_TEXTURE_INTERNAL_FORMAT 1134 GL_ALPHA4 1135 GL_ALPHA8 1136 GL_ALPHA12 1137 GL_ALPHA16 1138 GL_LUMINANCE4 1139 GL_LUMINANCE8 1140 GL_LUMINANCE12 1141 GL_LUMINANCE16 1142 GL_LUMINANCE4_ALPHA4 1143 GL_LUMINANCE6_ALPHA2 1144 GL_LUMINANCE8_ALPHA8 1145 GL_LUMINANCE12_ALPHA4 1146 GL_LUMINANCE12_ALPHA12 1147 GL_LUMINANCE16_ALPHA16 1148 GL_INTENSITY 1149 GL_INTENSITY4 1150 GL_INTENSITY8 1151 GL_INTENSITY12 1152 GL_INTENSITY16 1153 GL_R3_G3_B2 1154 GL_RGB4 1155 GL_RGB5 1156 GL_RGB8 1157 GL_RGB10 1158 GL_RGB12 1159 GL_RGB16 1160 GL_RGBA2 1161 GL_RGBA4 1162 GL_RGB5_A1 1163 GL_RGBA8 1164 GL_RGB10_A2 1165 GL_RGBA12 1166 GL_RGBA16 1167 GL_CLIENT_PIXEL_STORE_BIT 1168 GL_CLIENT_VERTEX_ARRAY_BIT 1169 GL_ALL_CLIENT_ATTRIB_BITS 1170 GL_CLIENT_ALL_ATTRIB_BITS 1171 1172 GL_UNSIGNED_BYTE_3_3_2 1173 GL_UNSIGNED_SHORT_4_4_4_4 1174 GL_UNSIGNED_SHORT_5_5_5_1 1175 GL_UNSIGNED_INT_8_8_8_8 1176 GL_UNSIGNED_INT_10_10_10_2 1177 GL_RESCALE_NORMAL 1178 GL_TEXTURE_BINDING_3D 1179 GL_PACK_SKIP_IMAGES 1180 GL_PACK_IMAGE_HEIGHT 1181 GL_UNPACK_SKIP_IMAGES 1182 GL_UNPACK_IMAGE_HEIGHT 1183 GL_TEXTURE_3D 1184 GL_PROXY_TEXTURE_3D 1185 GL_TEXTURE_DEPTH 1186 GL_TEXTURE_WRAP_R 1187 GL_MAX_3D_TEXTURE_SIZE 1188 GL_UNSIGNED_BYTE_2_3_3_REV 1189 GL_UNSIGNED_SHORT_5_6_5 1190 GL_UNSIGNED_SHORT_5_6_5_REV 1191 GL_UNSIGNED_SHORT_4_4_4_4_REV 1192 GL_UNSIGNED_SHORT_1_5_5_5_REV 1193 GL_UNSIGNED_INT_8_8_8_8_REV 1194 GL_UNSIGNED_INT_2_10_10_10_REV 1195 GL_BGR 1196 GL_BGRA 1197 GL_MAX_ELEMENTS_VERTICES 1198 GL_MAX_ELEMENTS_INDICES 1199 GL_CLAMP_TO_EDGE 1200 GL_TEXTURE_MIN_LOD 1201 GL_TEXTURE_MAX_LOD 1202 GL_TEXTURE_BASE_LEVEL 1203 GL_TEXTURE_MAX_LEVEL 1204 GL_LIGHT_MODEL_COLOR_CONTROL 1205 GL_SINGLE_COLOR 1206 GL_SEPARATE_SPECULAR_COLOR 1207 GL_SMOOTH_POINT_SIZE_RANGE 1208 GL_SMOOTH_POINT_SIZE_GRANULARITY 1209 GL_SMOOTH_LINE_WIDTH_RANGE 1210 GL_SMOOTH_LINE_WIDTH_GRANULARITY 1211 GL_ALIASED_POINT_SIZE_RANGE 1212 GL_ALIASED_LINE_WIDTH_RANGE 1213 1214 GL_CONSTANT_COLOR 1215 GL_ONE_MINUS_CONSTANT_COLOR 1216 GL_CONSTANT_ALPHA 1217 GL_ONE_MINUS_CONSTANT_ALPHA 1218 GL_BLEND_COLOR 1219 GL_FUNC_ADD 1220 GL_MIN 1221 GL_MAX 1222 GL_BLEND_EQUATION 1223 GL_FUNC_SUBTRACT 1224 GL_FUNC_REVERSE_SUBTRACT 1225 GL_CONVOLUTION_1D 1226 GL_CONVOLUTION_2D 1227 GL_SEPARABLE_2D 1228 GL_CONVOLUTION_BORDER_MODE 1229 GL_CONVOLUTION_FILTER_SCALE 1230 GL_CONVOLUTION_FILTER_BIAS 1231 GL_REDUCE 1232 GL_CONVOLUTION_FORMAT 1233 GL_CONVOLUTION_WIDTH 1234 GL_CONVOLUTION_HEIGHT 1235 GL_MAX_CONVOLUTION_WIDTH 1236 GL_MAX_CONVOLUTION_HEIGHT 1237 GL_POST_CONVOLUTION_RED_SCALE 1238 GL_POST_CONVOLUTION_GREEN_SCALE 1239 GL_POST_CONVOLUTION_BLUE_SCALE 1240 GL_POST_CONVOLUTION_ALPHA_SCALE 1241 GL_POST_CONVOLUTION_RED_BIAS 1242 GL_POST_CONVOLUTION_GREEN_BIAS 1243 GL_POST_CONVOLUTION_BLUE_BIAS 1244 GL_POST_CONVOLUTION_ALPHA_BIAS 1245 GL_HISTOGRAM 1246 GL_PROXY_HISTOGRAM 1247 GL_HISTOGRAM_WIDTH 1248 GL_HISTOGRAM_FORMAT 1249 GL_HISTOGRAM_RED_SIZE 1250 GL_HISTOGRAM_GREEN_SIZE 1251 GL_HISTOGRAM_BLUE_SIZE 1252 GL_HISTOGRAM_ALPHA_SIZE 1253 GL_HISTOGRAM_LUMINANCE_SIZE 1254 GL_HISTOGRAM_SINK 1255 GL_MINMAX 1256 GL_MINMAX_FORMAT 1257 GL_MINMAX_SINK 1258 GL_TABLE_TOO_LARGE 1259 GL_COLOR_MATRIX 1260 GL_COLOR_MATRIX_STACK_DEPTH 1261 GL_MAX_COLOR_MATRIX_STACK_DEPTH 1262 GL_POST_COLOR_MATRIX_RED_SCALE 1263 GL_POST_COLOR_MATRIX_GREEN_SCALE 1264 GL_POST_COLOR_MATRIX_BLUE_SCALE 1265 GL_POST_COLOR_MATRIX_ALPHA_SCALE 1266 GL_POST_COLOR_MATRIX_RED_BIAS 1267 GL_POST_COLOR_MATRIX_GREEN_BIAS 1268 GL_POST_COLOR_MATRIX_BLUE_BIAS 1269 GL_POST_COLOR_MATRIX_ALPHA_BIAS 1270 GL_COLOR_TABLE 1271 GL_POST_CONVOLUTION_COLOR_TABLE 1272 GL_POST_COLOR_MATRIX_COLOR_TABLE 1273 GL_PROXY_COLOR_TABLE 1274 GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 1275 GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 1276 GL_COLOR_TABLE_SCALE 1277 GL_COLOR_TABLE_BIAS 1278 GL_COLOR_TABLE_FORMAT 1279 GL_COLOR_TABLE_WIDTH 1280 GL_COLOR_TABLE_RED_SIZE 1281 GL_COLOR_TABLE_GREEN_SIZE 1282 GL_COLOR_TABLE_BLUE_SIZE 1283 GL_COLOR_TABLE_ALPHA_SIZE 1284 GL_COLOR_TABLE_LUMINANCE_SIZE 1285 GL_COLOR_TABLE_INTENSITY_SIZE 1286 GL_CONSTANT_BORDER 1287 GL_REPLICATE_BORDER 1288 GL_CONVOLUTION_BORDER_COLOR 1289 1290 GL_TEXTURE0 1291 GL_TEXTURE1 1292 GL_TEXTURE2 1293 GL_TEXTURE3 1294 GL_TEXTURE4 1295 GL_TEXTURE5 1296 GL_TEXTURE6 1297 GL_TEXTURE7 1298 GL_TEXTURE8 1299 GL_TEXTURE9 1300 GL_TEXTURE10 1301 GL_TEXTURE11 1302 GL_TEXTURE12 1303 GL_TEXTURE13 1304 GL_TEXTURE14 1305 GL_TEXTURE15 1306 GL_TEXTURE16 1307 GL_TEXTURE17 1308 GL_TEXTURE18 1309 GL_TEXTURE19 1310 GL_TEXTURE20 1311 GL_TEXTURE21 1312 GL_TEXTURE22 1313 GL_TEXTURE23 1314 GL_TEXTURE24 1315 GL_TEXTURE25 1316 GL_TEXTURE26 1317 GL_TEXTURE27 1318 GL_TEXTURE28 1319 GL_TEXTURE29 1320 GL_TEXTURE30 1321 GL_TEXTURE31 1322 GL_ACTIVE_TEXTURE 1323 GL_CLIENT_ACTIVE_TEXTURE 1324 GL_MAX_TEXTURE_UNITS 1325 GL_TRANSPOSE_MODELVIEW_MATRIX 1326 GL_TRANSPOSE_PROJECTION_MATRIX 1327 GL_TRANSPOSE_TEXTURE_MATRIX 1328 GL_TRANSPOSE_COLOR_MATRIX 1329 GL_MULTISAMPLE 1330 GL_SAMPLE_ALPHA_TO_COVERAGE 1331 GL_SAMPLE_ALPHA_TO_ONE 1332 GL_SAMPLE_COVERAGE 1333 GL_SAMPLE_BUFFERS 1334 GL_SAMPLES 1335 GL_SAMPLE_COVERAGE_VALUE 1336 GL_SAMPLE_COVERAGE_INVERT 1337 GL_MULTISAMPLE_BIT 1338 GL_NORMAL_MAP 1339 GL_REFLECTION_MAP 1340 GL_TEXTURE_CUBE_MAP 1341 GL_TEXTURE_BINDING_CUBE_MAP 1342 GL_TEXTURE_CUBE_MAP_POSITIVE_X 1343 GL_TEXTURE_CUBE_MAP_NEGATIVE_X 1344 GL_TEXTURE_CUBE_MAP_POSITIVE_Y 1345 GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 1346 GL_TEXTURE_CUBE_MAP_POSITIVE_Z 1347 GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 1348 GL_PROXY_TEXTURE_CUBE_MAP 1349 GL_MAX_CUBE_MAP_TEXTURE_SIZE 1350 GL_COMPRESSED_ALPHA 1351 GL_COMPRESSED_LUMINANCE 1352 GL_COMPRESSED_LUMINANCE_ALPHA 1353 GL_COMPRESSED_INTENSITY 1354 GL_COMPRESSED_RGB 1355 GL_COMPRESSED_RGBA 1356 GL_TEXTURE_COMPRESSION_HINT 1357 GL_TEXTURE_COMPRESSED_IMAGE_SIZE 1358 GL_TEXTURE_COMPRESSED 1359 GL_NUM_COMPRESSED_TEXTURE_FORMATS 1360 GL_COMPRESSED_TEXTURE_FORMATS 1361 GL_CLAMP_TO_BORDER 1362 GL_COMBINE 1363 GL_COMBINE_RGB 1364 GL_COMBINE_ALPHA 1365 GL_SOURCE0_RGB 1366 GL_SOURCE1_RGB 1367 GL_SOURCE2_RGB 1368 GL_SOURCE0_ALPHA 1369 GL_SOURCE1_ALPHA 1370 GL_SOURCE2_ALPHA 1371 GL_OPERAND0_RGB 1372 GL_OPERAND1_RGB 1373 GL_OPERAND2_RGB 1374 GL_OPERAND0_ALPHA 1375 GL_OPERAND1_ALPHA 1376 GL_OPERAND2_ALPHA 1377 GL_RGB_SCALE 1378 GL_ADD_SIGNED 1379 GL_INTERPOLATE 1380 GL_SUBTRACT 1381 GL_CONSTANT 1382 GL_PRIMARY_COLOR 1383 GL_PREVIOUS 1384 GL_DOT3_RGB 1385 GL_DOT3_RGBA 1386 1387 GL_BLEND_DST_RGB 1388 GL_BLEND_SRC_RGB 1389 GL_BLEND_DST_ALPHA 1390 GL_BLEND_SRC_ALPHA 1391 GL_POINT_SIZE_MIN 1392 GL_POINT_SIZE_MAX 1393 GL_POINT_FADE_THRESHOLD_SIZE 1394 GL_POINT_DISTANCE_ATTENUATION 1395 GL_GENERATE_MIPMAP 1396 GL_GENERATE_MIPMAP_HINT 1397 GL_DEPTH_COMPONENT16 1398 GL_DEPTH_COMPONENT24 1399 GL_DEPTH_COMPONENT32 1400 GL_MIRRORED_REPEAT 1401 GL_FOG_COORDINATE_SOURCE 1402 GL_FOG_COORDINATE 1403 GL_FRAGMENT_DEPTH 1404 GL_CURRENT_FOG_COORDINATE 1405 GL_FOG_COORDINATE_ARRAY_TYPE 1406 GL_FOG_COORDINATE_ARRAY_STRIDE 1407 GL_FOG_COORDINATE_ARRAY_POINTER 1408 GL_FOG_COORDINATE_ARRAY 1409 GL_COLOR_SUM 1410 GL_CURRENT_SECONDARY_COLOR 1411 GL_SECONDARY_COLOR_ARRAY_SIZE 1412 GL_SECONDARY_COLOR_ARRAY_TYPE 1413 GL_SECONDARY_COLOR_ARRAY_STRIDE 1414 GL_SECONDARY_COLOR_ARRAY_POINTER 1415 GL_SECONDARY_COLOR_ARRAY 1416 GL_MAX_TEXTURE_LOD_BIAS 1417 GL_TEXTURE_FILTER_CONTROL 1418 GL_TEXTURE_LOD_BIAS 1419 GL_INCR_WRAP 1420 GL_DECR_WRAP 1421 GL_TEXTURE_DEPTH_SIZE 1422 GL_DEPTH_TEXTURE_MODE 1423 GL_TEXTURE_COMPARE_MODE 1424 GL_TEXTURE_COMPARE_FUNC 1425 GL_COMPARE_R_TO_TEXTURE 1426 1427 GL_BUFFER_SIZE 1428 GL_BUFFER_USAGE 1429 GL_QUERY_COUNTER_BITS 1430 GL_CURRENT_QUERY 1431 GL_QUERY_RESULT 1432 GL_QUERY_RESULT_AVAILABLE 1433 GL_ARRAY_BUFFER 1434 GL_ELEMENT_ARRAY_BUFFER 1435 GL_ARRAY_BUFFER_BINDING 1436 GL_ELEMENT_ARRAY_BUFFER_BINDING 1437 GL_VERTEX_ARRAY_BUFFER_BINDING 1438 GL_NORMAL_ARRAY_BUFFER_BINDING 1439 GL_COLOR_ARRAY_BUFFER_BINDING 1440 GL_INDEX_ARRAY_BUFFER_BINDING 1441 GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 1442 GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 1443 GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 1444 GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 1445 GL_WEIGHT_ARRAY_BUFFER_BINDING 1446 GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 1447 GL_READ_ONLY 1448 GL_WRITE_ONLY 1449 GL_READ_WRITE 1450 GL_BUFFER_ACCESS 1451 GL_BUFFER_MAPPED 1452 GL_BUFFER_MAP_POINTER 1453 GL_STREAM_DRAW 1454 GL_STREAM_READ 1455 GL_STREAM_COPY 1456 GL_STATIC_DRAW 1457 GL_STATIC_READ 1458 GL_STATIC_COPY 1459 GL_DYNAMIC_DRAW 1460 GL_DYNAMIC_READ 1461 GL_DYNAMIC_COPY 1462 GL_SAMPLES_PASSED 1463 GL_FOG_COORD_SRC 1464 GL_FOG_COORD 1465 GL_CURRENT_FOG_COORD 1466 GL_FOG_COORD_ARRAY_TYPE 1467 GL_FOG_COORD_ARRAY_STRIDE 1468 GL_FOG_COORD_ARRAY_POINTER 1469 GL_FOG_COORD_ARRAY 1470 GL_FOG_COORD_ARRAY_BUFFER_BINDING 1471 GL_SRC0_RGB 1472 GL_SRC1_RGB 1473 GL_SRC2_RGB 1474 GL_SRC0_ALPHA 1475 GL_SRC1_ALPHA 1476 GL_SRC2_ALPHA 1477 1478 GLU_FALSE 1479 GLU_TRUE 1480 GLU_VERSION 1481 GLU_EXTENSIONS 1482 GLU_INVALID_ENUM 1483 GLU_INVALID_VALUE 1484 GLU_OUT_OF_MEMORY 1485 GLU_INVALID_OPERATION 1486 GLU_OUTLINE_POLYGON 1487 GLU_OUTLINE_PATCH 1488 GLU_NURBS_ERROR 1489 GLU_ERROR 1490 GLU_NURBS_BEGIN 1491 GLU_NURBS_BEGIN_EXT 1492 GLU_NURBS_VERTEX 1493 GLU_NURBS_VERTEX_EXT 1494 GLU_NURBS_NORMAL 1495 GLU_NURBS_NORMAL_EXT 1496 GLU_NURBS_COLOR 1497 GLU_NURBS_COLOR_EXT 1498 GLU_NURBS_TEXTURE_COORD 1499 GLU_NURBS_TEX_COORD_EXT 1500 GLU_NURBS_END 1501 GLU_NURBS_END_EXT 1502 GLU_NURBS_BEGIN_DATA 1503 GLU_NURBS_BEGIN_DATA_EXT 1504 GLU_NURBS_VERTEX_DATA 1505 GLU_NURBS_VERTEX_DATA_EXT 1506 GLU_NURBS_NORMAL_DATA 1507 GLU_NURBS_NORMAL_DATA_EXT 1508 GLU_NURBS_COLOR_DATA 1509 GLU_NURBS_COLOR_DATA_EXT 1510 GLU_NURBS_TEXTURE_COORD_DATA 1511 GLU_NURBS_TEX_COORD_DATA_EXT 1512 GLU_NURBS_END_DATA 1513 GLU_NURBS_END_DATA_EXT 1514 GLU_NURBS_ERROR1 1515 GLU_NURBS_ERROR2 1516 GLU_NURBS_ERROR3 1517 GLU_NURBS_ERROR4 1518 GLU_NURBS_ERROR5 1519 GLU_NURBS_ERROR6 1520 GLU_NURBS_ERROR7 1521 GLU_NURBS_ERROR8 1522 GLU_NURBS_ERROR9 1523 GLU_NURBS_ERROR10 1524 GLU_NURBS_ERROR11 1525 GLU_NURBS_ERROR12 1526 GLU_NURBS_ERROR13 1527 GLU_NURBS_ERROR14 1528 GLU_NURBS_ERROR15 1529 GLU_NURBS_ERROR16 1530 GLU_NURBS_ERROR17 1531 GLU_NURBS_ERROR18 1532 GLU_NURBS_ERROR19 1533 GLU_NURBS_ERROR20 1534 GLU_NURBS_ERROR21 1535 GLU_NURBS_ERROR22 1536 GLU_NURBS_ERROR23 1537 GLU_NURBS_ERROR24 1538 GLU_NURBS_ERROR25 1539 GLU_NURBS_ERROR26 1540 GLU_NURBS_ERROR27 1541 GLU_NURBS_ERROR28 1542 GLU_NURBS_ERROR29 1543 GLU_NURBS_ERROR30 1544 GLU_NURBS_ERROR31 1545 GLU_NURBS_ERROR32 1546 GLU_NURBS_ERROR33 1547 GLU_NURBS_ERROR34 1548 GLU_NURBS_ERROR35 1549 GLU_NURBS_ERROR36 1550 GLU_NURBS_ERROR37 1551 GLU_AUTO_LOAD_MATRIX 1552 GLU_CULLING 1553 GLU_SAMPLING_TOLERANCE 1554 GLU_DISPLAY_MODE 1555 GLU_PARAMETRIC_TOLERANCE 1556 GLU_SAMPLING_METHOD 1557 GLU_U_STEP 1558 GLU_V_STEP 1559 GLU_NURBS_MODE 1560 GLU_NURBS_MODE_EXT 1561 GLU_NURBS_TESSELLATOR 1562 GLU_NURBS_TESSELLATOR_EXT 1563 GLU_NURBS_RENDERER 1564 GLU_NURBS_RENDERER_EXT 1565 GLU_OBJECT_PARAMETRIC_ERROR 1566 GLU_OBJECT_PARAMETRIC_ERROR_EXT 1567 GLU_OBJECT_PATH_LENGTH 1568 GLU_OBJECT_PATH_LENGTH_EXT 1569 GLU_PATH_LENGTH 1570 GLU_PARAMETRIC_ERROR 1571 GLU_DOMAIN_DISTANCE 1572 GLU_MAP1_TRIM_2 1573 GLU_MAP1_TRIM_3 1574 GLU_POINT 1575 GLU_LINE 1576 GLU_FILL 1577 GLU_SILHOUETTE 1578 GLU_SMOOTH 1579 GLU_FLAT 1580 GLU_NONE 1581 GLU_OUTSIDE 1582 GLU_INSIDE 1583 GLU_TESS_BEGIN 1584 GLU_BEGIN 1585 GLU_TESS_VERTEX 1586 GLU_VERTEX 1587 GLU_TESS_END 1588 GLU_END 1589 GLU_TESS_ERROR 1590 GLU_TESS_EDGE_FLAG 1591 GLU_EDGE_FLAG 1592 GLU_TESS_COMBINE 1593 GLU_TESS_BEGIN_DATA 1594 GLU_TESS_VERTEX_DATA 1595 GLU_TESS_END_DATA 1596 GLU_TESS_ERROR_DATA 1597 GLU_TESS_EDGE_FLAG_DATA 1598 GLU_TESS_COMBINE_DATA 1599 GLU_CW 1600 GLU_CCW 1601 GLU_INTERIOR 1602 GLU_EXTERIOR 1603 GLU_UNKNOWN 1604 GLU_TESS_WINDING_RULE 1605 GLU_TESS_BOUNDARY_ONLY 1606 GLU_TESS_TOLERANCE 1607 GLU_TESS_ERROR1 1608 GLU_TESS_ERROR2 1609 GLU_TESS_ERROR3 1610 GLU_TESS_ERROR4 1611 GLU_TESS_ERROR5 1612 GLU_TESS_ERROR6 1613 GLU_TESS_ERROR7 1614 GLU_TESS_ERROR8 1615 GLU_TESS_MISSING_BEGIN_POLYGON 1616 GLU_TESS_MISSING_BEGIN_CONTOUR 1617 GLU_TESS_MISSING_END_POLYGON 1618 GLU_TESS_MISSING_END_CONTOUR 1619 GLU_TESS_COORD_TOO_LARGE 1620 GLU_TESS_NEED_COMBINE_CALLBACK 1621 GLU_TESS_WINDING_ODD 1622 GLU_TESS_WINDING_NONZERO 1623 GLU_TESS_WINDING_POSITIVE 1624 GLU_TESS_WINDING_NEGATIVE 1625 GLU_TESS_WINDING_ABS_GEQ_TWO 1626 [GLU_TESS_MAX_COORD real?] 1627)]{ 1628All OpenGL-defined constants.} 1629 1630@defproc[(feedback-buffer->gl-float-vector [buf feedback-buffer-object?]) 1631 gl-float-vector?]{ 1632 1633Converts a result from @racket[glFeedbackBuffer] to a vector.} 1634 1635@defproc[(select-buffer->gl-uint-vector [buf select-buffer-object?]) 1636 gl-uint-vector?]{ 1637 1638Converts a result from @racket[glSelectBuffer] to a vector.} 1639