| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791 |
- /*
- Simple DirectMedia Layer
- Copyright (C) 1997-2014 Sam Lantinga <slouken@libsdl.org>
- This software is provided 'as-is', without any express or implied
- warranty. In no event will the authors be held liable for any damages
- arising from the use of this software.
- Permission is granted to anyone to use this software for any purpose,
- including commercial applications, and to alter it and redistribute it
- freely, subject to the following restrictions:
- 1. The origin of this software must not be misrepresented; you must not
- claim that you wrote the original software. If you use this software
- in a product, an acknowledgment in the product documentation would be
- appreciated but is not required.
- 2. Altered source versions must be plainly marked as such, and must not be
- misrepresented as being the original software.
- 3. This notice may not be removed or altered from any source distribution.
- */
- /**
- * \file SDL_opengles.h
- *
- * This is a simple file to encapsulate the OpenGL ES 2.0 API headers.
- */
- #ifndef _MSC_VER
- #ifdef __IPHONEOS__
- #include <OpenGLES/ES2/gl.h>
- #include <OpenGLES/ES2/glext.h>
- #else
- #include <GLES2/gl2platform.h>
- #include <GLES2/gl2.h>
- #include <GLES2/gl2ext.h>
- #endif
- #else /* _MSC_VER */
- /* OpenGL ES2 headers for Visual Studio */
- #ifndef __khrplatform_h_
- #define __khrplatform_h_
- /*
- ** Copyright (c) 2008-2009 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.
- */
- /* Khronos platform-specific types and definitions.
- *
- * $Revision: 23298 $ on $Date: 2013-09-30 17:07:13 -0700 (Mon, 30 Sep 2013) $
- *
- * Adopters may modify this file to suit their platform. Adopters are
- * encouraged to submit platform specific modifications to the Khronos
- * group so that they can be included in future versions of this file.
- * Please submit changes by sending them to the public Khronos Bugzilla
- * (http://khronos.org/bugzilla) by filing a bug against product
- * "Khronos (general)" component "Registry".
- *
- * A predefined template which fills in some of the bug fields can be
- * reached using http://tinyurl.com/khrplatform-h-bugreport, but you
- * must create a Bugzilla login first.
- *
- *
- * See the Implementer's Guidelines for information about where this file
- * should be located on your system and for more details of its use:
- * http://www.khronos.org/registry/implementers_guide.pdf
- *
- * This file should be included as
- * #include <KHR/khrplatform.h>
- * by Khronos client API header files that use its types and defines.
- *
- * The types in khrplatform.h should only be used to define API-specific types.
- *
- * Types defined in khrplatform.h:
- * khronos_int8_t signed 8 bit
- * khronos_uint8_t unsigned 8 bit
- * khronos_int16_t signed 16 bit
- * khronos_uint16_t unsigned 16 bit
- * khronos_int32_t signed 32 bit
- * khronos_uint32_t unsigned 32 bit
- * khronos_int64_t signed 64 bit
- * khronos_uint64_t unsigned 64 bit
- * khronos_intptr_t signed same number of bits as a pointer
- * khronos_uintptr_t unsigned same number of bits as a pointer
- * khronos_ssize_t signed size
- * khronos_usize_t unsigned size
- * khronos_float_t signed 32 bit floating point
- * khronos_time_ns_t unsigned 64 bit time in nanoseconds
- * khronos_utime_nanoseconds_t unsigned time interval or absolute time in
- * nanoseconds
- * khronos_stime_nanoseconds_t signed time interval in nanoseconds
- * khronos_boolean_enum_t enumerated boolean type. This should
- * only be used as a base type when a client API's boolean type is
- * an enum. Client APIs which use an integer or other type for
- * booleans cannot use this as the base type for their boolean.
- *
- * Tokens defined in khrplatform.h:
- *
- * KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values.
- *
- * KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0.
- * KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0.
- *
- * Calling convention macros defined in this file:
- * KHRONOS_APICALL
- * KHRONOS_APIENTRY
- * KHRONOS_APIATTRIBUTES
- *
- * These may be used in function prototypes as:
- *
- * KHRONOS_APICALL void KHRONOS_APIENTRY funcname(
- * int arg1,
- * int arg2) KHRONOS_APIATTRIBUTES;
- */
- /*-------------------------------------------------------------------------
- * Definition of KHRONOS_APICALL
- *-------------------------------------------------------------------------
- * This precedes the return type of the function in the function prototype.
- */
- #if defined(_WIN32) && !defined(__SCITECH_SNAP__)
- # define KHRONOS_APICALL __declspec(dllimport)
- #elif defined (__SYMBIAN32__)
- # define KHRONOS_APICALL IMPORT_C
- #else
- # define KHRONOS_APICALL
- #endif
- /*-------------------------------------------------------------------------
- * Definition of KHRONOS_APIENTRY
- *-------------------------------------------------------------------------
- * This follows the return type of the function and precedes the function
- * name in the function prototype.
- */
- #if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__)
- /* Win32 but not WinCE */
- # define KHRONOS_APIENTRY __stdcall
- #else
- # define KHRONOS_APIENTRY
- #endif
- /*-------------------------------------------------------------------------
- * Definition of KHRONOS_APIATTRIBUTES
- *-------------------------------------------------------------------------
- * This follows the closing parenthesis of the function prototype arguments.
- */
- #if defined (__ARMCC_2__)
- #define KHRONOS_APIATTRIBUTES __softfp
- #else
- #define KHRONOS_APIATTRIBUTES
- #endif
- /*-------------------------------------------------------------------------
- * basic type definitions
- *-----------------------------------------------------------------------*/
- #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__)
- /*
- * Using <stdint.h>
- */
- #include <stdint.h>
- typedef int32_t khronos_int32_t;
- typedef uint32_t khronos_uint32_t;
- typedef int64_t khronos_int64_t;
- typedef uint64_t khronos_uint64_t;
- #define KHRONOS_SUPPORT_INT64 1
- #define KHRONOS_SUPPORT_FLOAT 1
- #elif defined(__VMS ) || defined(__sgi)
- /*
- * Using <inttypes.h>
- */
- #include <inttypes.h>
- typedef int32_t khronos_int32_t;
- typedef uint32_t khronos_uint32_t;
- typedef int64_t khronos_int64_t;
- typedef uint64_t khronos_uint64_t;
- #define KHRONOS_SUPPORT_INT64 1
- #define KHRONOS_SUPPORT_FLOAT 1
- #elif defined(_WIN32) && !defined(__SCITECH_SNAP__)
- /*
- * Win32
- */
- typedef __int32 khronos_int32_t;
- typedef unsigned __int32 khronos_uint32_t;
- typedef __int64 khronos_int64_t;
- typedef unsigned __int64 khronos_uint64_t;
- #define KHRONOS_SUPPORT_INT64 1
- #define KHRONOS_SUPPORT_FLOAT 1
- #elif defined(__sun__) || defined(__digital__)
- /*
- * Sun or Digital
- */
- typedef int khronos_int32_t;
- typedef unsigned int khronos_uint32_t;
- #if defined(__arch64__) || defined(_LP64)
- typedef long int khronos_int64_t;
- typedef unsigned long int khronos_uint64_t;
- #else
- typedef long long int khronos_int64_t;
- typedef unsigned long long int khronos_uint64_t;
- #endif /* __arch64__ */
- #define KHRONOS_SUPPORT_INT64 1
- #define KHRONOS_SUPPORT_FLOAT 1
- #elif 0
- /*
- * Hypothetical platform with no float or int64 support
- */
- typedef int khronos_int32_t;
- typedef unsigned int khronos_uint32_t;
- #define KHRONOS_SUPPORT_INT64 0
- #define KHRONOS_SUPPORT_FLOAT 0
- #else
- /*
- * Generic fallback
- */
- #include <stdint.h>
- typedef int32_t khronos_int32_t;
- typedef uint32_t khronos_uint32_t;
- typedef int64_t khronos_int64_t;
- typedef uint64_t khronos_uint64_t;
- #define KHRONOS_SUPPORT_INT64 1
- #define KHRONOS_SUPPORT_FLOAT 1
- #endif
- /*
- * Types that are (so far) the same on all platforms
- */
- typedef signed char khronos_int8_t;
- typedef unsigned char khronos_uint8_t;
- typedef signed short int khronos_int16_t;
- typedef unsigned short int khronos_uint16_t;
- /*
- * Types that differ between LLP64 and LP64 architectures - in LLP64,
- * pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
- * to be the only LLP64 architecture in current use.
- */
- #ifdef _WIN64
- typedef signed long long int khronos_intptr_t;
- typedef unsigned long long int khronos_uintptr_t;
- typedef signed long long int khronos_ssize_t;
- typedef unsigned long long int khronos_usize_t;
- #else
- typedef signed long int khronos_intptr_t;
- typedef unsigned long int khronos_uintptr_t;
- typedef signed long int khronos_ssize_t;
- typedef unsigned long int khronos_usize_t;
- #endif
- #if KHRONOS_SUPPORT_FLOAT
- /*
- * Float type
- */
- typedef float khronos_float_t;
- #endif
- #if KHRONOS_SUPPORT_INT64
- /* Time types
- *
- * These types can be used to represent a time interval in nanoseconds or
- * an absolute Unadjusted System Time. Unadjusted System Time is the number
- * of nanoseconds since some arbitrary system event (e.g. since the last
- * time the system booted). The Unadjusted System Time is an unsigned
- * 64 bit value that wraps back to 0 every 584 years. Time intervals
- * may be either signed or unsigned.
- */
- typedef khronos_uint64_t khronos_utime_nanoseconds_t;
- typedef khronos_int64_t khronos_stime_nanoseconds_t;
- #endif
- /*
- * Dummy value used to pad enum types to 32 bits.
- */
- #ifndef KHRONOS_MAX_ENUM
- #define KHRONOS_MAX_ENUM 0x7FFFFFFF
- #endif
- /*
- * Enumerated boolean type
- *
- * Values other than zero should be considered to be true. Therefore
- * comparisons should not be made against KHRONOS_TRUE.
- */
- typedef enum {
- KHRONOS_FALSE = 0,
- KHRONOS_TRUE = 1,
- KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM
- } khronos_boolean_enum_t;
- #endif /* __khrplatform_h_ */
- #ifndef __gl2platform_h_
- #define __gl2platform_h_
- /* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */
- /*
- * This document is licensed under the SGI Free Software B License Version
- * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
- */
- /* Platform-specific types and definitions for OpenGL ES 2.X gl2.h
- *
- * Adopters may modify khrplatform.h and this file to suit their platform.
- * You are encouraged to submit all modifications to the Khronos group so that
- * they can be included in future versions of this file. Please submit changes
- * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
- * by filing a bug against product "OpenGL-ES" component "Registry".
- */
- /*#include <KHR/khrplatform.h>*/
- #ifndef GL_APICALL
- #define GL_APICALL KHRONOS_APICALL
- #endif
- #ifndef GL_APIENTRY
- #define GL_APIENTRY KHRONOS_APIENTRY
- #endif
- #endif /* __gl2platform_h_ */
- #ifndef __gl2_h_
- #define __gl2_h_
- /* $Revision: 16803 $ on $Date:: 2012-02-02 09:49:18 -0800 #$ */
- /*#include <GLES2/gl2platform.h>*/
- #ifdef __cplusplus
- extern "C" {
- #endif
- /*
- * This document is licensed under the SGI Free Software B License Version
- * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
- */
- /*-------------------------------------------------------------------------
- * Data type definitions
- *-----------------------------------------------------------------------*/
- typedef void GLvoid;
- typedef char GLchar;
- typedef unsigned int GLenum;
- typedef unsigned char GLboolean;
- typedef unsigned int GLbitfield;
- typedef khronos_int8_t GLbyte;
- typedef short GLshort;
- typedef int GLint;
- typedef int GLsizei;
- typedef khronos_uint8_t GLubyte;
- typedef unsigned short GLushort;
- typedef unsigned int GLuint;
- typedef khronos_float_t GLfloat;
- typedef khronos_float_t GLclampf;
- typedef khronos_int32_t GLfixed;
- /* GL types for handling large vertex buffer objects */
- typedef khronos_intptr_t GLintptr;
- typedef khronos_ssize_t GLsizeiptr;
- /* OpenGL ES core versions */
- #define GL_ES_VERSION_2_0 1
- /* ClearBufferMask */
- #define GL_DEPTH_BUFFER_BIT 0x00000100
- #define GL_STENCIL_BUFFER_BIT 0x00000400
- #define GL_COLOR_BUFFER_BIT 0x00004000
- /* Boolean */
- #define GL_FALSE 0
- #define GL_TRUE 1
- /* BeginMode */
- #define GL_POINTS 0x0000
- #define GL_LINES 0x0001
- #define GL_LINE_LOOP 0x0002
- #define GL_LINE_STRIP 0x0003
- #define GL_TRIANGLES 0x0004
- #define GL_TRIANGLE_STRIP 0x0005
- #define GL_TRIANGLE_FAN 0x0006
- /* AlphaFunction (not supported in ES20) */
- /* GL_NEVER */
- /* GL_LESS */
- /* GL_EQUAL */
- /* GL_LEQUAL */
- /* GL_GREATER */
- /* GL_NOTEQUAL */
- /* GL_GEQUAL */
- /* GL_ALWAYS */
- /* BlendingFactorDest */
- #define GL_ZERO 0
- #define GL_ONE 1
- #define GL_SRC_COLOR 0x0300
- #define GL_ONE_MINUS_SRC_COLOR 0x0301
- #define GL_SRC_ALPHA 0x0302
- #define GL_ONE_MINUS_SRC_ALPHA 0x0303
- #define GL_DST_ALPHA 0x0304
- #define GL_ONE_MINUS_DST_ALPHA 0x0305
- /* BlendingFactorSrc */
- /* GL_ZERO */
- /* GL_ONE */
- #define GL_DST_COLOR 0x0306
- #define GL_ONE_MINUS_DST_COLOR 0x0307
- #define GL_SRC_ALPHA_SATURATE 0x0308
- /* GL_SRC_ALPHA */
- /* GL_ONE_MINUS_SRC_ALPHA */
- /* GL_DST_ALPHA */
- /* GL_ONE_MINUS_DST_ALPHA */
- /* BlendEquationSeparate */
- #define GL_FUNC_ADD 0x8006
- #define GL_BLEND_EQUATION 0x8009
- #define GL_BLEND_EQUATION_RGB 0x8009 /* same as BLEND_EQUATION */
- #define GL_BLEND_EQUATION_ALPHA 0x883D
- /* BlendSubtract */
- #define GL_FUNC_SUBTRACT 0x800A
- #define GL_FUNC_REVERSE_SUBTRACT 0x800B
- /* Separate Blend Functions */
- #define GL_BLEND_DST_RGB 0x80C8
- #define GL_BLEND_SRC_RGB 0x80C9
- #define GL_BLEND_DST_ALPHA 0x80CA
- #define GL_BLEND_SRC_ALPHA 0x80CB
- #define GL_CONSTANT_COLOR 0x8001
- #define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
- #define GL_CONSTANT_ALPHA 0x8003
- #define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
- #define GL_BLEND_COLOR 0x8005
- /* Buffer Objects */
- #define GL_ARRAY_BUFFER 0x8892
- #define GL_ELEMENT_ARRAY_BUFFER 0x8893
- #define GL_ARRAY_BUFFER_BINDING 0x8894
- #define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
- #define GL_STREAM_DRAW 0x88E0
- #define GL_STATIC_DRAW 0x88E4
- #define GL_DYNAMIC_DRAW 0x88E8
- #define GL_BUFFER_SIZE 0x8764
- #define GL_BUFFER_USAGE 0x8765
- #define GL_CURRENT_VERTEX_ATTRIB 0x8626
- /* CullFaceMode */
- #define GL_FRONT 0x0404
- #define GL_BACK 0x0405
- #define GL_FRONT_AND_BACK 0x0408
- /* DepthFunction */
- /* GL_NEVER */
- /* GL_LESS */
- /* GL_EQUAL */
- /* GL_LEQUAL */
- /* GL_GREATER */
- /* GL_NOTEQUAL */
- /* GL_GEQUAL */
- /* GL_ALWAYS */
- /* EnableCap */
- #define GL_TEXTURE_2D 0x0DE1
- #define GL_CULL_FACE 0x0B44
- #define GL_BLEND 0x0BE2
- #define GL_DITHER 0x0BD0
- #define GL_STENCIL_TEST 0x0B90
- #define GL_DEPTH_TEST 0x0B71
- #define GL_SCISSOR_TEST 0x0C11
- #define GL_POLYGON_OFFSET_FILL 0x8037
- #define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
- #define GL_SAMPLE_COVERAGE 0x80A0
- /* ErrorCode */
- #define GL_NO_ERROR 0
- #define GL_INVALID_ENUM 0x0500
- #define GL_INVALID_VALUE 0x0501
- #define GL_INVALID_OPERATION 0x0502
- #define GL_OUT_OF_MEMORY 0x0505
- /* FrontFaceDirection */
- #define GL_CW 0x0900
- #define GL_CCW 0x0901
- /* GetPName */
- #define GL_LINE_WIDTH 0x0B21
- #define GL_ALIASED_POINT_SIZE_RANGE 0x846D
- #define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
- #define GL_CULL_FACE_MODE 0x0B45
- #define GL_FRONT_FACE 0x0B46
- #define GL_DEPTH_RANGE 0x0B70
- #define GL_DEPTH_WRITEMASK 0x0B72
- #define GL_DEPTH_CLEAR_VALUE 0x0B73
- #define GL_DEPTH_FUNC 0x0B74
- #define GL_STENCIL_CLEAR_VALUE 0x0B91
- #define GL_STENCIL_FUNC 0x0B92
- #define GL_STENCIL_FAIL 0x0B94
- #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
- #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
- #define GL_STENCIL_REF 0x0B97
- #define GL_STENCIL_VALUE_MASK 0x0B93
- #define GL_STENCIL_WRITEMASK 0x0B98
- #define GL_STENCIL_BACK_FUNC 0x8800
- #define GL_STENCIL_BACK_FAIL 0x8801
- #define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
- #define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
- #define GL_STENCIL_BACK_REF 0x8CA3
- #define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
- #define GL_STENCIL_BACK_WRITEMASK 0x8CA5
- #define GL_VIEWPORT 0x0BA2
- #define GL_SCISSOR_BOX 0x0C10
- /* GL_SCISSOR_TEST */
- #define GL_COLOR_CLEAR_VALUE 0x0C22
- #define GL_COLOR_WRITEMASK 0x0C23
- #define GL_UNPACK_ALIGNMENT 0x0CF5
- #define GL_PACK_ALIGNMENT 0x0D05
- #define GL_MAX_TEXTURE_SIZE 0x0D33
- #define GL_MAX_VIEWPORT_DIMS 0x0D3A
- #define GL_SUBPIXEL_BITS 0x0D50
- #define GL_RED_BITS 0x0D52
- #define GL_GREEN_BITS 0x0D53
- #define GL_BLUE_BITS 0x0D54
- #define GL_ALPHA_BITS 0x0D55
- #define GL_DEPTH_BITS 0x0D56
- #define GL_STENCIL_BITS 0x0D57
- #define GL_POLYGON_OFFSET_UNITS 0x2A00
- /* GL_POLYGON_OFFSET_FILL */
- #define GL_POLYGON_OFFSET_FACTOR 0x8038
- #define GL_TEXTURE_BINDING_2D 0x8069
- #define GL_SAMPLE_BUFFERS 0x80A8
- #define GL_SAMPLES 0x80A9
- #define GL_SAMPLE_COVERAGE_VALUE 0x80AA
- #define GL_SAMPLE_COVERAGE_INVERT 0x80AB
- /* GetTextureParameter */
- /* GL_TEXTURE_MAG_FILTER */
- /* GL_TEXTURE_MIN_FILTER */
- /* GL_TEXTURE_WRAP_S */
- /* GL_TEXTURE_WRAP_T */
- #define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
- #define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
- /* HintMode */
- #define GL_DONT_CARE 0x1100
- #define GL_FASTEST 0x1101
- #define GL_NICEST 0x1102
- /* HintTarget */
- #define GL_GENERATE_MIPMAP_HINT 0x8192
- /* DataType */
- #define GL_BYTE 0x1400
- #define GL_UNSIGNED_BYTE 0x1401
- #define GL_SHORT 0x1402
- #define GL_UNSIGNED_SHORT 0x1403
- #define GL_INT 0x1404
- #define GL_UNSIGNED_INT 0x1405
- #define GL_FLOAT 0x1406
- #define GL_FIXED 0x140C
- /* PixelFormat */
- #define GL_DEPTH_COMPONENT 0x1902
- #define GL_ALPHA 0x1906
- #define GL_RGB 0x1907
- #define GL_RGBA 0x1908
- #define GL_LUMINANCE 0x1909
- #define GL_LUMINANCE_ALPHA 0x190A
- /* PixelType */
- /* GL_UNSIGNED_BYTE */
- #define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
- #define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
- #define GL_UNSIGNED_SHORT_5_6_5 0x8363
- /* Shaders */
- #define GL_FRAGMENT_SHADER 0x8B30
- #define GL_VERTEX_SHADER 0x8B31
- #define GL_MAX_VERTEX_ATTRIBS 0x8869
- #define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB
- #define GL_MAX_VARYING_VECTORS 0x8DFC
- #define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
- #define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
- #define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
- #define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
- #define GL_SHADER_TYPE 0x8B4F
- #define GL_DELETE_STATUS 0x8B80
- #define GL_LINK_STATUS 0x8B82
- #define GL_VALIDATE_STATUS 0x8B83
- #define GL_ATTACHED_SHADERS 0x8B85
- #define GL_ACTIVE_UNIFORMS 0x8B86
- #define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
- #define GL_ACTIVE_ATTRIBUTES 0x8B89
- #define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
- #define GL_SHADING_LANGUAGE_VERSION 0x8B8C
- #define GL_CURRENT_PROGRAM 0x8B8D
- /* StencilFunction */
- #define GL_NEVER 0x0200
- #define GL_LESS 0x0201
- #define GL_EQUAL 0x0202
- #define GL_LEQUAL 0x0203
- #define GL_GREATER 0x0204
- #define GL_NOTEQUAL 0x0205
- #define GL_GEQUAL 0x0206
- #define GL_ALWAYS 0x0207
- /* StencilOp */
- /* GL_ZERO */
- #define GL_KEEP 0x1E00
- #define GL_REPLACE 0x1E01
- #define GL_INCR 0x1E02
- #define GL_DECR 0x1E03
- #define GL_INVERT 0x150A
- #define GL_INCR_WRAP 0x8507
- #define GL_DECR_WRAP 0x8508
- /* StringName */
- #define GL_VENDOR 0x1F00
- #define GL_RENDERER 0x1F01
- #define GL_VERSION 0x1F02
- #define GL_EXTENSIONS 0x1F03
- /* TextureMagFilter */
- #define GL_NEAREST 0x2600
- #define GL_LINEAR 0x2601
- /* TextureMinFilter */
- /* GL_NEAREST */
- /* GL_LINEAR */
- #define GL_NEAREST_MIPMAP_NEAREST 0x2700
- #define GL_LINEAR_MIPMAP_NEAREST 0x2701
- #define GL_NEAREST_MIPMAP_LINEAR 0x2702
- #define GL_LINEAR_MIPMAP_LINEAR 0x2703
- /* TextureParameterName */
- #define GL_TEXTURE_MAG_FILTER 0x2800
- #define GL_TEXTURE_MIN_FILTER 0x2801
- #define GL_TEXTURE_WRAP_S 0x2802
- #define GL_TEXTURE_WRAP_T 0x2803
- /* TextureTarget */
- /* GL_TEXTURE_2D */
- #define GL_TEXTURE 0x1702
- #define GL_TEXTURE_CUBE_MAP 0x8513
- #define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
- #define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
- #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
- #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
- #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
- #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
- #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
- #define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
- /* TextureUnit */
- #define GL_TEXTURE0 0x84C0
- #define GL_TEXTURE1 0x84C1
- #define GL_TEXTURE2 0x84C2
- #define GL_TEXTURE3 0x84C3
- #define GL_TEXTURE4 0x84C4
- #define GL_TEXTURE5 0x84C5
- #define GL_TEXTURE6 0x84C6
- #define GL_TEXTURE7 0x84C7
- #define GL_TEXTURE8 0x84C8
- #define GL_TEXTURE9 0x84C9
- #define GL_TEXTURE10 0x84CA
- #define GL_TEXTURE11 0x84CB
- #define GL_TEXTURE12 0x84CC
- #define GL_TEXTURE13 0x84CD
- #define GL_TEXTURE14 0x84CE
- #define GL_TEXTURE15 0x84CF
- #define GL_TEXTURE16 0x84D0
- #define GL_TEXTURE17 0x84D1
- #define GL_TEXTURE18 0x84D2
- #define GL_TEXTURE19 0x84D3
- #define GL_TEXTURE20 0x84D4
- #define GL_TEXTURE21 0x84D5
- #define GL_TEXTURE22 0x84D6
- #define GL_TEXTURE23 0x84D7
- #define GL_TEXTURE24 0x84D8
- #define GL_TEXTURE25 0x84D9
- #define GL_TEXTURE26 0x84DA
- #define GL_TEXTURE27 0x84DB
- #define GL_TEXTURE28 0x84DC
- #define GL_TEXTURE29 0x84DD
- #define GL_TEXTURE30 0x84DE
- #define GL_TEXTURE31 0x84DF
- #define GL_ACTIVE_TEXTURE 0x84E0
- /* TextureWrapMode */
- #define GL_REPEAT 0x2901
- #define GL_CLAMP_TO_EDGE 0x812F
- #define GL_MIRRORED_REPEAT 0x8370
- /* Uniform Types */
- #define GL_FLOAT_VEC2 0x8B50
- #define GL_FLOAT_VEC3 0x8B51
- #define GL_FLOAT_VEC4 0x8B52
- #define GL_INT_VEC2 0x8B53
- #define GL_INT_VEC3 0x8B54
- #define GL_INT_VEC4 0x8B55
- #define GL_BOOL 0x8B56
- #define GL_BOOL_VEC2 0x8B57
- #define GL_BOOL_VEC3 0x8B58
- #define GL_BOOL_VEC4 0x8B59
- #define GL_FLOAT_MAT2 0x8B5A
- #define GL_FLOAT_MAT3 0x8B5B
- #define GL_FLOAT_MAT4 0x8B5C
- #define GL_SAMPLER_2D 0x8B5E
- #define GL_SAMPLER_CUBE 0x8B60
- /* Vertex Arrays */
- #define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
- #define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
- #define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
- #define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
- #define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
- #define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
- #define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
- /* Read Format */
- #define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
- #define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
- /* Shader Source */
- #define GL_COMPILE_STATUS 0x8B81
- #define GL_INFO_LOG_LENGTH 0x8B84
- #define GL_SHADER_SOURCE_LENGTH 0x8B88
- #define GL_SHADER_COMPILER 0x8DFA
- /* Shader Binary */
- #define GL_SHADER_BINARY_FORMATS 0x8DF8
- #define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9
- /* Shader Precision-Specified Types */
- #define GL_LOW_FLOAT 0x8DF0
- #define GL_MEDIUM_FLOAT 0x8DF1
- #define GL_HIGH_FLOAT 0x8DF2
- #define GL_LOW_INT 0x8DF3
- #define GL_MEDIUM_INT 0x8DF4
- #define GL_HIGH_INT 0x8DF5
- /* Framebuffer Object. */
- #define GL_FRAMEBUFFER 0x8D40
- #define GL_RENDERBUFFER 0x8D41
- #define GL_RGBA4 0x8056
- #define GL_RGB5_A1 0x8057
- #define GL_RGB565 0x8D62
- #define GL_DEPTH_COMPONENT16 0x81A5
- #define GL_STENCIL_INDEX8 0x8D48
- #define GL_RENDERBUFFER_WIDTH 0x8D42
- #define GL_RENDERBUFFER_HEIGHT 0x8D43
- #define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
- #define GL_RENDERBUFFER_RED_SIZE 0x8D50
- #define GL_RENDERBUFFER_GREEN_SIZE 0x8D51
- #define GL_RENDERBUFFER_BLUE_SIZE 0x8D52
- #define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
- #define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
- #define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
- #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
- #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
- #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
- #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
- #define GL_COLOR_ATTACHMENT0 0x8CE0
- #define GL_DEPTH_ATTACHMENT 0x8D00
- #define GL_STENCIL_ATTACHMENT 0x8D20
- #define GL_NONE 0
- #define GL_FRAMEBUFFER_COMPLETE 0x8CD5
- #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
- #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
- #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9
- #define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
- #define GL_FRAMEBUFFER_BINDING 0x8CA6
- #define GL_RENDERBUFFER_BINDING 0x8CA7
- #define GL_MAX_RENDERBUFFER_SIZE 0x84E8
- #define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
- /*-------------------------------------------------------------------------
- * GL core functions.
- *-----------------------------------------------------------------------*/
- GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture);
- GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
- GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar* name);
- GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
- GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
- GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
- GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
- GL_APICALL void GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
- GL_APICALL void GL_APIENTRY glBlendEquation ( GLenum mode );
- GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
- GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
- GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
- GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
- GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
- GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target);
- GL_APICALL void GL_APIENTRY glClear (GLbitfield mask);
- GL_APICALL void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
- GL_APICALL void GL_APIENTRY glClearDepthf (GLclampf depth);
- GL_APICALL void GL_APIENTRY glClearStencil (GLint s);
- GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
- GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader);
- GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
- GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
- GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
- GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
- GL_APICALL GLuint GL_APIENTRY glCreateProgram (void);
- GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type);
- GL_APICALL void GL_APIENTRY glCullFace (GLenum mode);
- GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers);
- GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers);
- GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program);
- GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers);
- GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader);
- GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures);
- GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func);
- GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag);
- GL_APICALL void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar);
- GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
- GL_APICALL void GL_APIENTRY glDisable (GLenum cap);
- GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index);
- GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
- GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
- GL_APICALL void GL_APIENTRY glEnable (GLenum cap);
- GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index);
- GL_APICALL void GL_APIENTRY glFinish (void);
- GL_APICALL void GL_APIENTRY glFlush (void);
- GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
- GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
- GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode);
- GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers);
- GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
- GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers);
- GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers);
- GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures);
- GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
- GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
- GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
- GL_APICALL int GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar* name);
- GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params);
- GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params);
- GL_APICALL GLenum GL_APIENTRY glGetError (void);
- GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params);
- GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params);
- GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params);
- GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params);
- GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
- GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params);
- GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params);
- GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
- GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
- GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
- GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name);
- GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
- GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
- GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params);
- GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params);
- GL_APICALL int GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar* name);
- GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params);
- GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params);
- GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid** pointer);
- GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode);
- GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer);
- GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap);
- GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
- GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program);
- GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
- GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader);
- GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture);
- GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width);
- GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program);
- GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
- GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
- GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
- GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void);
- GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
- GL_APICALL void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert);
- GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
- GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
- GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar* const* string, const GLint* length);
- GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
- GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
- GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
- GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
- GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
- GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
- GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
- GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
- GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
- GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
- GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
- GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
- GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat x);
- GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v);
- GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint x);
- GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v);
- GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y);
- GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v);
- GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y);
- GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v);
- GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z);
- GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v);
- GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z);
- GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v);
- GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
- GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v);
- GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w);
- GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v);
- GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
- GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
- GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
- GL_APICALL void GL_APIENTRY glUseProgram (GLuint program);
- GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program);
- GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x);
- GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values);
- GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y);
- GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values);
- GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z);
- GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values);
- GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
- GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values);
- GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
- GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
- #ifdef __cplusplus
- }
- #endif
- #endif /* __gl2_h_ */
- #ifndef __gl2ext_h_
- #define __gl2ext_h_
- /* $Revision: 19436 $ on $Date:: 2012-10-10 10:37:04 -0700 #$ */
- #ifdef __cplusplus
- extern "C" {
- #endif
- /*
- * This document is licensed under the SGI Free Software B License Version
- * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
- */
- #ifndef GL_APIENTRYP
- # define GL_APIENTRYP GL_APIENTRY*
- #endif
- /*------------------------------------------------------------------------*
- * OES extension tokens
- *------------------------------------------------------------------------*/
- /* GL_OES_compressed_ETC1_RGB8_texture */
- #ifndef GL_OES_compressed_ETC1_RGB8_texture
- #define GL_ETC1_RGB8_OES 0x8D64
- #endif
- /* GL_OES_compressed_paletted_texture */
- #ifndef GL_OES_compressed_paletted_texture
- #define GL_PALETTE4_RGB8_OES 0x8B90
- #define GL_PALETTE4_RGBA8_OES 0x8B91
- #define GL_PALETTE4_R5_G6_B5_OES 0x8B92
- #define GL_PALETTE4_RGBA4_OES 0x8B93
- #define GL_PALETTE4_RGB5_A1_OES 0x8B94
- #define GL_PALETTE8_RGB8_OES 0x8B95
- #define GL_PALETTE8_RGBA8_OES 0x8B96
- #define GL_PALETTE8_R5_G6_B5_OES 0x8B97
- #define GL_PALETTE8_RGBA4_OES 0x8B98
- #define GL_PALETTE8_RGB5_A1_OES 0x8B99
- #endif
- /* GL_OES_depth24 */
- #ifndef GL_OES_depth24
- #define GL_DEPTH_COMPONENT24_OES 0x81A6
- #endif
- /* GL_OES_depth32 */
- #ifndef GL_OES_depth32
- #define GL_DEPTH_COMPONENT32_OES 0x81A7
- #endif
- /* GL_OES_depth_texture */
- /* No new tokens introduced by this extension. */
- /* GL_OES_EGL_image */
- #ifndef GL_OES_EGL_image
- typedef void* GLeglImageOES;
- #endif
- /* GL_OES_EGL_image_external */
- #ifndef GL_OES_EGL_image_external
- /* GLeglImageOES defined in GL_OES_EGL_image already. */
- #define GL_TEXTURE_EXTERNAL_OES 0x8D65
- #define GL_SAMPLER_EXTERNAL_OES 0x8D66
- #define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67
- #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68
- #endif
- /* GL_OES_element_index_uint */
- #ifndef GL_OES_element_index_uint
- #define GL_UNSIGNED_INT 0x1405
- #endif
- /* GL_OES_get_program_binary */
- #ifndef GL_OES_get_program_binary
- #define GL_PROGRAM_BINARY_LENGTH_OES 0x8741
- #define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE
- #define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF
- #endif
- /* GL_OES_mapbuffer */
- #ifndef GL_OES_mapbuffer
- #define GL_WRITE_ONLY_OES 0x88B9
- #define GL_BUFFER_ACCESS_OES 0x88BB
- #define GL_BUFFER_MAPPED_OES 0x88BC
- #define GL_BUFFER_MAP_POINTER_OES 0x88BD
- #endif
- /* GL_OES_packed_depth_stencil */
- #ifndef GL_OES_packed_depth_stencil
- #define GL_DEPTH_STENCIL_OES 0x84F9
- #define GL_UNSIGNED_INT_24_8_OES 0x84FA
- #define GL_DEPTH24_STENCIL8_OES 0x88F0
- #endif
- /* GL_OES_required_internalformat */
- #ifndef GL_OES_required_internalformat
- #define GL_ALPHA8_OES 0x803C
- #define GL_DEPTH_COMPONENT16_OES 0x81A5
- /* reuse GL_DEPTH_COMPONENT24_OES */
- /* reuse GL_DEPTH24_STENCIL8_OES */
- /* reuse GL_DEPTH_COMPONENT32_OES */
- #define GL_LUMINANCE4_ALPHA4_OES 0x8043
- #define GL_LUMINANCE8_ALPHA8_OES 0x8045
- #define GL_LUMINANCE8_OES 0x8040
- #define GL_RGBA4_OES 0x8056
- #define GL_RGB5_A1_OES 0x8057
- #define GL_RGB565_OES 0x8D62
- /* reuse GL_RGB8_OES */
- /* reuse GL_RGBA8_OES */
- /* reuse GL_RGB10_EXT */
- /* reuse GL_RGB10_A2_EXT */
- #endif
- /* GL_OES_rgb8_rgba8 */
- #ifndef GL_OES_rgb8_rgba8
- #define GL_RGB8_OES 0x8051
- #define GL_RGBA8_OES 0x8058
- #endif
- /* GL_OES_standard_derivatives */
- #ifndef GL_OES_standard_derivatives
- #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B
- #endif
- /* GL_OES_stencil1 */
- #ifndef GL_OES_stencil1
- #define GL_STENCIL_INDEX1_OES 0x8D46
- #endif
- /* GL_OES_stencil4 */
- #ifndef GL_OES_stencil4
- #define GL_STENCIL_INDEX4_OES 0x8D47
- #endif
- #ifndef GL_OES_surfaceless_context
- #define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219
- #endif
- /* GL_OES_texture_3D */
- #ifndef GL_OES_texture_3D
- #define GL_TEXTURE_WRAP_R_OES 0x8072
- #define GL_TEXTURE_3D_OES 0x806F
- #define GL_TEXTURE_BINDING_3D_OES 0x806A
- #define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073
- #define GL_SAMPLER_3D_OES 0x8B5F
- #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4
- #endif
- /* GL_OES_texture_float */
- /* No new tokens introduced by this extension. */
- /* GL_OES_texture_float_linear */
- /* No new tokens introduced by this extension. */
- /* GL_OES_texture_half_float */
- #ifndef GL_OES_texture_half_float
- #define GL_HALF_FLOAT_OES 0x8D61
- #endif
- /* GL_OES_texture_half_float_linear */
- /* No new tokens introduced by this extension. */
- /* GL_OES_texture_npot */
- /* No new tokens introduced by this extension. */
- /* GL_OES_vertex_array_object */
- #ifndef GL_OES_vertex_array_object
- #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5
- #endif
- /* GL_OES_vertex_half_float */
- /* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
- /* GL_OES_vertex_type_10_10_10_2 */
- #ifndef GL_OES_vertex_type_10_10_10_2
- #define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6
- #define GL_INT_10_10_10_2_OES 0x8DF7
- #endif
- /*------------------------------------------------------------------------*
- * KHR extension tokens
- *------------------------------------------------------------------------*/
- #ifndef GL_KHR_debug
- typedef void (GL_APIENTRYP GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
- #define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242
- #define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH 0x8243
- #define GL_DEBUG_CALLBACK_FUNCTION 0x8244
- #define GL_DEBUG_CALLBACK_USER_PARAM 0x8245
- #define GL_DEBUG_SOURCE_API 0x8246
- #define GL_DEBUG_SOURCE_WINDOW_SYSTEM 0x8247
- #define GL_DEBUG_SOURCE_SHADER_COMPILER 0x8248
- #define GL_DEBUG_SOURCE_THIRD_PARTY 0x8249
- #define GL_DEBUG_SOURCE_APPLICATION 0x824A
- #define GL_DEBUG_SOURCE_OTHER 0x824B
- #define GL_DEBUG_TYPE_ERROR 0x824C
- #define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR 0x824D
- #define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR 0x824E
- #define GL_DEBUG_TYPE_PORTABILITY 0x824F
- #define GL_DEBUG_TYPE_PERFORMANCE 0x8250
- #define GL_DEBUG_TYPE_OTHER 0x8251
- #define GL_DEBUG_TYPE_MARKER 0x8268
- #define GL_DEBUG_TYPE_PUSH_GROUP 0x8269
- #define GL_DEBUG_TYPE_POP_GROUP 0x826A
- #define GL_DEBUG_SEVERITY_NOTIFICATION 0x826B
- #define GL_MAX_DEBUG_GROUP_STACK_DEPTH 0x826C
- #define GL_DEBUG_GROUP_STACK_DEPTH 0x826D
- #define GL_BUFFER 0x82E0
- #define GL_SHADER 0x82E1
- #define GL_PROGRAM 0x82E2
- #define GL_QUERY 0x82E3
- /* PROGRAM_PIPELINE only in GL */
- #define GL_SAMPLER 0x82E6
- /* DISPLAY_LIST only in GL */
- #define GL_MAX_LABEL_LENGTH 0x82E8
- #define GL_MAX_DEBUG_MESSAGE_LENGTH 0x9143
- #define GL_MAX_DEBUG_LOGGED_MESSAGES 0x9144
- #define GL_DEBUG_LOGGED_MESSAGES 0x9145
- #define GL_DEBUG_SEVERITY_HIGH 0x9146
- #define GL_DEBUG_SEVERITY_MEDIUM 0x9147
- #define GL_DEBUG_SEVERITY_LOW 0x9148
- #define GL_DEBUG_OUTPUT 0x92E0
- #define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002
- #define GL_STACK_OVERFLOW 0x0503
- #define GL_STACK_UNDERFLOW 0x0504
- #endif
- #ifndef GL_KHR_texture_compression_astc_ldr
- #define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0
- #define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1
- #define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2
- #define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3
- #define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4
- #define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5
- #define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6
- #define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7
- #define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8
- #define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9
- #define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA
- #define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB
- #define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC
- #define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC
- #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD
- #endif
- /*------------------------------------------------------------------------*
- * AMD extension tokens
- *------------------------------------------------------------------------*/
- /* GL_AMD_compressed_3DC_texture */
- #ifndef GL_AMD_compressed_3DC_texture
- #define GL_3DC_X_AMD 0x87F9
- #define GL_3DC_XY_AMD 0x87FA
- #endif
- /* GL_AMD_compressed_ATC_texture */
- #ifndef GL_AMD_compressed_ATC_texture
- #define GL_ATC_RGB_AMD 0x8C92
- #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
- #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
- #endif
- /* GL_AMD_performance_monitor */
- #ifndef GL_AMD_performance_monitor
- #define GL_COUNTER_TYPE_AMD 0x8BC0
- #define GL_COUNTER_RANGE_AMD 0x8BC1
- #define GL_UNSIGNED_INT64_AMD 0x8BC2
- #define GL_PERCENTAGE_AMD 0x8BC3
- #define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
- #define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
- #define GL_PERFMON_RESULT_AMD 0x8BC6
- #endif
- /* GL_AMD_program_binary_Z400 */
- #ifndef GL_AMD_program_binary_Z400
- #define GL_Z400_BINARY_AMD 0x8740
- #endif
- /*------------------------------------------------------------------------*
- * ANGLE extension tokens
- *------------------------------------------------------------------------*/
- /* GL_ANGLE_framebuffer_blit */
- #ifndef GL_ANGLE_framebuffer_blit
- #define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8
- #define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9
- #define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6
- #define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA
- #endif
- /* GL_ANGLE_framebuffer_multisample */
- #ifndef GL_ANGLE_framebuffer_multisample
- #define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB
- #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56
- #define GL_MAX_SAMPLES_ANGLE 0x8D57
- #endif
- /* GL_ANGLE_instanced_arrays */
- #ifndef GL_ANGLE_instanced_arrays
- #define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE
- #endif
- /* GL_ANGLE_pack_reverse_row_order */
- #ifndef GL_ANGLE_pack_reverse_row_order
- #define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4
- #endif
- /* GL_ANGLE_texture_compression_dxt3 */
- #ifndef GL_ANGLE_texture_compression_dxt3
- #define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2
- #endif
- /* GL_ANGLE_texture_compression_dxt5 */
- #ifndef GL_ANGLE_texture_compression_dxt5
- #define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3
- #endif
- /* GL_ANGLE_texture_usage */
- #ifndef GL_ANGLE_texture_usage
- #define GL_TEXTURE_USAGE_ANGLE 0x93A2
- #define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3
- #endif
- /* GL_ANGLE_translated_shader_source */
- #ifndef GL_ANGLE_translated_shader_source
- #define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0
- #endif
- /*------------------------------------------------------------------------*
- * APPLE extension tokens
- *------------------------------------------------------------------------*/
- /* GL_APPLE_copy_texture_levels */
- /* No new tokens introduced by this extension. */
-
- /* GL_APPLE_framebuffer_multisample */
- #ifndef GL_APPLE_framebuffer_multisample
- #define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB
- #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56
- #define GL_MAX_SAMPLES_APPLE 0x8D57
- #define GL_READ_FRAMEBUFFER_APPLE 0x8CA8
- #define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9
- #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6
- #define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA
- #endif
- /* GL_APPLE_rgb_422 */
- #ifndef GL_APPLE_rgb_422
- #define GL_RGB_422_APPLE 0x8A1F
- #define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
- #define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
- #endif
- /* GL_APPLE_sync */
- #ifndef GL_APPLE_sync
- #ifndef __gl3_h_
- /* These types are defined with reference to <inttypes.h>
- * in the Apple extension spec, but here we use the Khronos
- * portable types in khrplatform.h, and assume those types
- * are always defined.
- * If any other extensions using these types are defined,
- * the typedefs must move out of this block and be shared.
- */
- typedef khronos_int64_t GLint64;
- typedef khronos_uint64_t GLuint64;
- typedef struct __GLsync *GLsync;
- #endif
- #define GL_SYNC_OBJECT_APPLE 0x8A53
- #define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111
- #define GL_OBJECT_TYPE_APPLE 0x9112
- #define GL_SYNC_CONDITION_APPLE 0x9113
- #define GL_SYNC_STATUS_APPLE 0x9114
- #define GL_SYNC_FLAGS_APPLE 0x9115
- #define GL_SYNC_FENCE_APPLE 0x9116
- #define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117
- #define GL_UNSIGNALED_APPLE 0x9118
- #define GL_SIGNALED_APPLE 0x9119
- #define GL_ALREADY_SIGNALED_APPLE 0x911A
- #define GL_TIMEOUT_EXPIRED_APPLE 0x911B
- #define GL_CONDITION_SATISFIED_APPLE 0x911C
- #define GL_WAIT_FAILED_APPLE 0x911D
- #define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001
- #define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull
- #endif
- /* GL_APPLE_texture_format_BGRA8888 */
- #ifndef GL_APPLE_texture_format_BGRA8888
- #define GL_BGRA_EXT 0x80E1
- #endif
- /* GL_APPLE_texture_max_level */
- #ifndef GL_APPLE_texture_max_level
- #define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D
- #endif
- /*------------------------------------------------------------------------*
- * ARM extension tokens
- *------------------------------------------------------------------------*/
- /* GL_ARM_mali_program_binary */
- #ifndef GL_ARM_mali_program_binary
- #define GL_MALI_PROGRAM_BINARY_ARM 0x8F61
- #endif
- /* GL_ARM_mali_shader_binary */
- #ifndef GL_ARM_mali_shader_binary
- #define GL_MALI_SHADER_BINARY_ARM 0x8F60
- #endif
- /* GL_ARM_rgba8 */
- /* No new tokens introduced by this extension. */
- /*------------------------------------------------------------------------*
- * EXT extension tokens
- *------------------------------------------------------------------------*/
- /* GL_EXT_blend_minmax */
- #ifndef GL_EXT_blend_minmax
- #define GL_MIN_EXT 0x8007
- #define GL_MAX_EXT 0x8008
- #endif
- /* GL_EXT_color_buffer_half_float */
- #ifndef GL_EXT_color_buffer_half_float
- #define GL_RGBA16F_EXT 0x881A
- #define GL_RGB16F_EXT 0x881B
- #define GL_RG16F_EXT 0x822F
- #define GL_R16F_EXT 0x822D
- #define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211
- #define GL_UNSIGNED_NORMALIZED_EXT 0x8C17
- #endif
- /* GL_EXT_debug_label */
- #ifndef GL_EXT_debug_label
- #define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F
- #define GL_PROGRAM_OBJECT_EXT 0x8B40
- #define GL_SHADER_OBJECT_EXT 0x8B48
- #define GL_BUFFER_OBJECT_EXT 0x9151
- #define GL_QUERY_OBJECT_EXT 0x9153
- #define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154
- #endif
- /* GL_EXT_debug_marker */
- /* No new tokens introduced by this extension. */
- /* GL_EXT_discard_framebuffer */
- #ifndef GL_EXT_discard_framebuffer
- #define GL_COLOR_EXT 0x1800
- #define GL_DEPTH_EXT 0x1801
- #define GL_STENCIL_EXT 0x1802
- #endif
- /* GL_EXT_map_buffer_range */
- #ifndef GL_EXT_map_buffer_range
- #define GL_MAP_READ_BIT_EXT 0x0001
- #define GL_MAP_WRITE_BIT_EXT 0x0002
- #define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004
- #define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008
- #define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010
- #define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020
- #endif
- /* GL_EXT_multisampled_render_to_texture */
- #ifndef GL_EXT_multisampled_render_to_texture
- #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C
- /* reuse values from GL_EXT_framebuffer_multisample (desktop extension) */
- #define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
- #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
- #define GL_MAX_SAMPLES_EXT 0x8D57
- #endif
- /* GL_EXT_multiview_draw_buffers */
- #ifndef GL_EXT_multiview_draw_buffers
- #define GL_COLOR_ATTACHMENT_EXT 0x90F0
- #define GL_MULTIVIEW_EXT 0x90F1
- #define GL_DRAW_BUFFER_EXT 0x0C01
- #define GL_READ_BUFFER_EXT 0x0C02
- #define GL_MAX_MULTIVIEW_BUFFERS_EXT 0x90F2
- #endif
- /* GL_EXT_multi_draw_arrays */
- /* No new tokens introduced by this extension. */
- /* GL_EXT_occlusion_query_boolean */
- #ifndef GL_EXT_occlusion_query_boolean
- #define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F
- #define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A
- #define GL_CURRENT_QUERY_EXT 0x8865
- #define GL_QUERY_RESULT_EXT 0x8866
- #define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867
- #endif
- /* GL_EXT_read_format_bgra */
- #ifndef GL_EXT_read_format_bgra
- #define GL_BGRA_EXT 0x80E1
- #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365
- #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366
- #endif
- /* GL_EXT_robustness */
- #ifndef GL_EXT_robustness
- /* reuse GL_NO_ERROR */
- #define GL_GUILTY_CONTEXT_RESET_EXT 0x8253
- #define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254
- #define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255
- #define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3
- #define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256
- #define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252
- #define GL_NO_RESET_NOTIFICATION_EXT 0x8261
- #endif
- /* GL_EXT_separate_shader_objects */
- #ifndef GL_EXT_separate_shader_objects
- #define GL_VERTEX_SHADER_BIT_EXT 0x00000001
- #define GL_FRAGMENT_SHADER_BIT_EXT 0x00000002
- #define GL_ALL_SHADER_BITS_EXT 0xFFFFFFFF
- #define GL_PROGRAM_SEPARABLE_EXT 0x8258
- #define GL_ACTIVE_PROGRAM_EXT 0x8259
- #define GL_PROGRAM_PIPELINE_BINDING_EXT 0x825A
- #endif
- /* GL_EXT_shader_framebuffer_fetch */
- #ifndef GL_EXT_shader_framebuffer_fetch
- #define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52
- #endif
- /* GL_EXT_shader_texture_lod */
- /* No new tokens introduced by this extension. */
- /* GL_EXT_shadow_samplers */
- #ifndef GL_EXT_shadow_samplers
- #define GL_TEXTURE_COMPARE_MODE_EXT 0x884C
- #define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D
- #define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E
- #define GL_SAMPLER_2D_SHADOW_EXT 0x8B62
- #endif
- /* GL_EXT_sRGB */
- #ifndef GL_EXT_sRGB
- #define GL_SRGB_EXT 0x8C40
- #define GL_SRGB_ALPHA_EXT 0x8C42
- #define GL_SRGB8_ALPHA8_EXT 0x8C43
- #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210
- #endif
- /* GL_EXT_texture_compression_dxt1 */
- #ifndef GL_EXT_texture_compression_dxt1
- #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
- #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
- #endif
- /* GL_EXT_texture_filter_anisotropic */
- #ifndef GL_EXT_texture_filter_anisotropic
- #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
- #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
- #endif
- /* GL_EXT_texture_format_BGRA8888 */
- #ifndef GL_EXT_texture_format_BGRA8888
- #define GL_BGRA_EXT 0x80E1
- #endif
- /* GL_EXT_texture_rg */
- #ifndef GL_EXT_texture_rg
- #define GL_RED_EXT 0x1903
- #define GL_RG_EXT 0x8227
- #define GL_R8_EXT 0x8229
- #define GL_RG8_EXT 0x822B
- #endif
- /* GL_EXT_texture_storage */
- #ifndef GL_EXT_texture_storage
- #define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F
- #define GL_ALPHA8_EXT 0x803C
- #define GL_LUMINANCE8_EXT 0x8040
- #define GL_LUMINANCE8_ALPHA8_EXT 0x8045
- #define GL_RGBA32F_EXT 0x8814
- #define GL_RGB32F_EXT 0x8815
- #define GL_ALPHA32F_EXT 0x8816
- #define GL_LUMINANCE32F_EXT 0x8818
- #define GL_LUMINANCE_ALPHA32F_EXT 0x8819
- /* reuse GL_RGBA16F_EXT */
- /* reuse GL_RGB16F_EXT */
- #define GL_ALPHA16F_EXT 0x881C
- #define GL_LUMINANCE16F_EXT 0x881E
- #define GL_LUMINANCE_ALPHA16F_EXT 0x881F
- #define GL_RGB10_A2_EXT 0x8059
- #define GL_RGB10_EXT 0x8052
- #define GL_BGRA8_EXT 0x93A1
- #define GL_R8_EXT 0x8229
- #define GL_RG8_EXT 0x822B
- #define GL_R32F_EXT 0x822E
- #define GL_RG32F_EXT 0x8230
- #define GL_R16F_EXT 0x822D
- #define GL_RG16F_EXT 0x822F
- #endif
- /* GL_EXT_texture_type_2_10_10_10_REV */
- #ifndef GL_EXT_texture_type_2_10_10_10_REV
- #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368
- #endif
- /* GL_EXT_unpack_subimage */
- #ifndef GL_EXT_unpack_subimage
- #define GL_UNPACK_ROW_LENGTH 0x0CF2
- #define GL_UNPACK_SKIP_ROWS 0x0CF3
- #define GL_UNPACK_SKIP_PIXELS 0x0CF4
- #endif
- /*------------------------------------------------------------------------*
- * DMP extension tokens
- *------------------------------------------------------------------------*/
- /* GL_DMP_shader_binary */
- #ifndef GL_DMP_shader_binary
- #define GL_SHADER_BINARY_DMP 0x9250
- #endif
- /*------------------------------------------------------------------------*
- * FJ extension tokens
- *------------------------------------------------------------------------*/
- /* GL_FJ_shader_binary_GCCSO */
- #ifndef GL_FJ_shader_binary_GCCSO
- #define GCCSO_SHADER_BINARY_FJ 0x9260
- #endif
- /*------------------------------------------------------------------------*
- * IMG extension tokens
- *------------------------------------------------------------------------*/
- /* GL_IMG_program_binary */
- #ifndef GL_IMG_program_binary
- #define GL_SGX_PROGRAM_BINARY_IMG 0x9130
- #endif
- /* GL_IMG_read_format */
- #ifndef GL_IMG_read_format
- #define GL_BGRA_IMG 0x80E1
- #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365
- #endif
- /* GL_IMG_shader_binary */
- #ifndef GL_IMG_shader_binary
- #define GL_SGX_BINARY_IMG 0x8C0A
- #endif
- /* GL_IMG_texture_compression_pvrtc */
- #ifndef GL_IMG_texture_compression_pvrtc
- #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
- #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
- #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
- #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
- #endif
- /* GL_IMG_multisampled_render_to_texture */
- #ifndef GL_IMG_multisampled_render_to_texture
- #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133
- #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134
- #define GL_MAX_SAMPLES_IMG 0x9135
- #define GL_TEXTURE_SAMPLES_IMG 0x9136
- #endif
- /*------------------------------------------------------------------------*
- * NV extension tokens
- *------------------------------------------------------------------------*/
- /* GL_NV_coverage_sample */
- #ifndef GL_NV_coverage_sample
- #define GL_COVERAGE_COMPONENT_NV 0x8ED0
- #define GL_COVERAGE_COMPONENT4_NV 0x8ED1
- #define GL_COVERAGE_ATTACHMENT_NV 0x8ED2
- #define GL_COVERAGE_BUFFERS_NV 0x8ED3
- #define GL_COVERAGE_SAMPLES_NV 0x8ED4
- #define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5
- #define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6
- #define GL_COVERAGE_AUTOMATIC_NV 0x8ED7
- #define GL_COVERAGE_BUFFER_BIT_NV 0x8000
- #endif
- /* GL_NV_depth_nonlinear */
- #ifndef GL_NV_depth_nonlinear
- #define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C
- #endif
- /* GL_NV_draw_buffers */
- #ifndef GL_NV_draw_buffers
- #define GL_MAX_DRAW_BUFFERS_NV 0x8824
- #define GL_DRAW_BUFFER0_NV 0x8825
- #define GL_DRAW_BUFFER1_NV 0x8826
- #define GL_DRAW_BUFFER2_NV 0x8827
- #define GL_DRAW_BUFFER3_NV 0x8828
- #define GL_DRAW_BUFFER4_NV 0x8829
- #define GL_DRAW_BUFFER5_NV 0x882A
- #define GL_DRAW_BUFFER6_NV 0x882B
- #define GL_DRAW_BUFFER7_NV 0x882C
- #define GL_DRAW_BUFFER8_NV 0x882D
- #define GL_DRAW_BUFFER9_NV 0x882E
- #define GL_DRAW_BUFFER10_NV 0x882F
- #define GL_DRAW_BUFFER11_NV 0x8830
- #define GL_DRAW_BUFFER12_NV 0x8831
- #define GL_DRAW_BUFFER13_NV 0x8832
- #define GL_DRAW_BUFFER14_NV 0x8833
- #define GL_DRAW_BUFFER15_NV 0x8834
- #define GL_COLOR_ATTACHMENT0_NV 0x8CE0
- #define GL_COLOR_ATTACHMENT1_NV 0x8CE1
- #define GL_COLOR_ATTACHMENT2_NV 0x8CE2
- #define GL_COLOR_ATTACHMENT3_NV 0x8CE3
- #define GL_COLOR_ATTACHMENT4_NV 0x8CE4
- #define GL_COLOR_ATTACHMENT5_NV 0x8CE5
- #define GL_COLOR_ATTACHMENT6_NV 0x8CE6
- #define GL_COLOR_ATTACHMENT7_NV 0x8CE7
- #define GL_COLOR_ATTACHMENT8_NV 0x8CE8
- #define GL_COLOR_ATTACHMENT9_NV 0x8CE9
- #define GL_COLOR_ATTACHMENT10_NV 0x8CEA
- #define GL_COLOR_ATTACHMENT11_NV 0x8CEB
- #define GL_COLOR_ATTACHMENT12_NV 0x8CEC
- #define GL_COLOR_ATTACHMENT13_NV 0x8CED
- #define GL_COLOR_ATTACHMENT14_NV 0x8CEE
- #define GL_COLOR_ATTACHMENT15_NV 0x8CEF
- #endif
- /* GL_NV_fbo_color_attachments */
- #ifndef GL_NV_fbo_color_attachments
- #define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF
- /* GL_COLOR_ATTACHMENT{0-15}_NV defined in GL_NV_draw_buffers already. */
- #endif
- /* GL_NV_fence */
- #ifndef GL_NV_fence
- #define GL_ALL_COMPLETED_NV 0x84F2
- #define GL_FENCE_STATUS_NV 0x84F3
- #define GL_FENCE_CONDITION_NV 0x84F4
- #endif
- /* GL_NV_read_buffer */
- #ifndef GL_NV_read_buffer
- #define GL_READ_BUFFER_NV 0x0C02
- #endif
- /* GL_NV_read_buffer_front */
- /* No new tokens introduced by this extension. */
- /* GL_NV_read_depth */
- /* No new tokens introduced by this extension. */
- /* GL_NV_read_depth_stencil */
- /* No new tokens introduced by this extension. */
- /* GL_NV_read_stencil */
- /* No new tokens introduced by this extension. */
- /* GL_NV_texture_compression_s3tc_update */
- /* No new tokens introduced by this extension. */
- /* GL_NV_texture_npot_2D_mipmap */
- /* No new tokens introduced by this extension. */
- /*------------------------------------------------------------------------*
- * QCOM extension tokens
- *------------------------------------------------------------------------*/
- /* GL_QCOM_alpha_test */
- #ifndef GL_QCOM_alpha_test
- #define GL_ALPHA_TEST_QCOM 0x0BC0
- #define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1
- #define GL_ALPHA_TEST_REF_QCOM 0x0BC2
- #endif
- /* GL_QCOM_binning_control */
- #ifndef GL_QCOM_binning_control
- #define GL_BINNING_CONTROL_HINT_QCOM 0x8FB0
- #define GL_CPU_OPTIMIZED_QCOM 0x8FB1
- #define GL_GPU_OPTIMIZED_QCOM 0x8FB2
- #define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM 0x8FB3
- #endif
- /* GL_QCOM_driver_control */
- /* No new tokens introduced by this extension. */
- /* GL_QCOM_extended_get */
- #ifndef GL_QCOM_extended_get
- #define GL_TEXTURE_WIDTH_QCOM 0x8BD2
- #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3
- #define GL_TEXTURE_DEPTH_QCOM 0x8BD4
- #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5
- #define GL_TEXTURE_FORMAT_QCOM 0x8BD6
- #define GL_TEXTURE_TYPE_QCOM 0x8BD7
- #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8
- #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9
- #define GL_TEXTURE_TARGET_QCOM 0x8BDA
- #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB
- #define GL_STATE_RESTORE 0x8BDC
- #endif
- /* GL_QCOM_extended_get2 */
- /* No new tokens introduced by this extension. */
- /* GL_QCOM_perfmon_global_mode */
- #ifndef GL_QCOM_perfmon_global_mode
- #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
- #endif
- /* GL_QCOM_writeonly_rendering */
- #ifndef GL_QCOM_writeonly_rendering
- #define GL_WRITEONLY_RENDERING_QCOM 0x8823
- #endif
- /* GL_QCOM_tiled_rendering */
- #ifndef GL_QCOM_tiled_rendering
- #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001
- #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002
- #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004
- #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008
- #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010
- #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020
- #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040
- #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080
- #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100
- #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200
- #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400
- #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800
- #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000
- #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000
- #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000
- #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000
- #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000
- #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000
- #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000
- #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000
- #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000
- #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000
- #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000
- #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000
- #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000
- #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000
- #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000
- #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000
- #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000
- #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000
- #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000
- #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000
- #endif
- /*------------------------------------------------------------------------*
- * VIV extension tokens
- *------------------------------------------------------------------------*/
- /* GL_VIV_shader_binary */
- #ifndef GL_VIV_shader_binary
- #define GL_SHADER_BINARY_VIV 0x8FC4
- #endif
- /*------------------------------------------------------------------------*
- * End of extension tokens, start of corresponding extension functions
- *------------------------------------------------------------------------*/
- /*------------------------------------------------------------------------*
- * OES extension functions
- *------------------------------------------------------------------------*/
- /* GL_OES_compressed_ETC1_RGB8_texture */
- #ifndef GL_OES_compressed_ETC1_RGB8_texture
- #define GL_OES_compressed_ETC1_RGB8_texture 1
- #endif
- /* GL_OES_compressed_paletted_texture */
- #ifndef GL_OES_compressed_paletted_texture
- #define GL_OES_compressed_paletted_texture 1
- #endif
- /* GL_OES_depth24 */
- #ifndef GL_OES_depth24
- #define GL_OES_depth24 1
- #endif
- /* GL_OES_depth32 */
- #ifndef GL_OES_depth32
- #define GL_OES_depth32 1
- #endif
- /* GL_OES_depth_texture */
- #ifndef GL_OES_depth_texture
- #define GL_OES_depth_texture 1
- #endif
- /* GL_OES_EGL_image */
- #ifndef GL_OES_EGL_image
- #define GL_OES_EGL_image 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
- GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
- #endif
- typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
- typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
- #endif
- /* GL_OES_EGL_image_external */
- #ifndef GL_OES_EGL_image_external
- #define GL_OES_EGL_image_external 1
- /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */
- #endif
- /* GL_OES_element_index_uint */
- #ifndef GL_OES_element_index_uint
- #define GL_OES_element_index_uint 1
- #endif
- /* GL_OES_fbo_render_mipmap */
- #ifndef GL_OES_fbo_render_mipmap
- #define GL_OES_fbo_render_mipmap 1
- #endif
- /* GL_OES_fragment_precision_high */
- #ifndef GL_OES_fragment_precision_high
- #define GL_OES_fragment_precision_high 1
- #endif
- /* GL_OES_get_program_binary */
- #ifndef GL_OES_get_program_binary
- #define GL_OES_get_program_binary 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
- GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
- #endif
- typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
- typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
- #endif
- /* GL_OES_mapbuffer */
- #ifndef GL_OES_mapbuffer
- #define GL_OES_mapbuffer 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
- GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
- GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid** params);
- #endif
- typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
- typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
- typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid** params);
- #endif
- /* GL_OES_packed_depth_stencil */
- #ifndef GL_OES_packed_depth_stencil
- #define GL_OES_packed_depth_stencil 1
- #endif
- /* GL_OES_required_internalformat */
- #ifndef GL_OES_required_internalformat
- #define GL_OES_required_internalformat 1
- #endif
- /* GL_OES_rgb8_rgba8 */
- #ifndef GL_OES_rgb8_rgba8
- #define GL_OES_rgb8_rgba8 1
- #endif
- /* GL_OES_standard_derivatives */
- #ifndef GL_OES_standard_derivatives
- #define GL_OES_standard_derivatives 1
- #endif
- /* GL_OES_stencil1 */
- #ifndef GL_OES_stencil1
- #define GL_OES_stencil1 1
- #endif
- /* GL_OES_stencil4 */
- #ifndef GL_OES_stencil4
- #define GL_OES_stencil4 1
- #endif
- #ifndef GL_OES_surfaceless_context
- #define GL_OES_surfaceless_context 1
- #endif
- /* GL_OES_texture_3D */
- #ifndef GL_OES_texture_3D
- #define GL_OES_texture_3D 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
- GL_APICALL void GL_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
- GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
- GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
- GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
- GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
- #endif
- typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
- typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
- typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
- typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
- typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
- typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
- #endif
- /* GL_OES_texture_float */
- #ifndef GL_OES_texture_float
- #define GL_OES_texture_float 1
- #endif
- /* GL_OES_texture_float_linear */
- #ifndef GL_OES_texture_float_linear
- #define GL_OES_texture_float_linear 1
- #endif
- /* GL_OES_texture_half_float */
- #ifndef GL_OES_texture_half_float
- #define GL_OES_texture_half_float 1
- #endif
- /* GL_OES_texture_half_float_linear */
- #ifndef GL_OES_texture_half_float_linear
- #define GL_OES_texture_half_float_linear 1
- #endif
- /* GL_OES_texture_npot */
- #ifndef GL_OES_texture_npot
- #define GL_OES_texture_npot 1
- #endif
- /* GL_OES_vertex_array_object */
- #ifndef GL_OES_vertex_array_object
- #define GL_OES_vertex_array_object 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array);
- GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
- GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
- GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
- #endif
- typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
- typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
- typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
- typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
- #endif
- /* GL_OES_vertex_half_float */
- #ifndef GL_OES_vertex_half_float
- #define GL_OES_vertex_half_float 1
- #endif
- /* GL_OES_vertex_type_10_10_10_2 */
- #ifndef GL_OES_vertex_type_10_10_10_2
- #define GL_OES_vertex_type_10_10_10_2 1
- #endif
- /*------------------------------------------------------------------------*
- * KHR extension functions
- *------------------------------------------------------------------------*/
- #ifndef GL_KHR_debug
- #define GL_KHR_debug 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glDebugMessageControl (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
- GL_APICALL void GL_APIENTRY glDebugMessageInsert (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
- GL_APICALL void GL_APIENTRY glDebugMessageCallback (GLDEBUGPROC callback, const void *userParam);
- GL_APICALL GLuint GL_APIENTRY glGetDebugMessageLog (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
- GL_APICALL void GL_APIENTRY glPushDebugGroup (GLenum source, GLuint id, GLsizei length, const GLchar *message);
- GL_APICALL void GL_APIENTRY glPopDebugGroup (void);
- GL_APICALL void GL_APIENTRY glObjectLabel (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
- GL_APICALL void GL_APIENTRY glGetObjectLabel (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
- GL_APICALL void GL_APIENTRY glObjectPtrLabel (const void *ptr, GLsizei length, const GLchar *label);
- GL_APICALL void GL_APIENTRY glGetObjectPtrLabel (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
- GL_APICALL void GL_APIENTRY glGetPointerv (GLenum pname, void **params);
- #endif
- typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECONTROLPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
- typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGEINSERTPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
- typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECALLBACKPROC) (GLDEBUGPROC callback, const void *userParam);
- typedef GLuint (GL_APIENTRYP PFNGLGETDEBUGMESSAGELOGPROC) (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
- typedef void (GL_APIENTRYP PFNGLPUSHDEBUGGROUPPROC) (GLenum source, GLuint id, GLsizei length, const GLchar *message);
- typedef void (GL_APIENTRYP PFNGLPOPDEBUGGROUPPROC) (void);
- typedef void (GL_APIENTRYP PFNGLOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
- typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
- typedef void (GL_APIENTRYP PFNGLOBJECTPTRLABELPROC) (const void *ptr, GLsizei length, const GLchar *label);
- typedef void (GL_APIENTRYP PFNGLGETOBJECTPTRLABELPROC) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
- typedef void (GL_APIENTRYP PFNGLGETPOINTERVPROC) (GLenum pname, void **params);
- #endif
- #ifndef GL_KHR_texture_compression_astc_ldr
- #define GL_KHR_texture_compression_astc_ldr 1
- #endif
- /*------------------------------------------------------------------------*
- * AMD extension functions
- *------------------------------------------------------------------------*/
- /* GL_AMD_compressed_3DC_texture */
- #ifndef GL_AMD_compressed_3DC_texture
- #define GL_AMD_compressed_3DC_texture 1
- #endif
- /* GL_AMD_compressed_ATC_texture */
- #ifndef GL_AMD_compressed_ATC_texture
- #define GL_AMD_compressed_ATC_texture 1
- #endif
- /* AMD_performance_monitor */
- #ifndef GL_AMD_performance_monitor
- #define GL_AMD_performance_monitor 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
- GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
- GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
- GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
- GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
- GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
- GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
- GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
- GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor);
- GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor);
- GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
- #endif
- typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
- typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
- typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
- typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
- typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
- typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
- typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
- typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
- typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
- typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
- typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
- #endif
- /* GL_AMD_program_binary_Z400 */
- #ifndef GL_AMD_program_binary_Z400
- #define GL_AMD_program_binary_Z400 1
- #endif
- /*------------------------------------------------------------------------*
- * ANGLE extension functions
- *------------------------------------------------------------------------*/
- /* GL_ANGLE_framebuffer_blit */
- #ifndef GL_ANGLE_framebuffer_blit
- #define GL_ANGLE_framebuffer_blit 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glBlitFramebufferANGLE (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
- #endif
- typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERANGLEPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
- #endif
- /* GL_ANGLE_framebuffer_multisample */
- #ifndef GL_ANGLE_framebuffer_multisample
- #define GL_ANGLE_framebuffer_multisample 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleANGLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
- #endif
- typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
- #endif
- #ifndef GL_ANGLE_instanced_arrays
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glDrawArraysInstancedANGLE (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
- GL_APICALL void GL_APIENTRY glDrawElementsInstancedANGLE (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
- GL_APICALL void GL_APIENTRY glVertexAttribDivisorANGLE (GLuint index, GLuint divisor);
- #endif
- typedef void (GL_APIENTRYP PFLGLDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
- typedef void (GL_APIENTRYP PFLGLDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
- typedef void (GL_APIENTRYP PFLGLVERTEXATTRIBDIVISORANGLEPROC) (GLuint index, GLuint divisor);
- #endif
- /* GL_ANGLE_pack_reverse_row_order */
- #ifndef GL_ANGLE_pack_reverse_row_order
- #define GL_ANGLE_pack_reverse_row_order 1
- #endif
- /* GL_ANGLE_texture_compression_dxt3 */
- #ifndef GL_ANGLE_texture_compression_dxt3
- #define GL_ANGLE_texture_compression_dxt3 1
- #endif
- /* GL_ANGLE_texture_compression_dxt5 */
- #ifndef GL_ANGLE_texture_compression_dxt5
- #define GL_ANGLE_texture_compression_dxt5 1
- #endif
- /* GL_ANGLE_texture_usage */
- #ifndef GL_ANGLE_texture_usage
- #define GL_ANGLE_texture_usage 1
- #endif
- #ifndef GL_ANGLE_translated_shader_source
- #define GL_ANGLE_translated_shader_source 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glGetTranslatedShaderSourceANGLE (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
- #endif
- typedef void (GL_APIENTRYP PFLGLGETTRANSLATEDSHADERSOURCEANGLEPROC) (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
- #endif
- /*------------------------------------------------------------------------*
- * APPLE extension functions
- *------------------------------------------------------------------------*/
- /* GL_APPLE_copy_texture_levels */
- #ifndef GL_APPLE_copy_texture_levels
- #define GL_APPLE_copy_texture_levels 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glCopyTextureLevelsAPPLE (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
- #endif
- typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
- #endif
- /* GL_APPLE_framebuffer_multisample */
- #ifndef GL_APPLE_framebuffer_multisample
- #define GL_APPLE_framebuffer_multisample 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
- GL_APICALL void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void);
- #endif /* GL_GLEXT_PROTOTYPES */
- typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
- typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void);
- #endif
- /* GL_APPLE_rgb_422 */
- #ifndef GL_APPLE_rgb_422
- #define GL_APPLE_rgb_422 1
- #endif
- /* GL_APPLE_sync */
- #ifndef GL_APPLE_sync
- #define GL_APPLE_sync 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL GLsync GL_APIENTRY glFenceSyncAPPLE (GLenum condition, GLbitfield flags);
- GL_APICALL GLboolean GL_APIENTRY glIsSyncAPPLE (GLsync sync);
- GL_APICALL void GL_APIENTRY glDeleteSyncAPPLE (GLsync sync);
- GL_APICALL GLenum GL_APIENTRY glClientWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
- GL_APICALL void GL_APIENTRY glWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
- GL_APICALL void GL_APIENTRY glGetInteger64vAPPLE (GLenum pname, GLint64 *params);
- GL_APICALL void GL_APIENTRY glGetSyncivAPPLE (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
- #endif
- typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags);
- typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync);
- typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync);
- typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
- typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
- typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64 *params);
- typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
- #endif
- /* GL_APPLE_texture_format_BGRA8888 */
- #ifndef GL_APPLE_texture_format_BGRA8888
- #define GL_APPLE_texture_format_BGRA8888 1
- #endif
- /* GL_APPLE_texture_max_level */
- #ifndef GL_APPLE_texture_max_level
- #define GL_APPLE_texture_max_level 1
- #endif
- /*------------------------------------------------------------------------*
- * ARM extension functions
- *------------------------------------------------------------------------*/
- /* GL_ARM_mali_program_binary */
- #ifndef GL_ARM_mali_program_binary
- #define GL_ARM_mali_program_binary 1
- #endif
- /* GL_ARM_mali_shader_binary */
- #ifndef GL_ARM_mali_shader_binary
- #define GL_ARM_mali_shader_binary 1
- #endif
- /* GL_ARM_rgba8 */
- #ifndef GL_ARM_rgba8
- #define GL_ARM_rgba8 1
- #endif
- /*------------------------------------------------------------------------*
- * EXT extension functions
- *------------------------------------------------------------------------*/
- /* GL_EXT_blend_minmax */
- #ifndef GL_EXT_blend_minmax
- #define GL_EXT_blend_minmax 1
- #endif
- /* GL_EXT_color_buffer_half_float */
- #ifndef GL_EXT_color_buffer_half_float
- #define GL_EXT_color_buffer_half_float 1
- #endif
- /* GL_EXT_debug_label */
- #ifndef GL_EXT_debug_label
- #define GL_EXT_debug_label 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glLabelObjectEXT (GLenum type, GLuint object, GLsizei length, const GLchar *label);
- GL_APICALL void GL_APIENTRY glGetObjectLabelEXT (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
- #endif
- typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar *label);
- typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
- #endif
- /* GL_EXT_debug_marker */
- #ifndef GL_EXT_debug_marker
- #define GL_EXT_debug_marker 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker);
- GL_APICALL void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker);
- GL_APICALL void GL_APIENTRY glPopGroupMarkerEXT (void);
- #endif
- typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker);
- typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker);
- typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC) (void);
- #endif
- /* GL_EXT_discard_framebuffer */
- #ifndef GL_EXT_discard_framebuffer
- #define GL_EXT_discard_framebuffer 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
- #endif
- typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
- #endif
- /* GL_EXT_map_buffer_range */
- #ifndef GL_EXT_map_buffer_range
- #define GL_EXT_map_buffer_range 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void* GL_APIENTRY glMapBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
- GL_APICALL void GL_APIENTRY glFlushMappedBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length);
- #endif
- typedef void* (GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
- typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
- #endif
- /* GL_EXT_multisampled_render_to_texture */
- #ifndef GL_EXT_multisampled_render_to_texture
- #define GL_EXT_multisampled_render_to_texture 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
- GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
- #endif
- typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
- typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
- #endif
- /* GL_EXT_multiview_draw_buffers */
- #ifndef GL_EXT_multiview_draw_buffers
- #define GL_EXT_multiview_draw_buffers 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glReadBufferIndexedEXT (GLenum src, GLint index);
- GL_APICALL void GL_APIENTRY glDrawBuffersIndexedEXT (GLint n, const GLenum *location, const GLint *indices);
- GL_APICALL void GL_APIENTRY glGetIntegeri_vEXT (GLenum target, GLuint index, GLint *data);
- #endif
- typedef void (GL_APIENTRYP PFNGLREADBUFFERINDEXEDEXTPROC) (GLenum src, GLint index);
- typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSINDEXEDEXTPROC) (GLint n, const GLenum *location, const GLint *indices);
- typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VEXTPROC) (GLenum target, GLuint index, GLint *data);
- #endif
- #ifndef GL_EXT_multi_draw_arrays
- #define GL_EXT_multi_draw_arrays 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
- GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
- #endif /* GL_GLEXT_PROTOTYPES */
- typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
- typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
- #endif
- /* GL_EXT_occlusion_query_boolean */
- #ifndef GL_EXT_occlusion_query_boolean
- #define GL_EXT_occlusion_query_boolean 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glGenQueriesEXT (GLsizei n, GLuint *ids);
- GL_APICALL void GL_APIENTRY glDeleteQueriesEXT (GLsizei n, const GLuint *ids);
- GL_APICALL GLboolean GL_APIENTRY glIsQueryEXT (GLuint id);
- GL_APICALL void GL_APIENTRY glBeginQueryEXT (GLenum target, GLuint id);
- GL_APICALL void GL_APIENTRY glEndQueryEXT (GLenum target);
- GL_APICALL void GL_APIENTRY glGetQueryivEXT (GLenum target, GLenum pname, GLint *params);
- GL_APICALL void GL_APIENTRY glGetQueryObjectuivEXT (GLuint id, GLenum pname, GLuint *params);
- #endif
- typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint *ids);
- typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint *ids);
- typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC) (GLuint id);
- typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id);
- typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC) (GLenum target);
- typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
- typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint *params);
- #endif
- /* GL_EXT_read_format_bgra */
- #ifndef GL_EXT_read_format_bgra
- #define GL_EXT_read_format_bgra 1
- #endif
- /* GL_EXT_robustness */
- #ifndef GL_EXT_robustness
- #define GL_EXT_robustness 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void);
- GL_APICALL void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
- GL_APICALL void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, float *params);
- GL_APICALL void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params);
- #endif
- typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void);
- typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
- typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, float *params);
- typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
- #endif
- /* GL_EXT_separate_shader_objects */
- #ifndef GL_EXT_separate_shader_objects
- #define GL_EXT_separate_shader_objects 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glUseProgramStagesEXT (GLuint pipeline, GLbitfield stages, GLuint program);
- GL_APICALL void GL_APIENTRY glActiveShaderProgramEXT (GLuint pipeline, GLuint program);
- GL_APICALL GLuint GL_APIENTRY glCreateShaderProgramvEXT (GLenum type, GLsizei count, const GLchar **strings);
- GL_APICALL void GL_APIENTRY glBindProgramPipelineEXT (GLuint pipeline);
- GL_APICALL void GL_APIENTRY glDeleteProgramPipelinesEXT (GLsizei n, const GLuint *pipelines);
- GL_APICALL void GL_APIENTRY glGenProgramPipelinesEXT (GLsizei n, GLuint *pipelines);
- GL_APICALL GLboolean GL_APIENTRY glIsProgramPipelineEXT (GLuint pipeline);
- GL_APICALL void GL_APIENTRY glProgramParameteriEXT (GLuint program, GLenum pname, GLint value);
- GL_APICALL void GL_APIENTRY glGetProgramPipelineivEXT (GLuint pipeline, GLenum pname, GLint *params);
- GL_APICALL void GL_APIENTRY glProgramUniform1iEXT (GLuint program, GLint location, GLint x);
- GL_APICALL void GL_APIENTRY glProgramUniform2iEXT (GLuint program, GLint location, GLint x, GLint y);
- GL_APICALL void GL_APIENTRY glProgramUniform3iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z);
- GL_APICALL void GL_APIENTRY glProgramUniform4iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
- GL_APICALL void GL_APIENTRY glProgramUniform1fEXT (GLuint program, GLint location, GLfloat x);
- GL_APICALL void GL_APIENTRY glProgramUniform2fEXT (GLuint program, GLint location, GLfloat x, GLfloat y);
- GL_APICALL void GL_APIENTRY glProgramUniform3fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
- GL_APICALL void GL_APIENTRY glProgramUniform4fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
- GL_APICALL void GL_APIENTRY glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
- GL_APICALL void GL_APIENTRY glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
- GL_APICALL void GL_APIENTRY glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
- GL_APICALL void GL_APIENTRY glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
- GL_APICALL void GL_APIENTRY glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
- GL_APICALL void GL_APIENTRY glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
- GL_APICALL void GL_APIENTRY glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
- GL_APICALL void GL_APIENTRY glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
- GL_APICALL void GL_APIENTRY glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- GL_APICALL void GL_APIENTRY glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- GL_APICALL void GL_APIENTRY glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- GL_APICALL void GL_APIENTRY glValidateProgramPipelineEXT (GLuint pipeline);
- GL_APICALL void GL_APIENTRY glGetProgramPipelineInfoLogEXT (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
- #endif
- typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC) (GLuint pipeline, GLbitfield stages, GLuint program);
- typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC) (GLuint pipeline, GLuint program);
- typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC) (GLenum type, GLsizei count, const GLchar **strings);
- typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
- typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC) (GLsizei n, const GLuint *pipelines);
- typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC) (GLsizei n, GLuint *pipelines);
- typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
- typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value);
- typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC) (GLuint pipeline, GLenum pname, GLint *params);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint x);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint x, GLint y);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat x);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
- typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
- typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGEXTPROC) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
- #endif
- /* GL_EXT_shader_framebuffer_fetch */
- #ifndef GL_EXT_shader_framebuffer_fetch
- #define GL_EXT_shader_framebuffer_fetch 1
- #endif
- /* GL_EXT_shader_texture_lod */
- #ifndef GL_EXT_shader_texture_lod
- #define GL_EXT_shader_texture_lod 1
- #endif
- /* GL_EXT_shadow_samplers */
- #ifndef GL_EXT_shadow_samplers
- #define GL_EXT_shadow_samplers 1
- #endif
- /* GL_EXT_sRGB */
- #ifndef GL_EXT_sRGB
- #define GL_EXT_sRGB 1
- #endif
- /* GL_EXT_texture_compression_dxt1 */
- #ifndef GL_EXT_texture_compression_dxt1
- #define GL_EXT_texture_compression_dxt1 1
- #endif
- /* GL_EXT_texture_filter_anisotropic */
- #ifndef GL_EXT_texture_filter_anisotropic
- #define GL_EXT_texture_filter_anisotropic 1
- #endif
- /* GL_EXT_texture_format_BGRA8888 */
- #ifndef GL_EXT_texture_format_BGRA8888
- #define GL_EXT_texture_format_BGRA8888 1
- #endif
- /* GL_EXT_texture_rg */
- #ifndef GL_EXT_texture_rg
- #define GL_EXT_texture_rg 1
- #endif
- /* GL_EXT_texture_storage */
- #ifndef GL_EXT_texture_storage
- #define GL_EXT_texture_storage 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
- GL_APICALL void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
- GL_APICALL void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
- GL_APICALL void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
- GL_APICALL void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
- GL_APICALL void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
- #endif
- typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
- typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
- typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
- typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
- typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
- typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
- #endif
- /* GL_EXT_texture_type_2_10_10_10_REV */
- #ifndef GL_EXT_texture_type_2_10_10_10_REV
- #define GL_EXT_texture_type_2_10_10_10_REV 1
- #endif
- /* GL_EXT_unpack_subimage */
- #ifndef GL_EXT_unpack_subimage
- #define GL_EXT_unpack_subimage 1
- #endif
- /*------------------------------------------------------------------------*
- * DMP extension functions
- *------------------------------------------------------------------------*/
- /* GL_DMP_shader_binary */
- #ifndef GL_DMP_shader_binary
- #define GL_DMP_shader_binary 1
- #endif
- /*------------------------------------------------------------------------*
- * FJ extension functions
- *------------------------------------------------------------------------*/
- /* GL_FJ_shader_binary_GCCSO */
- #ifndef GL_FJ_shader_binary_GCCSO
- #define GL_FJ_shader_binary_GCCSO 1
- #endif
- /*------------------------------------------------------------------------*
- * IMG extension functions
- *------------------------------------------------------------------------*/
- /* GL_IMG_program_binary */
- #ifndef GL_IMG_program_binary
- #define GL_IMG_program_binary 1
- #endif
- /* GL_IMG_read_format */
- #ifndef GL_IMG_read_format
- #define GL_IMG_read_format 1
- #endif
- /* GL_IMG_shader_binary */
- #ifndef GL_IMG_shader_binary
- #define GL_IMG_shader_binary 1
- #endif
- /* GL_IMG_texture_compression_pvrtc */
- #ifndef GL_IMG_texture_compression_pvrtc
- #define GL_IMG_texture_compression_pvrtc 1
- #endif
- /* GL_IMG_multisampled_render_to_texture */
- #ifndef GL_IMG_multisampled_render_to_texture
- #define GL_IMG_multisampled_render_to_texture 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
- GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
- #endif
- typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
- typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
- #endif
- /*------------------------------------------------------------------------*
- * NV extension functions
- *------------------------------------------------------------------------*/
- /* GL_NV_coverage_sample */
- #ifndef GL_NV_coverage_sample
- #define GL_NV_coverage_sample 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask);
- GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation);
- #endif
- typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask);
- typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum operation);
- #endif
- /* GL_NV_depth_nonlinear */
- #ifndef GL_NV_depth_nonlinear
- #define GL_NV_depth_nonlinear 1
- #endif
- /* GL_NV_draw_buffers */
- #ifndef GL_NV_draw_buffers
- #define GL_NV_draw_buffers 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glDrawBuffersNV (GLsizei n, const GLenum *bufs);
- #endif
- typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum *bufs);
- #endif
- /* GL_NV_fbo_color_attachments */
- #ifndef GL_NV_fbo_color_attachments
- #define GL_NV_fbo_color_attachments 1
- #endif
- /* GL_NV_fence */
- #ifndef GL_NV_fence
- #define GL_NV_fence 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *);
- GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *);
- GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint);
- GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint);
- GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *);
- GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint);
- GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint, GLenum);
- #endif
- typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
- typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
- typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
- typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
- typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
- typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
- typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
- #endif
- /* GL_NV_read_buffer */
- #ifndef GL_NV_read_buffer
- #define GL_NV_read_buffer 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glReadBufferNV (GLenum mode);
- #endif
- typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC) (GLenum mode);
- #endif
- /* GL_NV_read_buffer_front */
- #ifndef GL_NV_read_buffer_front
- #define GL_NV_read_buffer_front 1
- #endif
- /* GL_NV_read_depth */
- #ifndef GL_NV_read_depth
- #define GL_NV_read_depth 1
- #endif
- /* GL_NV_read_depth_stencil */
- #ifndef GL_NV_read_depth_stencil
- #define GL_NV_read_depth_stencil 1
- #endif
- /* GL_NV_read_stencil */
- #ifndef GL_NV_read_stencil
- #define GL_NV_read_stencil 1
- #endif
- /* GL_NV_texture_compression_s3tc_update */
- #ifndef GL_NV_texture_compression_s3tc_update
- #define GL_NV_texture_compression_s3tc_update 1
- #endif
- /* GL_NV_texture_npot_2D_mipmap */
- #ifndef GL_NV_texture_npot_2D_mipmap
- #define GL_NV_texture_npot_2D_mipmap 1
- #endif
- /*------------------------------------------------------------------------*
- * QCOM extension functions
- *------------------------------------------------------------------------*/
- /* GL_QCOM_alpha_test */
- #ifndef GL_QCOM_alpha_test
- #define GL_QCOM_alpha_test 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glAlphaFuncQCOM (GLenum func, GLclampf ref);
- #endif
- typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf ref);
- #endif
- /* GL_QCOM_binning_control */
- #ifndef GL_QCOM_binning_control
- #define GL_QCOM_binning_control 1
- #endif
- /* GL_QCOM_driver_control */
- #ifndef GL_QCOM_driver_control
- #define GL_QCOM_driver_control 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
- GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
- GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
- GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
- #endif
- typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
- typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
- typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
- typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
- #endif
- /* GL_QCOM_extended_get */
- #ifndef GL_QCOM_extended_get
- #define GL_QCOM_extended_get 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
- GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
- GL_APICALL void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
- GL_APICALL void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
- GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
- GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
- GL_APICALL void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
- GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
- #endif
- typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
- typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
- typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
- typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
- typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
- typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
- typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
- typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
- #endif
- /* GL_QCOM_extended_get2 */
- #ifndef GL_QCOM_extended_get2
- #define GL_QCOM_extended_get2 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
- GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
- GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
- GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
- #endif
- typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
- typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
- typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
- typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
- #endif
- /* GL_QCOM_perfmon_global_mode */
- #ifndef GL_QCOM_perfmon_global_mode
- #define GL_QCOM_perfmon_global_mode 1
- #endif
- /* GL_QCOM_writeonly_rendering */
- #ifndef GL_QCOM_writeonly_rendering
- #define GL_QCOM_writeonly_rendering 1
- #endif
- /* GL_QCOM_tiled_rendering */
- #ifndef GL_QCOM_tiled_rendering
- #define GL_QCOM_tiled_rendering 1
- #ifdef GL_GLEXT_PROTOTYPES
- GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
- GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
- #endif
- typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
- typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
- #endif
- /*------------------------------------------------------------------------*
- * VIV extension tokens
- *------------------------------------------------------------------------*/
- /* GL_VIV_shader_binary */
- #ifndef GL_VIV_shader_binary
- #define GL_VIV_shader_binary 1
- #endif
- #ifdef __cplusplus
- }
- #endif
- #endif /* __gl2ext_h_ */
- #endif /* _MSC_VER */
- #ifndef APIENTRY
- #define APIENTRY GL_APIENTRY
- #endif
|