PageRenderTime 62ms CodeModel.GetById 24ms RepoModel.GetById 1ms app.codeStats 0ms

/ecl-12.2.1/src/clx/gl.lisp

#
Lisp | 3692 lines | 2849 code | 578 blank | 265 comment | 6 complexity | b977e37f99e74b15f7e77de4cc672a87 MD5 | raw file
Possible License(s): JSON, CC-BY-SA-3.0, GPL-2.0, LGPL-2.1, LGPL-2.0

Large files files are truncated, but you can click here to view the full file

  1. (defpackage :gl
  2. (:use :common-lisp :xlib)
  3. (:import-from :glx
  4. "*CURRENT-CONTEXT*"
  5. "CONTEXT"
  6. "CONTEXT-P"
  7. "CONTEXT-DISPLAY"
  8. "CONTEXT-TAG"
  9. "CONTEXT-RBUF"
  10. "CONTEXT-INDEX"
  11. )
  12. (:import-from :xlib
  13. "DATA"
  14. "WITH-BUFFER-REQUEST"
  15. "WITH-BUFFER-REQUEST-AND-REPLY"
  16. "CARD32-GET"
  17. "SEQUENCE-GET"
  18. "WITH-DISPLAY"
  19. "DISPLAY-FORCE-OUTPUT"
  20. "INT8" "INT16" "INT32" "INTEGER"
  21. "CARD8" "CARD16" "CARD32"
  22. "ASET-CARD8"
  23. "ASET-CARD16"
  24. "ASET-CARD32"
  25. "ASET-INT8"
  26. "ASET-INT16"
  27. "ASET-INT32"
  28. "DECLARE-BUFFUN"
  29. ;; Types
  30. "ARRAY-INDEX"
  31. "BUFFER-BYTES"
  32. )
  33. (:export "GET-STRING"
  34. ;; Rendering commands (alphabetical order)
  35. "ACCUM"
  36. "ACTIVE-TEXTURE-ARB"
  37. "ALPHA-FUNC"
  38. "BEGIN"
  39. "BIND-TEXTURE"
  40. "BLEND-COLOR"
  41. "BLEND-EQUOTION"
  42. "BLEND-FUNC"
  43. "CALL-LIST"
  44. "CLEAR"
  45. "CLEAR-ACCUM"
  46. "CLEAR-COLOR"
  47. "CLEAR-DEPTH"
  48. "CLEAR-INDEX"
  49. "CLEAR-STENCIL"
  50. "CLIP-PLANE"
  51. "COLOR-3B"
  52. "COLOR-3D"
  53. "COLOR-3F"
  54. "COLOR-3I"
  55. "COLOR-3S"
  56. "COLOR-3UB"
  57. "COLOR-3UI"
  58. "COLOR-3US"
  59. "COLOR-4B"
  60. "COLOR-4D"
  61. "COLOR-4F"
  62. "COLOR-4I"
  63. "COLOR-4S"
  64. "COLOR-4UB"
  65. "COLOR-4UI"
  66. "COLOR-4US"
  67. "COLOR-MASK"
  68. "COLOR-MATERIAL"
  69. "CONVOLUTION-PARAMETER-F"
  70. "CONVOLUTION-PARAMETER-I"
  71. "COPY-COLOR-SUB-TABLE"
  72. "COPY-COLOR-TABLE"
  73. "COPY-CONVOLUTION-FILTER-ID"
  74. "COPY-CONVOLUTION-FILTER-2D"
  75. "COPY-PIXELS"
  76. "COPY-TEX-IMAGE-1D"
  77. "COPY-TEX-IMAGE-2D"
  78. "COPY-TEX-SUB-IMAGE-1D"
  79. "COPY-TEX-SUB-IMAGE-2D"
  80. "COPY-TEX-SUB-IMAGE-3D"
  81. "CULL-FACE"
  82. "DEPTH-FUNC"
  83. "DEPTH-MASK"
  84. "DEPTH-RANGE"
  85. "DRAW-BUFFER"
  86. "EDGE-FLAG-V"
  87. "END"
  88. "EVAL-COORD-1D"
  89. "EVAL-COORD-1F"
  90. "EVAL-COORD-2D"
  91. "EVAL-COORD-2F"
  92. "EVAL-MESH-1"
  93. "EVAL-MESH-2"
  94. "EVAL-POINT-1"
  95. "EVAL-POINT-2"
  96. "FOG-F"
  97. "FOG-I"
  98. "FRONT-FACE"
  99. "FRUSTUM"
  100. "HINT"
  101. "HISTOGRAM"
  102. "INDEX-MASK"
  103. "INDEX-D"
  104. "INDEX-F"
  105. "INDEX-I"
  106. "INDEX-S"
  107. "INDEX-UB"
  108. "INIT-NAMES"
  109. "LIGHT-MODEL-F"
  110. "LIGHT-MODEL-I"
  111. "LIGHT-F"
  112. "LIGHT-FV"
  113. "LIGHT-I"
  114. "LIGHT-IV"
  115. "LINE-STIPPLE"
  116. "LINE-WIDTH"
  117. "LIST-BASE"
  118. "LOAD-IDENTITY"
  119. "LOAD-NAME"
  120. "LOGIC-OP"
  121. "MAP-GRID-1D"
  122. "MAP-GRID-1F"
  123. "MAP-GRID-2D"
  124. "MAP-GRID-2F"
  125. "MATERIAL-F"
  126. "MATERIAL-FV"
  127. "MATERIAL-I"
  128. "MATERIAL-IV"
  129. "MATRIX-MODE"
  130. "MINMAX"
  131. "MULTI-TEX-COORD-1D-ARB"
  132. "MULTI-TEX-COORD-1F-ARB"
  133. "MULTI-TEX-COORD-1I-ARB"
  134. "MULTI-TEX-COORD-1S-ARB"
  135. "MULTI-TEX-COORD-2D-ARB"
  136. "MULTI-TEX-COORD-2F-ARB"
  137. "MULTI-TEX-COORD-2I-ARB"
  138. "MULTI-TEX-COORD-2S-ARB"
  139. "MULTI-TEX-COORD-3D-ARB"
  140. "MULTI-TEX-COORD-3F-ARB"
  141. "MULTI-TEX-COORD-3I-ARB"
  142. "MULTI-TEX-COORD-3S-ARB"
  143. "MULTI-TEX-COORD-4D-ARB"
  144. "MULTI-TEX-COORD-4F-ARB"
  145. "MULTI-TEX-COORD-4I-ARB"
  146. "MULTI-TEX-COORD-4S-ARB"
  147. "NORMAL-3B"
  148. "NORMAL-3D"
  149. "NORMAL-3F"
  150. "NORMAL-3I"
  151. "NORMAL-3S"
  152. "ORTHO"
  153. "PASS-THROUGH"
  154. "PIXEL-TRANSFER-F"
  155. "PIXEL-TRANSFER-I"
  156. "PIXEL-ZOOM"
  157. "POINT-SIZE"
  158. "POLYGON-MODE"
  159. "POLYGON-OFFSET"
  160. "POP-ATTRIB"
  161. "POP-MATRIX"
  162. "POP-NAME"
  163. "PUSH-ATTRIB"
  164. "PUSH-MATRIX"
  165. "PUSH-NAME"
  166. "RASTER-POS-2D"
  167. "RASTER-POS-2F"
  168. "RASTER-POS-2I"
  169. "RASTER-POS-2S"
  170. "RASTER-POS-3D"
  171. "RASTER-POS-3F"
  172. "RASTER-POS-3I"
  173. "RASTER-POS-3S"
  174. "RASTER-POS-4D"
  175. "RASTER-POS-4F"
  176. "RASTER-POS-4I"
  177. "RASTER-POS-4S"
  178. "READ-BUFFER"
  179. "RECT-D"
  180. "RECT-F"
  181. "RECT-I"
  182. "RECT-S"
  183. "RESET-HISTOGRAM"
  184. "RESET-MINMAX"
  185. "ROTATE-D"
  186. "ROTATE-F"
  187. "SCALE-D"
  188. "SCALE-F"
  189. "SCISSOR"
  190. "SHADE-MODEL"
  191. "STENCIL-FUNC"
  192. "STENCIL-MASK"
  193. "STENCIL-OP"
  194. "TEX-ENV-F"
  195. "TEX-ENV-I"
  196. "TEX-GEN-D"
  197. "TEX-GEN-F"
  198. "TEX-GEN-I"
  199. "TEX-PARAMETER-F"
  200. "TEX-PARAMETER-I"
  201. "TRANSLATE-D"
  202. "TRANSLATE-F"
  203. "VERTEX-2D"
  204. "VERTEX-2F"
  205. "VERTEX-2I"
  206. "VERTEX-2S"
  207. "VERTEX-3D"
  208. "VERTEX-3F"
  209. "VERTEX-3I"
  210. "VERTEX-3S"
  211. "VERTEX-4D"
  212. "VERTEX-4F"
  213. "VERTEX-4I"
  214. "VERTEX-4S"
  215. "VIEWPORT"
  216. ;; * Where did this come from?
  217. ;;"NO-FLOATS"
  218. ;; Non-rendering commands
  219. "NEW-LIST"
  220. "END-LIST"
  221. "GEN-LISTS"
  222. "ENABLE"
  223. "DISABLE"
  224. "FLUSH"
  225. "FINISH"
  226. ;; Constants
  227. ;; Boolean
  228. "+FALSE+"
  229. "+TRUE+"
  230. ;; Types
  231. "+BYTE+"
  232. "+UNSIGNED-BYTE+"
  233. "+SHORT+"
  234. "+UNSIGNED-SHORT+"
  235. "+INT+"
  236. "+UNSIGNED-INT+"
  237. "+FLOAT+"
  238. "+DOUBLE+"
  239. "+2-BYTES+"
  240. "+3-BYTES+"
  241. "+4-BYTES+"
  242. ;; Primitives
  243. "+POINTS+"
  244. "+LINES+"
  245. "+LINE-LOOP+"
  246. "+LINE-STRIP+"
  247. "+TRIANGLES+"
  248. "+TRIANGLE-STRIP+"
  249. "+triangle-fan+"
  250. "+QUADS+"
  251. "+QUAD-STRIP+"
  252. "+POLYGON+"
  253. ;; Arrays
  254. "+VERTEX-ARRAY+"
  255. "+NORMAL-ARRAY+"
  256. "+COLOR-ARRAY+"
  257. "+INDEX-ARRAY+"
  258. "+TEXTURE-COORD-ARRAY+"
  259. "+EDGE-FLAG-ARRAY+"
  260. "+VERTEX-ARRAY-SIZE+"
  261. "+VERTEX-ARRAY-TYPE+"
  262. "+VERTEX-ARRAY-STRIDE+"
  263. "+NORMAL-ARRAY-TYPE+"
  264. "+NORMAL-ARRAY-STRIDE+"
  265. "+COLOR-ARRAY-SIZE+"
  266. "+COLOR-ARRAY-TYPE+"
  267. "+COLOR-ARRAY-STRIDE+"
  268. "+INDEX-ARRAY-TYPE+"
  269. "+INDEX-ARRAY-STRIDE+"
  270. "+TEXTURE-COORD-ARRAY-SIZE+"
  271. "+TEXTURE-COORD-ARRAY-TYPE+"
  272. "+TEXTURE-COORD-ARRAY-STRIDE+"
  273. "+EDGE-FLAG-ARRAY-STRIDE+"
  274. "+VERTEX-ARRAY-POINTER+"
  275. "+NORMAL-ARRAY-POINTER+"
  276. "+COLOR-ARRAY-POINTER+"
  277. "+INDEX-ARRAY-POINTER+"
  278. "+TEXTURE-COORD-ARRAY-POINTER+"
  279. "+EDGE-FLAG-ARRAY-POINTER+"
  280. ;; Array formats
  281. "+V2F+"
  282. "+V3F+"
  283. "+C4UB-V2F+"
  284. "+C4UB-V3F+"
  285. "+C3F-V3F+"
  286. "+N3F-V3F+"
  287. "+C4F-N3F-V3F+"
  288. "+T2F-V3F+"
  289. "+T4F-V4F+"
  290. "+T2F-C4UB-V3F+"
  291. "+T2F-C3F-V3F+"
  292. "+T2F-N3F-V3F+"
  293. "+T2F-C4F-N3F-V3F+"
  294. "+T4F-C4F-N3F-V4F+"
  295. ;; Matrices
  296. "+MATRIX-MODE+"
  297. "+MODELVIEW+"
  298. "+PROJECTION+"
  299. "+TEXTURE+"
  300. ;; Points
  301. "+POINT-SMOOTH+"
  302. "+POINT-SIZE+"
  303. "+POINT-SIZE-GRANULARITY+"
  304. "+POINT-SIZE-RANGE+"
  305. ;; Lines
  306. "+LINE-SMOOTH+"
  307. "+LINE-STIPPLE+"
  308. "+LINE-STIPPLE-PATTERN+"
  309. "+LINE-STIPPLE-REPEAT+"
  310. "+LINE-WIDTH+"
  311. "+LINE-WIDTH-GRANULARITY+"
  312. "+LINE-WIDTH-RANGE+"
  313. ;; Polygons
  314. "+POINT+"
  315. "+LINE+"
  316. "+FILL+"
  317. "+CW+"
  318. "+CCW+"
  319. "+FRONT+"
  320. "+BACK+"
  321. "+POLYGON-MODE+"
  322. "+POLYGON-SMOOTH+"
  323. "+POLYGON-STIPPLE+"
  324. "+EDGE-FLAG+"
  325. "+CULL-FACE+"
  326. "+CULL-FACE-MODE+"
  327. "+FRONT-FACE+"
  328. "+POLYGON-OFFSET-FACTOR+"
  329. "+POLYGON-OFFSET-UNITS+"
  330. "+POLYGON-OFFSET-POINT+"
  331. "+POLYGON-OFFSET-LINE+"
  332. "+POLYGON-OFFSET-FILL+"
  333. ;; Display Lists
  334. "+COMPILE+"
  335. "+COMPILE-AND-EXECUTE+"
  336. "+LIST-BASE+"
  337. "+LIST-INDEX+"
  338. "+LIST-MODE+"
  339. ;; Depth Buffer
  340. "+NEVER+"
  341. "+LESS+"
  342. "+EQUAL+"
  343. "+LEQUAL+"
  344. "+GREATER+"
  345. "+NOTEQUAL+"
  346. "+GEQUAL+"
  347. "+ALWAYS+"
  348. "+DEPTH-TEST+"
  349. "+DEPTH-BITS+"
  350. "+DEPTH-CLEAR-VALUE+"
  351. "+DEPTH-FUNC+"
  352. "+DEPTH-RANGE+"
  353. "+DEPTH-WRITEMASK+"
  354. "+DEPTH-COMPONENT+"
  355. ;; Lighting
  356. "+LIGHTING+"
  357. "+LIGHT0+"
  358. "+LIGHT1+"
  359. "+LIGHT2+"
  360. "+LIGHT3+"
  361. "+LIGHT4+"
  362. "+LIGHT5+"
  363. "+LIGHT6+"
  364. "+LIGHT7+"
  365. "+SPOT-EXPONENT+"
  366. "+SPOT-CUTOFF+"
  367. "+CONSTANT-ATTENUATION+"
  368. "+LINEAR-ATTENUATION+"
  369. "+QUADRATIC-ATTENUATION+"
  370. "+AMBIENT+"
  371. "+DIFFUSE+"
  372. "+SPECULAR+"
  373. "+SHININESS+"
  374. "+EMISSION+"
  375. "+POSITION+"
  376. "+SPOT-DIRECTION+"
  377. "+AMBIENT-AND-DIFFUSE+"
  378. "+COLOR-INDEXES+"
  379. "+LIGHT-MODEL-TWO-SIDE+"
  380. "+LIGHT-MODEL-LOCAL-VIEWER+"
  381. "+LIGHT-MODEL-AMBIENT+"
  382. "+FRONT-AND-BACK+"
  383. "+SHADE-MODEL+"
  384. "+FLAT+"
  385. "+SMOOTH+"
  386. "+COLOR-MATERIAL+"
  387. "+COLOR-MATERIAL-FACE+"
  388. "+COLOR-MATERIAL-PARAMETER+"
  389. "+NORMALIZE+"
  390. ;; Clipping planes
  391. "+CLIP-PLANE0+"
  392. "+CLIP-PLANE1+"
  393. "+CLIP-PLANE2+"
  394. "+CLIP-PLANE3+"
  395. "+CLIP-PLANE4+"
  396. "+CLIP-PLANE5+"
  397. ;; Accumulation buffer
  398. "+ACCUM-RED-BITS+"
  399. "+ACCUM-GREEN-BITS+"
  400. "+ACCUM-BLUE-BITS+"
  401. "+ACCUM-ALPHA-BITS+"
  402. "+ACCUM-CLEAR-VALUE+"
  403. "+ACCUM+"
  404. "+ADD+"
  405. "+LOAD+"
  406. "+MULT+"
  407. "+RETURN+"
  408. ;; Alpha Testing
  409. "+ALPHA-TEST+"
  410. "+ALPHA-TEST-REF+"
  411. "+ALPHA-TEST-FUNC+"
  412. ;; Blending
  413. "+BLEND+"
  414. "+BLEND-SRC+"
  415. "+BLEND-DST+"
  416. "+ZERO+"
  417. "+ONE+"
  418. "+SRC-COLOR+"
  419. "+ONE-MINUS-SRC-COLOR+"
  420. "+DST-COLOR+"
  421. "+ONE-MINUS-DST-COLOR+"
  422. "+SRC-ALPHA+"
  423. "+ONE-MINUS-SRC-ALPHA+"
  424. "+DST-ALPHA+"
  425. "+ONE-MINUS-DST-ALPHA+"
  426. "+SRC-ALPHA-SATURATE+"
  427. "+CONSTANT-COLOR+"
  428. "+ONE-MINUS-CONSTANT-COLOR+"
  429. "+CONSTANT-ALPHA+"
  430. "+ONE-MINUS-CONSTANT-ALPHA+"
  431. ;; Render mode
  432. "+FEEDBACK+"
  433. "+RENDER+"
  434. "+SELECT+"
  435. ;; Feedback
  436. "+2D+"
  437. "+3D+"
  438. "+3D-COLOR+"
  439. "+3D-COLOR-TEXTURE+"
  440. "+4D-COLOR-TEXTURE+"
  441. "+POINT-TOKEN+"
  442. "+LINE-TOKEN+"
  443. "+LINE-RESET-TOKEN+"
  444. "+POLYGON-TOKEN+"
  445. "+BITMAP-TOKEN+"
  446. "+DRAW-PIXEL-TOKEN+"
  447. "+COPY-PIXEL-TOKEN+"
  448. "+PASS-THROUGH-TOKEN+"
  449. "+FEEDBACK-BUFFER-POINTER+"
  450. "+FEEDBACK-BUFFER-SIZE+"
  451. "+FEEDBACK-BUFFER-TYPE+"
  452. ;; Selection
  453. "+SELECTION-BUFFER-POINTER+"
  454. "+SELECTION-BUFFER-SIZE+"
  455. ;; Fog
  456. "+FOG+"
  457. "+FOG-MODE+"
  458. "+FOG-DENSITY+"
  459. "+FOG-COLOR+"
  460. "+FOG-INDEX+"
  461. "+FOG-START+"
  462. "+FOG-END+"
  463. "+LINEAR+"
  464. "+EXP+"
  465. "+EXP2+"
  466. ;; Logic operations
  467. "+LOGIC-OP+"
  468. "+INDEX-LOGIC-OP+"
  469. "+COLOR-LOGIC-OP+"
  470. "+LOGIC-OP-MODE+"
  471. "+CLEAR+"
  472. "+SET+"
  473. "+COPY+"
  474. "+COPY-INVERTED+"
  475. "+NOOP+"
  476. "+INVERT+"
  477. "+AND+"
  478. "+NAND+"
  479. "+OR+"
  480. "+NOR+"
  481. "+XOR+"
  482. "+EQUIV+"
  483. "+AND-REVERSE+"
  484. "+AND-INVERTED+"
  485. "+OR-REVERSE+"
  486. "+OR-INVERTED+"
  487. ;; Stencil
  488. "+STENCIL-TEST+"
  489. "+STENCIL-WRITEMASK+"
  490. "+STENCIL-BITS+"
  491. "+STENCIL-FUNC+"
  492. "+STENCIL-VALUE-MASK+"
  493. "+STENCIL-REF+"
  494. "+STENCIL-FAIL+"
  495. "+STENCIL-PASS-DEPTH-PASS+"
  496. "+STENCIL-PASS-DEPTH-FAIL+"
  497. "+STENCIL-CLEAR-VALUE+"
  498. "+STENCIL-INDEX+"
  499. "+KEEP+"
  500. "+REPLACE+"
  501. "+INCR+"
  502. "+DECR+"
  503. ;; Buffers, Pixel Drawing/Reading
  504. "+NONE+"
  505. "+LEFT+"
  506. "+RIGHT+"
  507. "+FRONT-LEFT+"
  508. "+FRONT-RIGHT+"
  509. "+BACK-LEFT+"
  510. "+BACK-RIGHT+"
  511. "+AUX0+"
  512. "+AUX1+"
  513. "+AUX2+"
  514. "+AUX3+"
  515. "+COLOR-INDEX+"
  516. "+RED+"
  517. "+GREEN+"
  518. "+BLUE+"
  519. "+ALPHA+"
  520. "+LUMINANCE+"
  521. "+LUMINANCE-ALPHA+"
  522. "+ALPHA-BITS+"
  523. "+RED-BITS+"
  524. "+GREEN-BITS+"
  525. "+BLUE-BITS+"
  526. "+INDEX-BITS+"
  527. "+SUBPIXEL-BITS+"
  528. "+AUX-BUFFERS+"
  529. "+READ-BUFFER+"
  530. "+DRAW-BUFFER+"
  531. "+DOUBLEBUFFER+"
  532. "+STEREO+"
  533. "+BITMAP+"
  534. "+COLOR+"
  535. "+DEPTH+"
  536. "+STENCIL+"
  537. "+DITHER+"
  538. "+RGB+"
  539. "+RGBA+"
  540. ;; Implementation Limits
  541. "+MAX-LIST-NESTING+"
  542. "+MAX-ATTRIB-STACK-DEPTH+"
  543. "+MAX-MODELVIEW-STACK-DEPTH+"
  544. "+MAX-NAME-STACK-DEPTH+"
  545. "+MAX-PROJECTION-STACK-DEPTH+"
  546. "+MAX-TEXTURE-STACK-DEPTH+"
  547. "+MAX-EVAL-ORDER+"
  548. "+MAX-LIGHTS+"
  549. "+MAX-CLIP-PLANES+"
  550. "+MAX-TEXTURE-SIZE+"
  551. "+MAX-PIXEL-MAP-TABLE+"
  552. "+MAX-VIEWPORT-DIMS+"
  553. "+MAX-CLIENT-ATTRIB-STACK-DEPTH+"
  554. ;; Gets
  555. "+ATTRIB-STACK-DEPTH+"
  556. "+CLIENT-ATTRIB-STACK-DEPTH+"
  557. "+COLOR-CLEAR-VALUE+"
  558. "+COLOR-WRITEMASK+"
  559. "+CURRENT-INDEX+"
  560. "+CURRENT-COLOR+"
  561. "+CURRENT-NORMAL+"
  562. "+CURRENT-RASTER-COLOR+"
  563. "+CURRENT-RASTER-DISTANCE+"
  564. "+current-raster-index+"
  565. "+CURRENT-RASTER-POSITION+"
  566. "+CURRENT-RASTER-TEXTURE-COORDS+"
  567. "+CURRENT-RASTER-POSITION-VALID+"
  568. "+CURRENT-TEXTURE-COORDS+"
  569. "+INDEX-CLEAR-VALUE+"
  570. "+INDEX-MODE+"
  571. "+INDEX-WRITEMASK+"
  572. "+MODELVIEW-MATRIX+"
  573. "+MODELVIEW-STACK-DEPTH+"
  574. "+NAME-STACK-DEPTH+"
  575. "+PROJECTION-MATRIX+"
  576. "+PROJECTION-STACK-DEPTH+"
  577. "+RENDER-MODE+"
  578. "+RGBA-MODE+"
  579. "+TEXTURE-MATRIX+"
  580. "+TEXTURE-STACK-DEPTH+"
  581. "+VIEWPORT+"
  582. ;; GL Evaluators
  583. "+AUTO-NORMAL+"
  584. "+MAP1-COLOR-4+"
  585. "+MAP1-GRID-DOMAIN+"
  586. "+MAP1-GRID-SEGMENTS+"
  587. "+MAP1-INDEX+"
  588. "+MAP1-NORMAL+"
  589. "+MAP1-TEXTURE-COORD-1+"
  590. "+MAP1-TEXTURE-COORD-2+"
  591. "+MAP1-TEXTURE-COORD-3+"
  592. "+MAP1-TEXTURE-COORD-4+"
  593. "+MAP1-VERTEX-3+"
  594. "+MAP1-VERTEX-4+"
  595. "+MAP2-COLOR-4+"
  596. "+MAP2-GRID-DOMAIN+"
  597. "+MAP2-GRID-SEGMENTS+"
  598. "+MAP2-INDEX+"
  599. "+MAP2-NORMAL+"
  600. "+MAP2-TEXTURE-COORD-1+"
  601. "+MAP2-TEXTURE-COORD-2+"
  602. "+MAP2-TEXTURE-COORD-3+"
  603. "+MAP2-TEXTURE-COORD-4+"
  604. "+MAP2-VERTEX-3+"
  605. "+MAP2-VERTEX-4+"
  606. "+COEFF+"
  607. "+DOMAIN+"
  608. "+ORDER+"
  609. ;; Hints
  610. "+FOG-HINT+"
  611. "+LINE-SMOOTH-HINT+"
  612. "+PERSPECTIVE-CORRECTION-HINT+"
  613. "+POINT-SMOOTH-HINT+"
  614. "+POLYGON-SMOOTH-HINT+"
  615. "+DONT-CARE+"
  616. "+FASTEST+"
  617. "+NICEST+"
  618. ;; Scissor box
  619. "+SCISSOR-TEST+"
  620. "+SCISSOR-BOX+"
  621. ;; Pixel Mode / Transfer
  622. "+MAP-COLOR+"
  623. "+MAP-STENCIL+"
  624. "+INDEX-SHIFT+"
  625. "+INDEX-OFFSET+"
  626. "+RED-SCALE+"
  627. "+RED-BIAS+"
  628. "+GREEN-SCALE+"
  629. "+GREEN-BIAS+"
  630. "+BLUE-SCALE+"
  631. "+BLUE-BIAS+"
  632. "+ALPHA-SCALE+"
  633. "+ALPHA-BIAS+"
  634. "+DEPTH-SCALE+"
  635. "+DEPTH-BIAS+"
  636. "+PIXEL-MAP-S-TO-S-SIZE+"
  637. "+PIXEL-MAP-I-TO-I-SIZE+"
  638. "+PIXEL-MAP-I-TO-R-SIZE+"
  639. "+PIXEL-MAP-I-TO-G-SIZE+"
  640. "+PIXEL-MAP-I-TO-B-SIZE+"
  641. "+PIXEL-MAP-I-TO-A-SIZE+"
  642. "+PIXEL-MAP-R-TO-R-SIZE+"
  643. "+PIXEL-MAP-G-TO-G-SIZE+"
  644. "+PIXEL-MAP-B-TO-B-SIZE+"
  645. "+PIXEL-MAP-A-TO-A-SIZE+"
  646. "+PIXEL-MAP-S-TO-S+"
  647. "+PIXEL-MAP-I-TO-I+"
  648. "+PIXEL-MAP-I-TO-R+"
  649. "+PIXEL-MAP-I-TO-G+"
  650. "+PIXEL-MAP-I-TO-B+"
  651. "+PIXEL-MAP-I-TO-A+"
  652. "+PIXEL-MAP-R-TO-R+"
  653. "+PIXEL-MAP-G-TO-G+"
  654. "+PIXEL-MAP-B-TO-B+"
  655. "+PIXEL-MAP-A-TO-A+"
  656. "+PACK-ALIGNMENT+"
  657. "+PACK-LSB-FIRST+"
  658. "+PACK-ROW-LENGTH+"
  659. "+PACK-SKIP-PIXELS+"
  660. "+PACK-SKIP-ROWS+"
  661. "+PACK-SWAP-BYTES+"
  662. "+UNPACK-ALIGNMENT+"
  663. "+UNPACK-LSB-FIRST+"
  664. "+UNPACK-ROW-LENGTH+"
  665. "+UNPACK-SKIP-PIXELS+"
  666. "+UNPACK-SKIP-ROWS+"
  667. "+UNPACK-SWAP-BYTES+"
  668. "+ZOOM-X+"
  669. "+ZOOM-Y+"
  670. ;; Texture Mapping
  671. "+TEXTURE-ENV+"
  672. "+TEXTURE-ENV-MODE+"
  673. "+TEXTURE-1D+"
  674. "+TEXTURE-2D+"
  675. "+TEXTURE-WRAP-S+"
  676. "+TEXTURE-WRAP-T+"
  677. "+TEXTURE-MAG-FILTER+"
  678. "+TEXTURE-MIN-FILTER+"
  679. "+TEXTURE-ENV-COLOR+"
  680. "+TEXTURE-GEN-S+"
  681. "+TEXTURE-GEN-T+"
  682. "+TEXTURE-GEN-MODE+"
  683. "+TEXTURE-BORDER-COLOR+"
  684. "+TEXTURE-WIDTH+"
  685. "+TEXTURE-HEIGHT+"
  686. "+TEXTURE-BORDER+"
  687. "+TEXTURE-COMPONENTS+"
  688. "+TEXTURE-RED-SIZE+"
  689. "+TEXTURE-GREEN-SIZE+"
  690. "+TEXTURE-BLUE-SIZE+"
  691. "+TEXTURE-ALPHA-SIZE+"
  692. "+TEXTURE-LUMINANCE-SIZE+"
  693. "+TEXTURE-INTENSITY-SIZE+"
  694. "+NEAREST-MIPMAP-NEAREST+"
  695. "+NEAREST-MIPMAP-LINEAR+"
  696. "+LINEAR-MIPMAP-NEAREST+"
  697. "+LINEAR-MIPMAP-LINEAR+"
  698. "+OBJECT-LINEAR+"
  699. "+OBJECT-PLANE+"
  700. "+EYE-LINEAR+"
  701. "+EYE-PLANE+"
  702. "+SPHERE-MAP+"
  703. "+DECAL+"
  704. "+MODULATE+"
  705. "+NEAREST+"
  706. "+REPEAT+"
  707. "+CLAMP+"
  708. "+S+"
  709. "+T+"
  710. "+R+"
  711. "+Q+"
  712. "+TEXTURE-GEN-R+"
  713. "+TEXTURE-GEN-Q+"
  714. ;; GL 1.1 Texturing
  715. "+PROXY-TEXTURE-1D+"
  716. "+PROXY-TEXTURE-2D+"
  717. "+TEXTURE-PRIORITY+"
  718. "+TEXTURE-RESIDENT+"
  719. "+TEXTURE-BINDING-1D+"
  720. "+TEXTURE-BINDING-2D+"
  721. "+TEXTURE-INTERNAL-FORMAT+"
  722. "+PACK-SKIP-IMAGES+"
  723. "+PACK-IMAGE-HEIGHT+"
  724. "+UNPACK-SKIP-IMAGES+"
  725. "+UNPACK-IMAGE-HEIGHT+"
  726. "+TEXTURE-3D+"
  727. "+PROXY-TEXTURE-3D+"
  728. "+TEXTURE-DEPTH+"
  729. "+TEXTURE-WRAP-R+"
  730. "+MAX-3D-TEXTURE-SIZE+"
  731. "+TEXTURE-BINDING-3D+"
  732. ;; Internal texture formats (GL 1.1)
  733. "+ALPHA4+"
  734. "+ALPHA8+"
  735. "+ALPHA12+"
  736. "+ALPHA16+"
  737. "+LUMINANCE4+"
  738. "+LUMINANCE8+"
  739. "+LUMINANCE12+"
  740. "+LUMINANCE16+"
  741. "+LUMINANCE4-ALPHA4+"
  742. "+LUMINANCE6-ALPHA2+"
  743. "+LUMINANCE8-ALPHA8+"
  744. "+LUMINANCE12-ALPHA4+"
  745. "+LUMINANCE12-ALPHA12+"
  746. "+LUMINANCE16-ALPHA16+"
  747. "+INTENSITY+"
  748. "+INTENSITY4+"
  749. "+INTENSITY8+"
  750. "+INTENSITY12+"
  751. "+INTENSITY16+"
  752. "+R3-G3-B2+"
  753. "+RGB4+"
  754. "+RGB5+"
  755. "+RGB8+"
  756. "+RGB10+"
  757. "+RGB12+"
  758. "+RGB16+"
  759. "+RGBA2+"
  760. "+RGBA4+"
  761. "+RGB5-A1+"
  762. "+RGBA8+"
  763. "+rgb10-a2+"
  764. "+RGBA12+"
  765. "+RGBA16+"
  766. ;; Utility
  767. "+VENDOR+"
  768. "+RENDERER+"
  769. "+VERSION+"
  770. "+EXTENSIONS+"
  771. ;; Errors
  772. "+NO-ERROR+"
  773. "+INVALID-VALUE+"
  774. "+INVALID-ENUM+"
  775. "+INVALID-OPERATION+"
  776. "+STACK-OVERFLOW+"
  777. "+STACK-UNDERFLOW+"
  778. "+OUT-OF-MEMORY+"
  779. ;; OpenGL 1.2
  780. "+RESCALE-NORMAL+"
  781. "+CLAMP-TO-EDGE+"
  782. "+MAX-ELEMENTS-VERTICES+"
  783. "+MAX-ELEMENTS-INDICES+"
  784. "+BGR+"
  785. "+BGRA+"
  786. "+UNSIGNED-BYTE-3-3-2+"
  787. "+UNSIGNED-BYTE-2-3-3-REV+"
  788. "+UNSIGNED-SHORT-5-6-5+"
  789. "+UNSIGNED-SHORT-5-6-5-REV+"
  790. "+UNSIGNED-SHORT-4-4-4-4+"
  791. "+UNSIGNED-SHORT-4-4-4-4-REV+"
  792. "+UNSIGNED-SHORT-5-5-5-1+"
  793. "+UNSIGNED-SHORT-1-5-5-5-REV+"
  794. "+UNSIGNED-INT-8-8-8-8+"
  795. "+UNSIGNED-INT-8-8-8-8-REV+"
  796. "+UNSIGNED-INT-10-10-10-2+"
  797. "+UNSIGNED-INT-2-10-10-10-REV+"
  798. "+LIGHT-MODEL-COLOR-CONTROL+"
  799. "+SINGLE-COLOR+"
  800. "+SEPARATE-SPECULAR-COLOR+"
  801. "+TEXTURE-MIN-LOD+"
  802. "+TEXTURE-MAX-LOD+"
  803. "+TEXTURE-BASE-LEVEL+"
  804. "+TEXTURE-MAX-LEVEL+"
  805. "+SMOOTH-POINT-SIZE-RANGE+"
  806. "+SMOOTH-POINT-SIZE-GRANULARITY+"
  807. "+SMOOTH-LINE-WIDTH-RANGE+"
  808. "+SMOOTH-LINE-WIDTH-GRANULARITY+"
  809. "+ALIASED-POINT-SIZE-RANGE+"
  810. "+ALIASED-LINE-WIDTH-RANGE+"
  811. ;; OpenGL 1.2 Imaging subset
  812. ;; GL_EXT_color_table
  813. "+COLOR-TABLE+"
  814. "+POST-CONVOLUTION-COLOR-TABLE+"
  815. "+POST-COLOR-MATRIX-COLOR-TABLE+"
  816. "+PROXY-COLOR-TABLE+"
  817. "+PROXY-POST-CONVOLUTION-COLOR-TABLE+"
  818. "+PROXY-POST-COLOR-MATRIX-COLOR-TABLE+"
  819. "+COLOR-TABLE-SCALE+"
  820. "+COLOR-TABLE-BIAS+"
  821. "+COLOR-TABLE-FORMAT+"
  822. "+COLOR-TABLE-WIDTH+"
  823. "+COLOR-TABLE-RED-SIZE+"
  824. "+COLOR-TABLE-GREEN-SIZE+"
  825. "+COLOR-TABLE-BLUE-SIZE+"
  826. "+COLOR-TABLE-ALPHA-SIZE+"
  827. "+COLOR-TABLE-LUMINANCE-SIZE+"
  828. "+COLOR-TABLE-INTENSITY-SIZE+"
  829. ;; GL_EXT_convolution and GL_HP_convolution
  830. "+CONVOLUTION-1D+"
  831. "+CONVOLUTION-2D+"
  832. "+SEPARABLE-2D+"
  833. "+CONVOLUTION-BORDER-MODE+"
  834. "+CONVOLUTION-FILTER-SCALE+"
  835. "+CONVOLUTION-FILTER-BIAS+"
  836. "+REDUCE+"
  837. "+CONVOLUTION-FORMAT+"
  838. "+CONVOLUTION-WIDTH+"
  839. "+CONVOLUTION-HEIGHT+"
  840. "+MAX-CONVOLUTION-WIDTH+"
  841. "+MAX-CONVOLUTION-HEIGHT+"
  842. "+POST-CONVOLUTION-RED-SCALE+"
  843. "+POST-CONVOLUTION-GREEN-SCALE+"
  844. "+POST-CONVOLUTION-BLUE-SCALE+"
  845. "+POST-CONVOLUTION-ALPHA-SCALE+"
  846. "+POST-CONVOLUTION-RED-BIAS+"
  847. "+POST-CONVOLUTION-GREEN-BIAS+"
  848. "+POST-CONVOLUTION-BLUE-BIAS+"
  849. "+POST-CONVOLUTION-ALPHA-BIAS+"
  850. "+CONSTANT-BORDER+"
  851. "+REPLICATE-BORDER+"
  852. "+CONVOLUTION-BORDER-COLOR+"
  853. ;; GL_SGI_color_matrix
  854. "+COLOR-MATRIX+"
  855. "+COLOR-MATRIX-STACK-DEPTH+"
  856. "+MAX-COLOR-MATRIX-STACK-DEPTH+"
  857. "+POST-COLOR-MATRIX-RED-SCALE+"
  858. "+POST-COLOR-MATRIX-GREEN-SCALE+"
  859. "+POST-COLOR-MATRIX-BLUE-SCALE+"
  860. "+POST-COLOR-MATRIX-ALPHA-SCALE+"
  861. "+POST-COLOR-MATRIX-RED-BIAS+"
  862. "+POST-COLOR-MATRIX-GREEN-BIAS+"
  863. "+POST-COLOR-MATRIX-BLUE-BIAS+"
  864. "+POST-COLOR-MATRIX-ALPHA-BIAS+"
  865. ;; GL_EXT_histogram
  866. "+HISTOGRAM+"
  867. "+PROXY-HISTOGRAM+"
  868. "+HISTOGRAM-WIDTH+"
  869. "+HISTOGRAM-FORMAT+"
  870. "+HISTOGRAM-RED-SIZE+"
  871. "+HISTOGRAM-GREEN-SIZE+"
  872. "+HISTOGRAM-BLUE-SIZE+"
  873. "+HISTOGRAM-ALPHA-SIZE+"
  874. "+HISTOGRAM-LUMINANCE-SIZE+"
  875. "+HISTOGRAM-SINK+"
  876. "+MINMAX+"
  877. "+MINMAX-FORMAT+"
  878. "+MINMAX-SINK+"
  879. "+TABLE-TOO-LARGE+"
  880. ;; GL_EXT_blend_color, GL_EXT_blend_minmax
  881. "+BLEND-EQUATION+"
  882. "+MIN+"
  883. "+MAX+"
  884. "+FUNC-ADD+"
  885. "+FUNC-SUBTRACT+"
  886. "+FUNC-REVERSE-SUBTRACT+"
  887. ;; glPush/PopAttrib bits
  888. "+CURRENT-BIT+"
  889. "+POINT-BIT+"
  890. "+LINE-BIT+"
  891. "+POLYGON-BIT+"
  892. "+POLYGON-STIPPLE-BIT+"
  893. "+PIXEL-MODE-BIT+"
  894. "+LIGHTING-BIT+"
  895. "+FOG-BIT+"
  896. "+DEPTH-BUFFER-BIT+"
  897. "+ACCUM-BUFFER-BIT+"
  898. "+STENCIL-BUFFER-BIT+"
  899. "+VIEWPORT-BIT+"
  900. "+TRANSFORM-BIT+"
  901. "+ENABLE-BIT+"
  902. "+COLOR-BUFFER-BIT+"
  903. "+HINT-BIT+"
  904. "+EVAL-BIT+"
  905. "+LIST-BIT+"
  906. "+TEXTURE-BIT+"
  907. "+SCISSOR-BIT+"
  908. "+ALL-ATTRIB-BITS+"
  909. "+CLIENT-PIXEL-STORE-BIT+"
  910. "+CLIENT-VERTEX-ARRAY-BIT+"
  911. "+CLIENT-ALL-ATTRIB-BITS+"
  912. ;; ARB Multitexturing extension
  913. "+ARB-MULTITEXTURE+"
  914. "+TEXTURE0-ARB+"
  915. "+TEXTURE1-ARB+"
  916. "+TEXTURE2-ARB+"
  917. "+TEXTURE3-ARB+"
  918. "+TEXTURE4-ARB+"
  919. "+TEXTURE5-ARB+"
  920. "+TEXTURE6-ARB+"
  921. "+TEXTURE7-ARB+"
  922. "+TEXTURE8-ARB+"
  923. "+TEXTURE9-ARB+"
  924. "+TEXTURE10-ARB+"
  925. "+TEXTURE11-ARB+"
  926. "+TEXTURE12-ARB+"
  927. "+TEXTURE13-ARB+"
  928. "+TEXTURE14-ARB+"
  929. "+TEXTURE15-ARB+"
  930. "+TEXTURE16-ARB+"
  931. "+TEXTURE17-ARB+"
  932. "+TEXTURE18-ARB+"
  933. "+TEXTURE19-ARB+"
  934. "+TEXTURE20-ARB+"
  935. "+TEXTURE21-ARB+"
  936. "+TEXTURE22-ARB+"
  937. "+TEXTURE23-ARB+"
  938. "+TEXTURE24-ARB+"
  939. "+TEXTURE25-ARB+"
  940. "+TEXTURE26-ARB+"
  941. "+TEXTURE27-ARB+"
  942. "+TEXTURE28-ARB+"
  943. "+TEXTURE29-ARB+"
  944. "+TEXTURE30-ARB+"
  945. "+TEXTURE31-ARB+"
  946. "+ACTIVE-TEXTURE-ARB+"
  947. "+CLIENT-ACTIVE-TEXTURE-ARB+"
  948. "+MAX-TEXTURE-UNITS-ARB+"
  949. ;;; Misc extensions
  950. "+EXT-ABGR+"
  951. "+ABGR-EXT+"
  952. "+EXT-BLEND-COLOR+"
  953. "+CONSTANT-COLOR-EXT+"
  954. "+ONE-MINUS-CONSTANT-COLOR-EXT+"
  955. "+CONSTANT-ALPHA-EXT+"
  956. "+ONE-MINUS-CONSTANT-ALPHA-EXT+"
  957. "+blend-color-ext+"
  958. "+EXT-POLYGON-OFFSET+"
  959. "+POLYGON-OFFSET-EXT+"
  960. "+POLYGON-OFFSET-FACTOR-EXT+"
  961. "+POLYGON-OFFSET-BIAS-EXT+"
  962. "+EXT-TEXTURE3D+"
  963. "+PACK-SKIP-IMAGES-EXT+"
  964. "+PACK-IMAGE-HEIGHT-EXT+"
  965. "+UNPACK-SKIP-IMAGES-EXT+"
  966. "+UNPACK-IMAGE-HEIGHT-EXT+"
  967. "+TEXTURE-3D-EXT+"
  968. "+PROXY-TEXTURE-3D-EXT+"
  969. "+TEXTURE-DEPTH-EXT+"
  970. "+TEXTURE-WRAP-R-EXT+"
  971. "+MAX-3D-TEXTURE-SIZE-EXT+"
  972. "+TEXTURE-3D-BINDING-EXT+"
  973. "+EXT-TEXTURE-OBJECT+"
  974. "+TEXTURE-PRIORITY-EXT+"
  975. "+TEXTURE-RESIDENT-EXT+"
  976. "+TEXTURE-1D-BINDING-EXT+"
  977. "+TEXTURE-2D-BINDING-EXT+"
  978. "+EXT-RESCALE-NORMAL+"
  979. "+RESCALE-NORMAL-EXT+"
  980. "+EXT-VERTEX-ARRAY+"
  981. "+VERTEX-ARRAY-EXT+"
  982. "+NORMAL-ARRAY-EXT+"
  983. "+COLOR-ARRAY-EXT+"
  984. "+INDEX-ARRAY-EXT+"
  985. "+TEXTURE-COORD-ARRAY-EXT+"
  986. "+EDGE-FLAG-ARRAY-EXT+"
  987. "+VERTEX-ARRAY-SIZE-EXT+"
  988. "+VERTEX-ARRAY-TYPE-EXT+"
  989. "+VERTEX-ARRAY-STRIDE-EXT+"
  990. "+VERTEX-ARRAY-COUNT-EXT+"
  991. "+NORMAL-ARRAY-TYPE-EXT+"
  992. "+NORMAL-ARRAY-STRIDE-EXT+"
  993. "+NORMAL-ARRAY-COUNT-EXT+"
  994. "+COLOR-ARRAY-SIZE-EXT+"
  995. "+COLOR-ARRAY-TYPE-EXT+"
  996. "+COLOR-ARRAY-STRIDE-EXT+"
  997. "+COLOR-ARRAY-COUNT-EXT+"
  998. "+INDEX-ARRAY-TYPE-EXT+"
  999. "+INDEX-ARRAY-STRIDE-EXT+"
  1000. "+INDEX-ARRAY-COUNT-EXT+"
  1001. "+TEXTURE-COORD-ARRAY-SIZE-EXT+"
  1002. "+TEXTURE-COORD-ARRAY-TYPE-EXT+"
  1003. "+TEXTURE-COORD-ARRAY-STRIDE-EXT+"
  1004. "+TEXTURE-COORD-ARRAY-COUNT-EXT+"
  1005. "+EDGE-FLAG-ARRAY-STRIDE-EXT+"
  1006. "+EDGE-FLAG-ARRAY-COUNT-EXT+"
  1007. "+VERTEX-ARRAY-POINTER-EXT+"
  1008. "+NORMAL-ARRAY-POINTER-EXT+"
  1009. "+COLOR-ARRAY-POINTER-EXT+"
  1010. "+INDEX-ARRAY-POINTER-EXT+"
  1011. "+TEXTURE-COORD-ARRAY-POINTER-EXT+"
  1012. "+EDGE-FLAG-ARRAY-POINTER-EXT+"
  1013. "+SGIS-TEXTURE-EDGE-CLAMP+"
  1014. "+CLAMP-TO-EDGE-SGIS+"
  1015. "+EXT-BLEND-MINMAX+"
  1016. "+FUNC-ADD-EXT+"
  1017. "+MIN-EXT+"
  1018. "+MAX-EXT+"
  1019. "+BLEND-EQUATION-EXT+"
  1020. "+EXT-BLEND-SUBTRACT+"
  1021. "+FUNC-SUBTRACT-EXT+"
  1022. "+FUNC-REVERSE-SUBTRACT-EXT+"
  1023. "+EXT-BLEND-LOGIC-OP+"
  1024. "+EXT-POINT-PARAMETERS+"
  1025. "+POINT-SIZE-MIN-EXT+"
  1026. "+POINT-SIZE-MAX-EXT+"
  1027. "+POINT-FADE-THRESHOLD-SIZE-EXT+"
  1028. "+DISTANCE-ATTENUATION-EXT+"
  1029. "+EXT-PALETTED-TEXTURE+"
  1030. "+TABLE-TOO-LARGE-EXT+"
  1031. "+COLOR-TABLE-FORMAT-EXT+"
  1032. "+COLOR-TABLE-WIDTH-EXT+"
  1033. "+COLOR-TABLE-RED-SIZE-EXT+"
  1034. "+COLOR-TABLE-GREEN-SIZE-EXT+"
  1035. "+COLOR-TABLE-BLUE-SIZE-EXT+"
  1036. "+COLOR-TABLE-ALPHA-SIZE-EXT+"
  1037. "+COLOR-TABLE-LUMINANCE-SIZE-EXT+"
  1038. "+COLOR-TABLE-INTENSITY-SIZE-EXT+"
  1039. "+TEXTURE-INDEX-SIZE-EXT+"
  1040. "+COLOR-INDEX1-EXT+"
  1041. "+COLOR-INDEX2-EXT+"
  1042. "+COLOR-INDEX4-EXT+"
  1043. "+COLOR-INDEX8-EXT+"
  1044. "+COLOR-INDEX12-EXT+"
  1045. "+COLOR-INDEX16-EXT+"
  1046. "+EXT-CLIP-VOLUME-HINT+"
  1047. "+CLIP-VOLUME-CLIPPING-HINT-EXT+"
  1048. "+EXT-COMPILED-VERTEX-ARRAY+"
  1049. "+ARRAY-ELEMENT-LOCK-FIRST-EXT+"
  1050. "+ARRAY-ELEMENT-LOCK-COUNT-EXT+"
  1051. "+HP-OCCLUSION-TEST+"
  1052. "+OCCLUSION-TEST-HP+"
  1053. "+OCCLUSION-TEST-RESULT-HP+"
  1054. "+EXT-SHARED-TEXTURE-PALETTE+"
  1055. "+SHARED-TEXTURE-PALETTE-EXT+"
  1056. "+EXT-STENCIL-WRAP+"
  1057. "+INCR-WRAP-EXT+"
  1058. "+DECR-WRAP-EXT+"
  1059. "+NV-TEXGEN-REFLECTION+"
  1060. "+NORMAL-MAP-NV+"
  1061. "+REFLECTION-MAP-NV+"
  1062. "+EXT-TEXTURE-ENV-ADD+"
  1063. "+MESA-WINDOW-POS+"
  1064. "+MESA-RESIZE-BUFFERS+"
  1065. ))
  1066. (in-package :gl)
  1067. ;;; Opcodes.
  1068. (eval-when (:compile-toplevel :load-toplevel :execute)
  1069. (defconstant +get-string+ 129)
  1070. (defconstant +new-list+ 101)
  1071. (defconstant +end-list+ 102)
  1072. (defconstant +gen-lists+ 104)
  1073. (defconstant +finish+ 108)
  1074. (defconstant +disable+ 138)
  1075. (defconstant +enable+ 139)
  1076. (defconstant +flush+ 142)
  1077. ;;; Constants.
  1078. ;;; Shamelessly taken from CL-SDL.
  1079. ;; Boolean
  1080. (defconstant +false+ #x0)
  1081. (defconstant +true+ #x1)
  1082. ;; Types
  1083. (defconstant +byte+ #x1400)
  1084. (defconstant +unsigned-byte+ #x1401)
  1085. (defconstant +short+ #x1402)
  1086. (defconstant +unsigned-short+ #x1403)
  1087. (defconstant +int+ #x1404)
  1088. (defconstant +unsigned-int+ #x1405)
  1089. (defconstant +float+ #x1406)
  1090. (defconstant +double+ #x140a)
  1091. (defconstant +2-bytes+ #x1407)
  1092. (defconstant +3-bytes+ #x1408)
  1093. (defconstant +4-bytes+ #x1409)
  1094. ;; Primitives
  1095. (defconstant +points+ #x0000)
  1096. (defconstant +lines+ #x0001)
  1097. (defconstant +line-loop+ #x0002)
  1098. (defconstant +line-strip+ #x0003)
  1099. (defconstant +triangles+ #x0004)
  1100. (defconstant +triangle-strip+ #x0005)
  1101. (defconstant +triangle-fan+ #x0006)
  1102. (defconstant +quads+ #x0007)
  1103. (defconstant +quad-strip+ #x0008)
  1104. (defconstant +polygon+ #x0009)
  1105. ;; Arrays
  1106. (defconstant +vertex-array+ #x8074)
  1107. (defconstant +normal-array+ #x8075)
  1108. (defconstant +color-array+ #x8076)
  1109. (defconstant +index-array+ #x8077)
  1110. (defconstant +texture-coord-array+ #x8078)
  1111. (defconstant +edge-flag-array+ #x8079)
  1112. (defconstant +vertex-array-size+ #x807a)
  1113. (defconstant +vertex-array-type+ #x807b)
  1114. (defconstant +vertex-array-stride+ #x807c)
  1115. (defconstant +normal-array-type+ #x807e)
  1116. (defconstant +normal-array-stride+ #x807f)
  1117. (defconstant +color-array-size+ #x8081)
  1118. (defconstant +color-array-type+ #x8082)
  1119. (defconstant +color-array-stride+ #x8083)
  1120. (defconstant +index-array-type+ #x8085)
  1121. (defconstant +index-array-stride+ #x8086)
  1122. (defconstant +texture-coord-array-size+ #x8088)
  1123. (defconstant +texture-coord-array-type+ #x8089)
  1124. (defconstant +texture-coord-array-stride+ #x808a)
  1125. (defconstant +edge-flag-array-stride+ #x808c)
  1126. (defconstant +vertex-array-pointer+ #x808e)
  1127. (defconstant +normal-array-pointer+ #x808f)
  1128. (defconstant +color-array-pointer+ #x8090)
  1129. (defconstant +index-array-pointer+ #x8091)
  1130. (defconstant +texture-coord-array-pointer+ #x8092)
  1131. (defconstant +edge-flag-array-pointer+ #x8093)
  1132. ;; Array formats
  1133. (defconstant +v2f+ #x2a20)
  1134. (defconstant +v3f+ #x2a21)
  1135. (defconstant +c4ub-v2f+ #x2a22)
  1136. (defconstant +c4ub-v3f+ #x2a23)
  1137. (defconstant +c3f-v3f+ #x2a24)
  1138. (defconstant +n3f-v3f+ #x2a25)
  1139. (defconstant +c4f-n3f-v3f+ #x2a26)
  1140. (defconstant +t2f-v3f+ #x2a27)
  1141. (defconstant +t4f-v4f+ #x2a28)
  1142. (defconstant +t2f-c4ub-v3f+ #x2a29)
  1143. (defconstant +t2f-c3f-v3f+ #x2a2a)
  1144. (defconstant +t2f-n3f-v3f+ #x2a2b)
  1145. (defconstant +t2f-c4f-n3f-v3f+ #x2a2c)
  1146. (defconstant +t4f-c4f-n3f-v4f+ #x2a2d)
  1147. ;; Matrices
  1148. (defconstant +matrix-mode+ #x0ba0)
  1149. (defconstant +modelview+ #x1700)
  1150. (defconstant +projection+ #x1701)
  1151. (defconstant +texture+ #x1702)
  1152. ;; Points
  1153. (defconstant +point-smooth+ #x0b10)
  1154. (defconstant +point-size+ #x0b11)
  1155. (defconstant +point-size-granularity+ #x0b13)
  1156. (defconstant +point-size-range+ #x0b12)
  1157. ;; Lines
  1158. (defconstant +line-smooth+ #x0b20)
  1159. (defconstant +line-stipple+ #x0b24)
  1160. (defconstant +line-stipple-pattern+ #x0b25)
  1161. (defconstant +line-stipple-repeat+ #x0b26)
  1162. (defconstant +line-width+ #x0b21)
  1163. (defconstant +line-width-granularity+ #x0b23)
  1164. (defconstant +line-width-range+ #x0b22)
  1165. ;; Polygons
  1166. (defconstant +point+ #x1b00)
  1167. (defconstant +line+ #x1b01)
  1168. (defconstant +fill+ #x1b02)
  1169. (defconstant +cw+ #x0900)
  1170. (defconstant +ccw+ #x0901)
  1171. (defconstant +front+ #x0404)
  1172. (defconstant +back+ #x0405)
  1173. (defconstant +polygon-mode+ #x0b40)
  1174. (defconstant +polygon-smooth+ #x0b41)
  1175. (defconstant +polygon-stipple+ #x0b42)
  1176. (defconstant +edge-flag+ #x0b43)
  1177. (defconstant +cull-face+ #x0b44)
  1178. (defconstant +cull-face-mode+ #x0b45)
  1179. (defconstant +front-face+ #x0b46)
  1180. (defconstant +polygon-offset-factor+ #x8038)
  1181. (defconstant +polygon-offset-units+ #x2a00)
  1182. (defconstant +polygon-offset-point+ #x2a01)
  1183. (defconstant +polygon-offset-line+ #x2a02)
  1184. (defconstant +polygon-offset-fill+ #x8037)
  1185. ;; Display Lists
  1186. (defconstant +compile+ #x1300)
  1187. (defconstant +compile-and-execute+ #x1301)
  1188. (defconstant +list-base+ #x0b32)
  1189. (defconstant +list-index+ #x0b33)
  1190. (defconstant +list-mode+ #x0b30)
  1191. ;; Depth Buffer
  1192. (defconstant +never+ #x0200)
  1193. (defconstant +less+ #x0201)
  1194. (defconstant +equal+ #x0202)
  1195. (defconstant +lequal+ #x0203)
  1196. (defconstant +greater+ #x0204)
  1197. (defconstant +notequal+ #x0205)
  1198. (defconstant +gequal+ #x0206)
  1199. (defconstant +always+ #x0207)
  1200. (defconstant +depth-test+ #x0b71)
  1201. (defconstant +depth-bits+ #x0d56)
  1202. (defconstant +depth-clear-value+ #x0b73)
  1203. (defconstant +depth-func+ #x0b74)
  1204. (defconstant +depth-range+ #x0b70)
  1205. (defconstant +depth-writemask+ #x0b72)
  1206. (defconstant +depth-component+ #x1902)
  1207. ;; Lighting
  1208. (defconstant +lighting+ #x0b50)
  1209. (defconstant +light0+ #x4000)
  1210. (defconstant +light1+ #x4001)
  1211. (defconstant +light2+ #x4002)
  1212. (defconstant +light3+ #x4003)
  1213. (defconstant +light4+ #x4004)
  1214. (defconstant +light5+ #x4005)
  1215. (defconstant +light6+ #x4006)
  1216. (defconstant +light7+ #x4007)
  1217. (defconstant +spot-exponent+ #x1205)
  1218. (defconstant +spot-cutoff+ #x1206)
  1219. (defconstant +constant-attenuation+ #x1207)
  1220. (defconstant +linear-attenuation+ #x1208)
  1221. (defconstant +quadratic-attenuation+ #x1209)
  1222. (defconstant +ambient+ #x1200)
  1223. (defconstant +diffuse+ #x1201)
  1224. (defconstant +specular+ #x1202)
  1225. (defconstant +shininess+ #x1601)
  1226. (defconstant +emission+ #x1600)
  1227. (defconstant +position+ #x1203)
  1228. (defconstant +spot-direction+ #x1204)
  1229. (defconstant +ambient-and-diffuse+ #x1602)
  1230. (defconstant +color-indexes+ #x1603)
  1231. (defconstant +light-model-two-side+ #x0b52)
  1232. (defconstant +light-model-local-viewer+ #x0b51)
  1233. (defconstant +light-model-ambient+ #x0b53)
  1234. (defconstant +front-and-back+ #x0408)
  1235. (defconstant +shade-model+ #x0b54)
  1236. (defconstant +flat+ #x1d00)
  1237. (defconstant +smooth+ #x1d01)
  1238. (defconstant +color-material+ #x0b57)
  1239. (defconstant +color-material-face+ #x0b55)
  1240. (defconstant +color-material-parameter+ #x0b56)
  1241. (defconstant +normalize+ #x0ba1)
  1242. ;; Clipping planes
  1243. (defconstant +clip-plane0+ #x3000)
  1244. (defconstant +clip-plane1+ #x3001)
  1245. (defconstant +clip-plane2+ #x3002)
  1246. (defconstant +clip-plane3+ #x3003)
  1247. (defconstant +clip-plane4+ #x3004)
  1248. (defconstant +clip-plane5+ #x3005)
  1249. ;; Accumulation buffer
  1250. (defconstant +accum-red-bits+ #x0d58)
  1251. (defconstant +accum-green-bits+ #x0d59)
  1252. (defconstant +accum-blue-bits+ #x0d5a)
  1253. (defconstant +accum-alpha-bits+ #x0d5b)
  1254. (defconstant +accum-clear-value+ #x0b80)
  1255. (defconstant +accum+ #x0100)
  1256. (defconstant +add+ #x0104)
  1257. (defconstant +load+ #x0101)
  1258. (defconstant +mult+ #x0103)
  1259. (defconstant +return+ #x0102)
  1260. ;; Alpha Testing
  1261. (defconstant +alpha-test+ #x0bc0)
  1262. (defconstant +alpha-test-ref+ #x0bc2)
  1263. (defconstant +alpha-test-func+ #x0bc1)
  1264. ;; Blending
  1265. (defconstant +blend+ #x0be2)
  1266. (defconstant +blend-src+ #x0be1)
  1267. (defconstant +blend-dst+ #x0be0)
  1268. (defconstant +zero+ #x0)
  1269. (defconstant +one+ #x1)
  1270. (defconstant +src-color+ #x0300)
  1271. (defconstant +one-minus-src-color+ #x0301)
  1272. (defconstant +dst-color+ #x0306)
  1273. (defconstant +one-minus-dst-color+ #x0307)
  1274. (defconstant +src-alpha+ #x0302)
  1275. (defconstant +one-minus-src-alpha+ #x0303)
  1276. (defconstant +dst-alpha+ #x0304)
  1277. (defconstant +one-minus-dst-alpha+ #x0305)
  1278. (defconstant +src-alpha-saturate+ #x0308)
  1279. (defconstant +constant-color+ #x8001)
  1280. (defconstant +one-minus-constant-color+ #x8002)
  1281. (defconstant +constant-alpha+ #x8003)
  1282. (defconstant +one-minus-constant-alpha+ #x8004)
  1283. ;; Render mode
  1284. (defconstant +feedback+ #x1c01)
  1285. (defconstant +render+ #x1c00)
  1286. (defconstant +select+ #x1c02)
  1287. ;; Feedback
  1288. (defconstant +2d+ #x0600)
  1289. (defconstant +3d+ #x0601)
  1290. (defconstant +3d-color+ #x0602)
  1291. (defconstant +3d-color-texture+ #x0603)
  1292. (defconstant +4d-color-texture+ #x0604)
  1293. (defconstant +point-token+ #x0701)
  1294. (defconstant +line-token+ #x0702)
  1295. (defconstant +line-reset-token+ #x0707)
  1296. (defconstant +polygon-token+ #x0703)
  1297. (defconstant +bitmap-token+ #x0704)
  1298. (defconstant +draw-pixel-token+ #x0705)
  1299. (defconstant +copy-pixel-token+ #x0706)
  1300. (defconstant +pass-through-token+ #x0700)
  1301. (defconstant +feedback-buffer-pointer+ #x0df0)
  1302. (defconstant +feedback-buffer-size+ #x0df1)
  1303. (defconstant +feedback-buffer-type+ #x0df2)
  1304. ;; Selection
  1305. (defconstant +selection-buffer-pointer+ #x0df3)
  1306. (defconstant +selection-buffer-size+ #x0df4)
  1307. ;; Fog
  1308. (defconstant +fog+ #x0b60)
  1309. (defconstant +fog-mode+ #x0b65)
  1310. (defconstant +fog-density+ #x0b62)
  1311. (defconstant +fog-color+ #x0b66)
  1312. (defconstant +fog-index+ #x0b61)
  1313. (defconstant +fog-start+ #x0b63)
  1314. (defconstant +fog-end+ #x0b64)
  1315. (defconstant +linear+ #x2601)
  1316. (defconstant +exp+ #x0800)
  1317. (defconstant +exp2+ #x0801)
  1318. ;; Logic operations
  1319. (defconstant +logic-op+ #x0bf1)
  1320. (defconstant +index-logic-op+ #x0bf1)
  1321. (defconstant +color-logic-op+ #x0bf2)
  1322. (defconstant +logic-op-mode+ #x0bf0)
  1323. (defconstant +clear+ #x1500)
  1324. (defconstant +set+ #x150f)
  1325. (defconstant +copy+ #x1503)
  1326. (defconstant +copy-inverted+ #x150c)
  1327. (defconstant +noop+ #x1505)
  1328. (defconstant +invert+ #x150a)
  1329. (defconstant +and+ #x1501)
  1330. (defconstant +nand+ #x150e)
  1331. (defconstant +or+ #x1507)
  1332. (defconstant +nor+ #x1508)
  1333. (defconstant +xor+ #x1506)
  1334. (defconstant +equiv+ #x1509)
  1335. (defconstant +and-reverse+ #x1502)
  1336. (defconstant +and-inverted+ #x1504)
  1337. (defconstant +or-reverse+ #x150b)
  1338. (defconstant +or-inverted+ #x150d)
  1339. ;; Stencil
  1340. (defconstant +stencil-test+ #x0b90)
  1341. (defconstant +stencil-writemask+ #x0b98)
  1342. (defconstant +stencil-bits+ #x0d57)
  1343. (defconstant +stencil-func+ #x0b92)
  1344. (defconstant +stencil-value-mask+ #x0b93)
  1345. (defconstant +stencil-ref+ #x0b97)
  1346. (defconstant +stencil-fail+ #x0b94)
  1347. (defconstant +stencil-pass-depth-pass+ #x0b96)
  1348. (defconstant +stencil-pass-depth-fail+ #x0b95)
  1349. (defconstant +stencil-clear-value+ #x0b91)
  1350. (defconstant +stencil-index+ #x1901)
  1351. (defconstant +keep+ #x1e00)
  1352. (defconstant +replace+ #x1e01)
  1353. (defconstant +incr+ #x1e02)
  1354. (defconstant +decr+ #x1e03)
  1355. ;; Buffers, Pixel Drawing/Reading
  1356. (defconstant +none+ #x0)
  1357. (defconstant +left+ #x0406)
  1358. (defconstant +right+ #x0407)
  1359. (defconstant +front-left+ #x0400)
  1360. (defconstant +front-right+ #x0401)
  1361. (defconstant +back-left+ #x0402)
  1362. (defconstant +back-right+ #x0403)
  1363. (defconstant +aux0+ #x0409)
  1364. (defconstant +aux1+ #x040a)
  1365. (defconstant +aux2+ #x040b)
  1366. (defconstant +aux3+ #x040c)
  1367. (defconstant +color-index+ #x1900)
  1368. (defconstant +red+ #x1903)
  1369. (defconstant +green+ #x1904)
  1370. (defconstant +blue+ #x1905)
  1371. (defconstant +alpha+ #x1906)
  1372. (defconstant +luminance+ #x1909)
  1373. (defconstant +luminance-alpha+ #x190a)
  1374. (defconstant +alpha-bits+ #x0d55)
  1375. (defconstant +red-bits+ #x0d52)
  1376. (defconstant +green-bits+ #x0d53)
  1377. (defconstant +blue-bits+ #x0d54)
  1378. (defconstant +index-bits+ #x0d51)
  1379. (defconstant +subpixel-bits+ #x0d50)
  1380. (defconstant +aux-buffers+ #x0c00)
  1381. (defconstant +read-buffer+ #x0c02)
  1382. (defconstant +draw-buffer+ #x0c01)
  1383. (defconstant +doublebuffer+ #x0c32)
  1384. (defconstant +stereo+ #x0c33)
  1385. (defconstant +bitmap+ #x1a00)
  1386. (defconstant +color+ #x1800)
  1387. (defconstant +depth+ #x1801)
  1388. (defconstant +stencil+ #x1802)
  1389. (defconstant +dither+ #x0bd0)
  1390. (defconstant +rgb+ #x1907)
  1391. (defconstant +rgba+ #x1908)
  1392. ;; Implementation Limits
  1393. (defconstant +max-list-nesting+ #x0b31)
  1394. (defconstant +max-attrib-stack-depth+ #x0d35)
  1395. (defconstant +max-modelview-stack-depth+ #x0d36)
  1396. (defconstant +max-name-stack-depth+ #x0d37)
  1397. (defconstant +max-projection-stack-depth+ #x0d38)
  1398. (defconstant +max-texture-stack-depth+ #x0d39)
  1399. (defconstant +max-eval-order+ #x0d30)
  1400. (defconstant +max-lights+ #x0d31)
  1401. (defconstant +max-clip-planes+ #x0d32)
  1402. (defconstant +max-texture-size+ #x0d33)
  1403. (defconstant +max-pixel-map-table+ #x0d34)
  1404. (defconstant +max-viewport-dims+ #x0d3a)
  1405. (defconstant +max-client-attrib-stack-depth+ #x0d3b)
  1406. ;; Gets
  1407. (defconstant +attrib-stack-depth+ #x0bb0)
  1408. (defconstant +client-attrib-stack-depth+ #x0bb1)
  1409. (defconstant +color-clear-value+ #x0c22)
  1410. (defconstant +color-writemask+ #x0c23)
  1411. (defconstant +current-index+ #x0b01)
  1412. (defconstant +current-color+ #x0b00)
  1413. (defconstant +current-normal+ #x0b02)
  1414. (defconstant +current-raster-color+ #x0b04)
  1415. (defconstant +current-raster-distance+ #x0b09)
  1416. (defconstant +current-raster-index+ #x0b05)
  1417. (defconstant +current-raster-position+ #x0b07)
  1418. (defconstant +current-raster-texture-coords+ #x0b06)
  1419. (defconstant +current-raster-position-valid+ #x0b08)
  1420. (defconstant +current-texture-coords+ #x0b03)
  1421. (defconstant +index-clear-value+ #x0c20)
  1422. (defconstant +index-mode+ #x0c30)
  1423. (defconstant +index-writemask+ #x0c21)
  1424. (defconstant +modelview-matrix+ #x0ba6)
  1425. (defconstant +modelview-stack-depth+ #x0ba3)
  1426. (defconstant +name-stack-depth+ #x0d70)
  1427. (defconstant +projection-matrix+ #x0ba7)
  1428. (defconstant +pr

Large files files are truncated, but you can click here to view the full file