1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807 |
- //
- // The graphics engine GLScene
- //
- unit GLS.OpenGLAdapter;
- (* OpenGL adapter *)
- interface
- {$I Stage.Defines.inc}
- uses
- Winapi.OpenGL,
- Winapi.OpenGLext,
- Winapi.Windows,
- System.SysUtils,
- Stage.OpenGLTokens,
- Stage.Strings,
- Stage.Logger,
- Stage.VectorGeometry,
- Stage.VectorTypes;
- const
- {$IFDEF CROSSVCL}
- {$IF Defined(LINUX)}
- opengl32 = 'libGL.so';
- glu32 = 'libGLU.so.1';
- {$ELSEIF Defined(MACOS)}
- opengl32 = '/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib';
- glu32 = '/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib';
- {$ELSE}
- Unsupported platform
- {$ENDIF}
- {$ELSE}
- opengl32 = 'OpenGL32.dll';
- glu32 = 'GLU32.dll';
- {$ENDIF}
- type
- EOpenGLError = class(Exception);
- TGLExtensionsAndEntryPoints = class
- private
- FBuffer: string;
- FInitialized: boolean;
- FDebug: boolean;
- FDebugIds: Cardinal;
- function CheckExtension(const Extension: string): boolean;
- {$IFDEF SUPPORT_WGL}
- procedure ReadWGLExtensions;
- procedure ReadWGLImplementationProperties;
- {$ENDIF}
- function GetAddress(const ProcName: string): Pointer;
- function GetAddressNoSuffixes(const ProcName: string): Pointer;
- function GetAddressAlt(const ProcName1, ProcName2: string): Pointer;
- function GetCapAddress: Pointer;
- public
- VERSION_1_0, VERSION_1_1, VERSION_1_2, VERSION_1_3, VERSION_1_4,
- VERSION_1_5, VERSION_2_0, VERSION_2_1, VERSION_3_0, VERSION_3_1,
- VERSION_3_2, VERSION_3_3, VERSION_4_0, VERSION_4_1, VERSION_4_2,
- ARB_blend_func_extended, ARB_color_buffer_float, ARB_compatibility,
- ARB_copy_buffer, ARB_depth_buffer_float, ARB_depth_clamp,
- ARB_depth_texture, ARB_draw_buffers, ARB_draw_buffers_blend,
- ARB_draw_elements_base_vertex, ARB_draw_indirect, ARB_draw_instanced,
- ARB_explicit_attrib_location, ARB_fragment_coord_conventions,
- ARB_fragment_program, ARB_fragment_program_shadow, ARB_fragment_shader,
- ARB_framebuffer_object, ARB_framebuffer_sRGB, ARB_geometry_shader4,
- ARB_gpu_shader_fp64, ARB_gpu_shader5, ARB_half_float_pixel,
- ARB_half_float_vertex, ARB_imaging, ARB_instanced_arrays,
- ARB_map_buffer_range, ARB_matrix_palette, ARB_multisample,
- ARB_multitexture, ARB_occlusion_query, ARB_occlusion_query2,
- ARB_pixel_buffer_object, ARB_point_parameters, ARB_point_sprite,
- ARB_provoking_vertex, ARB_sample_shading, ARB_sampler_objects,
- ARB_seamless_cube_map, ARB_shader_bit_encoding, ARB_shader_subroutine,
- ARB_shader_texture_lod, ARB_shading_language_100, ARB_shadow,
- ARB_shadow_ambient, ARB_shader_objects, ARB_sync, ARB_tessellation_shader,
- ARB_texture_border_clamp, ARB_texture_buffer_object,
- ARB_texture_buffer_object_rgb32, ARB_texture_compression,
- ARB_texture_compression_rgtc, ARB_texture_cube_map,
- ARB_texture_cube_map_array, ARB_texture_env_add, ARB_texture_env_combine,
- ARB_texture_env_crossbar, ARB_texture_env_dot3, ARB_texture_float,
- ARB_texture_gather, ARB_texture_mirrored_repeat, ARB_texture_multisample,
- ARB_texture_non_power_of_two, ARB_texture_query_lod,
- ARB_texture_rectangle, ARB_texture_rg, ARB_texture_rgb10_a2ui,
- ARB_texture_swizzle, ARB_timer_query, ARB_transform_feedback2,
- ARB_transform_feedback3, ARB_transpose_matrix, ARB_uniform_buffer_object,
- ARB_vertex_array_bgra, ARB_vertex_array_object, ARB_vertex_blend,
- ARB_vertex_buffer_object, ARB_vertex_program, ARB_vertex_shader,
- ARB_vertex_type_2_10_10_10_rev, ARB_window_pos,
- ARB_texture_compression_bptc, ARB_get_program_binary,
- ARB_separate_shader_objects, ARB_shader_stencil_export, KHR_debug,
- ARB_clear_buffer_object, ARB_compute_shader, ARB_copy_image,
- ARB_debug_group, ARB_debug_label, ARB_debug_output2,
- ARB_ES3_compatibility, ARB_explicit_uniform_location,
- ARB_fragment_layer_viewport, ARB_framebuffer_no_attachments,
- ARB_internalformat_query2, ARB_invalidate_subdata,
- ARB_multi_draw_indirect, ARB_program_interface_query,
- ARB_shader_image_size, ARB_shader_storage_buffer_object,
- ARB_stencil_texturing, ARB_texture_buffer_range, ARB_texture_query_levels,
- ARB_texture_storage_multisample, ARB_texture_view,
- ARB_vertex_attrib_binding, ARB_robustness_isolation, ARB_cl_event,
- _3DFX_multisample, _3DFX_tbuffer, _3DFX_texture_compression_FXT1,
- ATI_draw_buffers, ATI_texture_compression_3dc, ATI_texture_float,
- ATI_texture_mirror_once, S3_s3tc, EXT_abgr, EXT_bgra,
- EXT_bindable_uniform, EXT_blend_color, EXT_blend_equation_separate,
- EXT_blend_func_separate, EXT_blend_logic_op, EXT_blend_minmax,
- EXT_blend_subtract, EXT_Cg_shader, EXT_clip_volume_hint,
- EXT_compiled_vertex_array, EXT_copy_texture, EXT_depth_bounds_test,
- EXT_draw_buffers2, EXT_draw_instanced, EXT_draw_range_elements,
- EXT_fog_coord, EXT_framebuffer_blit, EXT_framebuffer_multisample,
- EXT_framebuffer_object, EXT_framebuffer_sRGB, EXT_geometry_shader4,
- EXT_gpu_program_parameters, EXT_gpu_shader4, EXT_multi_draw_arrays,
- EXT_multisample, EXT_packed_depth_stencil, EXT_packed_float,
- EXT_packed_pixels, EXT_paletted_texture, EXT_pixel_buffer_object,
- EXT_polygon_offset, EXT_rescale_normal, EXT_secondary_color,
- EXT_separate_specular_color, EXT_shadow_funcs, EXT_shared_texture_palette,
- EXT_stencil_clear_tag, EXT_stencil_two_side, EXT_stencil_wrap,
- EXT_texture3D, EXT_texture_array, EXT_texture_buffer_object,
- EXT_texture_compression_latc, EXT_texture_compression_rgtc,
- EXT_texture_compression_s3tc, EXT_texture_cube_map,
- EXT_texture_edge_clamp, EXT_texture_env_add, EXT_texture_env_combine,
- EXT_texture_env_dot3, EXT_texture_filter_anisotropic, EXT_texture_integer,
- EXT_texture_lod, EXT_texture_lod_bias, EXT_texture_mirror_clamp,
- EXT_texture_object, EXT_texture_rectangle, EXT_texture_sRGB,
- EXT_texture_shared_exponent, EXT_timer_query, EXT_transform_feedback,
- EXT_vertex_array, EXT_texture_sRGB_decode, EXT_direct_state_access,
- EXT_texture_swizzle, HP_occlusion_test, IBM_rasterpos_clip,
- KTX_buffer_region, MESA_resize_buffers, NV_blend_square,
- NV_conditional_render, NV_copy_image, NV_depth_buffer_float, NV_fence,
- NV_float_buffer, NV_fog_distance, NV_geometry_program4,
- NV_light_max_exponent, NV_multisample_filter_hint, NV_occlusion_query,
- NV_point_sprite, NV_primitive_restart, NV_register_combiners,
- NV_shader_buffer_load, NV_texgen_reflection, NV_texture_compression_vtc,
- NV_texture_env_combine4, NV_texture_rectangle, NV_texture_shader,
- NV_texture_shader2, NV_texture_shader3, NV_transform_feedback,
- NV_vertex_array_range, NV_vertex_array_range2,
- NV_vertex_buffer_unified_memory, NV_vertex_program, SGI_color_matrix,
- SGIS_generate_mipmap, SGIS_multisample, SGIS_texture_border_clamp,
- SGIS_texture_color_mask, SGIS_texture_edge_clamp, SGIS_texture_lod,
- SGIX_depth_texture, SGIX_shadow, SGIX_shadow_ambient,
- AMD_vertex_shader_tessellator, WIN_swap_hint, ATI_meminfo,
- NVX_gpu_memory_info, NV_vdpau_interop, NV_path_rendering,
- GREMEDY_frame_terminator, GREMEDY_string_marker, AMDX_debug_output,
- ARB_debug_output: boolean;
- // OpenGL 1.1 core functions and procedures
- BindTexture: procedure(target: Cardinal; texture: Cardinal);stdcall;
- BlendFunc: procedure(sfactor: Cardinal; dfactor: Cardinal);stdcall;
- Clear: procedure(mask: TGLbitfield);stdcall;
- ClearColor: procedure(red, green, blue, alpha: Single);stdcall;
- ClearDepth: procedure(depth: TGLclampd);stdcall;
- ClearStencil: procedure(s: TGLint);stdcall;
- ColorMask: procedure(red, green, blue, alpha: TGLboolean);stdcall;
- CopyTexImage1D: procedure(target: Cardinal; level: TGLint;
- internalFormat: Cardinal; X, y: TGLint; Width: TGLsizei; border: TGLint);stdcall;
- CopyTexImage2D: procedure(target: Cardinal; level: TGLint;
- internalFormat: Cardinal; X, y: TGLint; Width, Height: TGLsizei;
- border: TGLint);stdcall;
- CopyTexSubImage1D: procedure(target: Cardinal; level, xoffset, X, y: TGLint;
- Width: TGLsizei);stdcall;
- CopyTexSubImage2D: procedure(target: Cardinal;
- level, xoffset, yoffset, X, y: TGLint; Width, Height: TGLsizei);stdcall;
- CullFace: procedure(mode: Cardinal);stdcall;
- DeleteTextures: procedure(n: TGLsizei; textures: PGLuint);stdcall;
- DepthFunc: procedure(func: Cardinal);stdcall;
- DepthMask: procedure(flag: TGLboolean);stdcall;
- DepthRange: procedure(zNear, zFar: TGLclampd);stdcall;
- Disable: procedure(cap: Cardinal);stdcall;
- DrawArrays: procedure(mode: Cardinal; First: TGLint; Count: TGLsizei);stdcall;
- DrawBuffer: procedure(mode: Cardinal);stdcall;
- DrawElements: procedure(mode: Cardinal; Count: TGLsizei; atype: Cardinal;
- indices: Pointer);stdcall;
- Enable: procedure(cap: Cardinal);stdcall;
- Finish: procedure();stdcall;
- Flush: procedure();stdcall;
- FrontFace: procedure(mode: Cardinal);stdcall;
- GenTextures: procedure(n: TGLsizei; textures: PGLuint);stdcall;
- GetBooleanv: procedure(pname: Cardinal; params: PGLboolean);stdcall;
- GetDoublev: procedure(pname: Cardinal; params: PGLdouble);stdcall;
- GetError: function: Cardinal;stdcall;
- GetFloatv: procedure(pname: Cardinal; params: PGLfloat);stdcall;
- GetIntegerv: procedure(pname: Cardinal; params: PGLint);stdcall;
- GetPointerv: procedure(pname: Cardinal; var params);stdcall;
- GetString: function(Name: Cardinal): PAnsiChar;stdcall;
- GetTexImage: procedure(target: Cardinal; level: TGLint;
- format, atype: Cardinal; pixels: Pointer);stdcall;
- GetTexLevelParameterfv: procedure(target: Cardinal; level: TGLint;
- pname: Cardinal; params: PGLfloat);stdcall;
- GetTexLevelParameteriv: procedure(target: Cardinal; level: TGLint;
- pname: Cardinal; params: PGLint);stdcall;
- GetTexParameterfv: procedure(target, pname: Cardinal; params: PGLfloat);stdcall;
- GetTexParameteriv: procedure(target, pname: Cardinal; params: PGLint);stdcall;
- Hint: procedure(target, mode: Cardinal);stdcall;
- IsEnabled: function(cap: Cardinal): TGLboolean;stdcall;
- IsTexture: function(texture: Cardinal): TGLboolean;stdcall;
- LineWidth: procedure(Width: TGLfloat);stdcall;
- LogicOp: procedure(opcode: Cardinal);stdcall;
- PixelStoref: procedure(pname: Cardinal; param: TGLfloat);stdcall;
- PixelStorei: procedure(pname: Cardinal; param: TGLint);stdcall;
- PointSize: procedure(size: TGLfloat);stdcall;
- PolygonMode: procedure(face, mode: Cardinal);stdcall;
- PolygonOffset: procedure(factor, units: TGLfloat);stdcall;
- ReadBuffer: procedure(mode: Cardinal);stdcall;
- ReadPixels: procedure(X, y: TGLint; Width, Height: TGLsizei;
- format, atype: Cardinal; pixels: Pointer);stdcall;
- Scissor: procedure(X, y: TGLint; Width, Height: TGLsizei);stdcall;
- StencilFunc: procedure(func: Cardinal; ref: TGLint; mask: Cardinal);stdcall;
- StencilMask: procedure(mask: Cardinal);stdcall;
- StencilOp: procedure(fail, zfail, zpass: Cardinal);stdcall;
- TexImage1D: procedure(target: Cardinal; level, internalFormat: TGLint;
- Width: TGLsizei; border: TGLint; format, atype: Cardinal;
- pixels: Pointer);stdcall;
- TexImage2D: procedure(target: Cardinal; level, internalFormat: TGLint;
- Width, Height: TGLsizei; border: TGLint; format, atype: Cardinal;
- pixels: Pointer);stdcall;
- TexParameterf: procedure(target, pname: Cardinal; param: TGLfloat);stdcall;
- TexParameterfv: procedure(target, pname: Cardinal; params: PGLfloat);stdcall;
- TexParameteri: procedure(target, pname: Cardinal; param: TGLint);stdcall;
- TexParameteriv: procedure(target, pname: Cardinal; params: PGLint);stdcall;
- TexSubImage1D: procedure(target: Cardinal; level, xoffset: TGLint;
- Width: TGLsizei; format, atype: Cardinal; pixels: Pointer);stdcall;
- TexSubImage2D: procedure(target: Cardinal; level, xoffset, yoffset: TGLint;
- Width, Height: TGLsizei; format, atype: Cardinal; pixels: Pointer);stdcall;
- Viewport: procedure(X, y: TGLint; Width, Height: TGLsizei);stdcall;
- // ------------------------------ OpenGL 1.1 deprecated
- Accum: procedure(op: Cardinal; Value: TGLfloat); stdcall;
- AlphaFunc: procedure(func: Cardinal; ref: Single); stdcall;
- AreTexturesResident: function(n: TGLsizei; textures: PGLuint;
- residences: PGLboolean): TGLboolean;stdcall;
- ArrayElement: procedure(i: TGLint); stdcall;
- Begin_: procedure(mode: Cardinal); stdcall;
- Bitmap: procedure(Width: TGLsizei; Height: TGLsizei; xorig, yorig: TGLfloat;
- xmove: TGLfloat; ymove: TGLfloat; Bitmap: Pointer); stdcall;
- CallList: procedure(list: Cardinal); stdcall;
- CallLists: procedure(n: TGLsizei; atype: Cardinal; lists: Pointer);stdcall;
- ClearAccum: procedure(red, green, blue, alpha: TGLfloat); stdcall;
- ClearIndex: procedure(c: TGLfloat); stdcall;
- ClipPlane: procedure(plane: Cardinal; equation: PGLdouble);stdcall;
- Color3b: procedure(red, green, blue: TGLbyte); stdcall;
- Color3bv: procedure(v: PGLbyte); stdcall;
- Color3d: procedure(red, green, blue: TGLdouble); stdcall;
- Color3dv: procedure(v: PGLdouble); stdcall;
- Color3f: procedure(red, green, blue: TGLfloat); stdcall;
- Color3fv: procedure(v: PGLfloat); stdcall;
- Color3i: procedure(red, green, blue: TGLint); stdcall;
- Color3iv: procedure(v: PGLint); stdcall;
- Color3s: procedure(red, green, blue: TGLshort); stdcall;
- Color3sv: procedure(v: PGLshort); stdcall;
- Color3ub: procedure(red, green, blue: TGLubyte); stdcall;
- Color3ubv: procedure(v: PGLubyte); stdcall;
- Color3ui: procedure(red, green, blue: Cardinal); stdcall;
- Color3uiv: procedure(v: PGLuint); stdcall;
- Color3us: procedure(red, green, blue: TGLushort); stdcall;
- Color3usv: procedure(v: PGLushort); stdcall;
- Color4b: procedure(red, green, blue, alpha: TGLbyte); stdcall;
- Color4bv: procedure(v: PGLbyte); stdcall;
- Color4d: procedure(red, green, blue, alpha: TGLdouble); stdcall;
- Color4dv: procedure(v: PGLdouble); stdcall;
- Color4f: procedure(red, green, blue, alpha: TGLfloat); stdcall;
- Color4fv: procedure(v: PGLfloat); stdcall;
- Color4i: procedure(red, green, blue, alpha: TGLint); stdcall;
- Color4iv: procedure(v: PGLint); stdcall;
- Color4s: procedure(red, green, blue, alpha: TGLshort); stdcall;
- Color4sv: procedure(v: TGLshort); stdcall;
- Color4ub: procedure(red, green, blue, alpha: TGLubyte); stdcall;
- Color4ubv: procedure(v: PGLubyte); stdcall;
- Color4ui: procedure(red, green, blue, alpha: Cardinal); stdcall;
- Color4uiv: procedure(v: PGLuint); stdcall;
- Color4us: procedure(red, green, blue, alpha: TGLushort); stdcall;
- Color4usv: procedure(v: PGLushort); stdcall;
- ColorMaterial: procedure(face: Cardinal; mode: Cardinal); stdcall;
- ColorPointer: procedure(size: TGLint; atype: Cardinal; stride: TGLsizei;
- Data: Pointer);stdcall;
- CopyPixels: procedure(X, y: TGLint; Width, Height: TGLsizei;
- atype: Cardinal);stdcall;
- DeleteLists: procedure(list: Cardinal; range: TGLsizei); stdcall;
- DisableClientState: procedure(aarray: Cardinal); stdcall;
- DrawPixels: procedure(Width, Height: TGLsizei; format, atype: Cardinal;
- pixels: Pointer);stdcall;
- EdgeFlag: procedure(flag: TGLboolean); stdcall;
- EdgeFlagPointer: procedure(stride: TGLsizei; Data: Pointer); stdcall;
- EdgeFlagv: procedure(flag: PGLboolean); stdcall;
- EnableClientState: procedure(aarray: Cardinal); stdcall;
- End_: procedure(); stdcall;
- EndList: procedure(); stdcall;
- EvalCoord1d: procedure(u: TGLdouble); stdcall;
- EvalCoord1dv: procedure(u: PGLdouble); stdcall;
- EvalCoord1f: procedure(u: TGLfloat); stdcall;
- EvalCoord1fv: procedure(u: PGLfloat); stdcall;
- EvalCoord2d: procedure(u: TGLdouble; v: TGLdouble);stdcall;
- EvalCoord2dv: procedure(u: PGLdouble);stdcall;
- EvalCoord2f: procedure(u, v: TGLfloat);stdcall;
- EvalCoord2fv: procedure(u: PGLfloat);stdcall;
- EvalMesh1: procedure(mode: Cardinal; i1, i2: TGLint);stdcall;
- EvalMesh2: procedure(mode: Cardinal; i1, i2, j1, j2: TGLint);stdcall;
- EvalPoint1: procedure(i: TGLint);stdcall;
- EvalPoint2: procedure(i, j: TGLint);stdcall;
- FeedbackBuffer: procedure(size: TGLsizei; atype: Cardinal;
- buffer: PGLfloat);stdcall;
- Fogf: procedure(pname: Cardinal; param: TGLfloat);stdcall;
- Fogfv: procedure(pname: Cardinal; params: PGLfloat);stdcall;
- Fogi: procedure(pname: Cardinal; param: TGLint);stdcall;
- Fogiv: procedure(pname: Cardinal; params: PGLint);stdcall;
- Frustum: procedure(left, right, bottom, top, zNear, zFar: TGLdouble);stdcall;
- GenLists: function(range: TGLsizei): Cardinal;stdcall;
- GetClipPlane: procedure(plane: Cardinal; equation: PGLdouble);stdcall;
- GetLightfv: procedure(light, pname: Cardinal; params: PGLfloat);stdcall;
- GetLightiv: procedure(light, pname: Cardinal; params: PGLint);stdcall;
- GetMapdv: procedure(target, query: Cardinal; v: PGLdouble);stdcall;
- GetMapfv: procedure(target, query: Cardinal; v: PGLfloat);stdcall;
- GetMapiv: procedure(target, query: Cardinal; v: PGLint);stdcall;
- GetMaterialfv: procedure(face, pname: Cardinal; params: PGLfloat);stdcall;
- GetMaterialiv: procedure(face, pname: Cardinal; params: PGLint);stdcall;
- GetPixelMapfv: procedure(map: Cardinal; values: PGLfloat);stdcall;
- GetPixelMapuiv: procedure(map: Cardinal; values: PGLuint);stdcall;
- GetPixelMapusv: procedure(map: Cardinal; values: PGLushort);stdcall;
- GetPolygonStipple: procedure(mask: PGLubyte);stdcall;
- GetTexEnvfv: procedure(target, pname: Cardinal; params: PGLfloat);stdcall;
- GetTexEnviv: procedure(target, pname: Cardinal; params: PGLint);stdcall;
- GetTexGendv: procedure(coord, pname: Cardinal; params: PGLdouble);stdcall;
- GetTexGenfv: procedure(coord, pname: Cardinal; params: PGLfloat);stdcall;
- GetTexGeniv: procedure(coord, pname: Cardinal; params: PGLint);stdcall;
- IndexMask: procedure(mask: Cardinal);stdcall;
- IndexPointer: procedure(atype: Cardinal; stride: TGLsizei; Data: Pointer);stdcall;
- Indexd: procedure(c: TGLdouble);stdcall;
- Indexdv: procedure(c: PGLdouble);stdcall;
- Indexf: procedure(c: TGLfloat);stdcall;
- Indexfv: procedure(c: PGLfloat);stdcall;
- Indexi: procedure(c: TGLint);stdcall;
- Indexiv: procedure(c: PGLint);stdcall;
- Indexs: procedure(c: TGLshort);stdcall;
- Indexsv: procedure(c: PGLshort);stdcall;
- Indexub: procedure(c: TGLubyte);stdcall;
- Indexubv: procedure(c: PGLubyte);stdcall;
- InitNames: procedure();stdcall;
- InterleavedArrays: procedure(format: Cardinal; stride: TGLsizei;
- Data: Pointer);stdcall;
- IsList: function(list: Cardinal): TGLboolean;stdcall;
- LightModelf: procedure(pname: Cardinal; param: TGLfloat);stdcall;
- LightModelfv: procedure(pname: Cardinal; params: PGLfloat);stdcall;
- LightModeli: procedure(pname: Cardinal; param: TGLint);stdcall;
- LightModeliv: procedure(pname: Cardinal; params: PGLint);stdcall;
- Lightf: procedure(light, pname: Cardinal; param: TGLfloat);stdcall;
- Lightfv: procedure(light, pname: Cardinal; params: PGLfloat);stdcall;
- Lighti: procedure(light, pname: Cardinal; param: TGLint);stdcall;
- Lightiv: procedure(light, pname: Cardinal; params: PGLint);stdcall;
- LineStipple: procedure(factor: TGLint; pattern: TGLushort);stdcall;
- ListBase: procedure(base: Cardinal);stdcall;
- LoadIdentity: procedure();stdcall;
- LoadMatrixd: procedure(m: PGLdouble);stdcall;
- LoadMatrixf: procedure(m: PGLfloat);stdcall;
- LoadName: procedure(Name: Cardinal);stdcall;
- Map1d: procedure(target: Cardinal; u1, u2: TGLdouble; stride, order: TGLint;
- points: PGLdouble);stdcall;
- Map1f: procedure(target: Cardinal; u1, u2: TGLfloat; stride, order: TGLint;
- points: PGLfloat);stdcall;
- Map2d: procedure(target: Cardinal; u1, u2: TGLdouble;
- ustride, uorder: TGLint; v1, v2: TGLdouble; vstride, vorder: TGLint;
- points: PGLdouble);stdcall;
- Map2f: procedure(target: Cardinal; u1, u2: TGLfloat;
- ustride, uorder: TGLint; v1, v2: TGLfloat; vstride, vorder: TGLint;
- points: PGLfloat);stdcall;
- MapGrid1d: procedure(un: TGLint; u1, u2: TGLdouble);stdcall;
- MapGrid1f: procedure(un: TGLint; u1, u2: TGLfloat);stdcall;
- MapGrid2d: procedure(un: TGLint; u1, u2: TGLdouble; vn: TGLint;
- v1, v2: TGLdouble);stdcall;
- MapGrid2f: procedure(un: TGLint; u1, u2: TGLfloat; vn: TGLint;
- v1, v2: TGLfloat);stdcall;
- Materialf: procedure(face, pname: Cardinal; param: TGLfloat);stdcall;
- Materialfv: procedure(face, pname: Cardinal; params: PGLfloat);stdcall;
- Materiali: procedure(face, pname: Cardinal; param: TGLint);stdcall;
- Materialiv: procedure(face, pname: Cardinal; params: PGLint);stdcall;
- MatrixMode: procedure(mode: Cardinal);stdcall;
- MultMatrixd: procedure(m: PGLdouble);stdcall;
- MultMatrixf: procedure(m: PGLfloat);stdcall;
- NewList: procedure(list: Cardinal; mode: Cardinal);stdcall;
- Normal3b: procedure(nx, ny, nz: TGLbyte);stdcall;
- Normal3bv: procedure(v: PGLbyte);stdcall;
- Normal3d: procedure(nx, ny, nz: TGLdouble);stdcall;
- Normal3dv: procedure(v: PGLdouble);stdcall;
- Normal3f: procedure(nx, ny, nz: TGLfloat);stdcall;
- Normal3fv: procedure(v: PGLfloat);stdcall;
- Normal3i: procedure(nx, ny, nz: TGLint);stdcall;
- Normal3iv: procedure(v: PGLint);stdcall;
- Normal3s: procedure(nx, ny, nz: TGLshort);stdcall;
- Normal3sv: procedure(v: PGLshort);stdcall;
- NormalPointer: procedure(atype: Cardinal; stride: TGLsizei; Data: Pointer);stdcall;
- Ortho: procedure(left, right, bottom, top, zNear, zFar: TGLdouble);stdcall;
- PassThrough: procedure(token: TGLfloat);stdcall;
- PixelMapfv: procedure(map: Cardinal; mapsize: TGLsizei; values: PGLfloat);stdcall;
- PixelMapuiv: procedure(map: Cardinal; mapsize: TGLsizei; values: PGLuint);stdcall;
- PixelMapusv: procedure(map: Cardinal; mapsize: TGLsizei; values: PGLushort);stdcall;
- PixelTransferf: procedure(pname: Cardinal; param: TGLfloat);stdcall;
- PixelTransferi: procedure(pname: Cardinal; param: TGLint);stdcall;
- PixelZoom: procedure(xfactor, yfactor: TGLfloat);stdcall;
- PolygonStipple: procedure(mask: PGLubyte);stdcall;
- PopAttrib: procedure();stdcall;
- PopClientAttrib: procedure();stdcall;
- PopMatrix: procedure();stdcall;
- PopName: procedure();stdcall;
- PrioritizeTextures: procedure(n: TGLsizei; textures: PGLuint;
- priorities: PSingle);stdcall;
- PushAttrib: procedure(mask: TGLbitfield);stdcall;
- PushClientAttrib: procedure(mask: TGLbitfield);stdcall;
- PushMatrix: procedure();stdcall;
- PushName: procedure(Name: Cardinal);stdcall;
- RasterPos2d: procedure(X, y: TGLdouble);stdcall;
- RasterPos2dv: procedure(v: PGLdouble);stdcall;
- RasterPos2f: procedure(X, y: TGLfloat);stdcall;
- RasterPos2fv: procedure(v: PGLfloat);stdcall;
- RasterPos2i: procedure(X, y: TGLint);stdcall;
- RasterPos2iv: procedure(v: PGLint);stdcall;
- RasterPos2s: procedure(X, y: PGLshort);stdcall;
- RasterPos2sv: procedure(v: PGLshort);stdcall;
- RasterPos3d: procedure(X, y, z: TGLdouble);stdcall;
- RasterPos3dv: procedure(v: PGLdouble);stdcall;
- RasterPos3f: procedure(X, y, z: TGLfloat);stdcall;
- RasterPos3fv: procedure(v: PGLfloat);stdcall;
- RasterPos3i: procedure(X, y, z: TGLint);stdcall;
- RasterPos3iv: procedure(v: PGLint);stdcall;
- RasterPos3s: procedure(X, y, z: TGLshort);stdcall;
- RasterPos3sv: procedure(v: PGLshort);stdcall;
- RasterPos4d: procedure(X, y, z, w: TGLdouble);stdcall;
- RasterPos4dv: procedure(v: PGLdouble);stdcall;
- RasterPos4f: procedure(X, y, z, w: TGLfloat);stdcall;
- RasterPos4fv: procedure(v: PGLfloat);stdcall;
- RasterPos4i: procedure(X, y, z, w: TGLint);stdcall;
- RasterPos4iv: procedure(v: PGLint);stdcall;
- RasterPos4s: procedure(X, y, z, w: TGLshort);stdcall;
- RasterPos4sv: procedure(v: PGLshort);stdcall;
- Rectd: procedure(x1, y1, x2, y2: TGLdouble);stdcall;
- Rectdv: procedure(v1, v2: PGLdouble);stdcall;
- Rectf: procedure(x1, y1, x2, y2: TGLfloat);stdcall;
- Rectfv: procedure(v1, v2: PGLfloat);stdcall;
- Recti: procedure(x1, y1, x2, y2: TGLint);stdcall;
- Rectiv: procedure(v1, v2: PGLint);stdcall;
- Rects: procedure(x1, y1, x2, y2: TGLshort);stdcall;
- Rectsv: procedure(v1, v2: PGLshort);stdcall;
- RenderMode: function(mode: Cardinal): TGLint;stdcall;
- Rotated: procedure(ane, X, y, z: TGLdouble);stdcall;
- Rotatef: procedure(ane, X, y, z: TGLfloat);stdcall;
- Scaled: procedure(X, y, z: TGLdouble);stdcall;
- Scalef: procedure(X, y, z: TGLfloat);stdcall;
- SelectBuffer: procedure(size: TGLsizei; buffer: PGLuint);stdcall;
- ShadeModel: procedure(mode: Cardinal);stdcall;
- TexCoord1d: procedure(s: TGLdouble);stdcall;
- TexCoord1dv: procedure(v: PGLdouble);stdcall;
- TexCoord1f: procedure(s: TGLfloat);stdcall;
- TexCoord1fv: procedure(v: PGLfloat);stdcall;
- TexCoord1i: procedure(s: TGLint);stdcall;
- TexCoord1iv: procedure(v: PGLint);stdcall;
- TexCoord1s: procedure(s: TGLshort);stdcall;
- TexCoord1sv: procedure(v: PGLshort);stdcall;
- TexCoord2d: procedure(s, t: TGLdouble);stdcall;
- TexCoord2dv: procedure(v: PGLdouble);stdcall;
- TexCoord2f: procedure(s, t: TGLfloat);stdcall;
- TexCoord2fv: procedure(v: PGLfloat);stdcall;
- TexCoord2i: procedure(s, t: TGLint);stdcall;
- TexCoord2iv: procedure(v: PGLint);stdcall;
- TexCoord2s: procedure(s, t: TGLshort);stdcall;
- TexCoord2sv: procedure(v: PGLshort);stdcall;
- TexCoord3d: procedure(s, t, r: TGLdouble);stdcall;
- TexCoord3dv: procedure(v: PGLdouble);stdcall;
- TexCoord3f: procedure(s, t, r: TGLfloat);stdcall;
- TexCoord3fv: procedure(v: PGLfloat);stdcall;
- TexCoord3i: procedure(s, t, r: TGLint);stdcall;
- TexCoord3iv: procedure(v: PGLint);stdcall;
- TexCoord3s: procedure(s, t, r: TGLshort);stdcall;
- TexCoord3sv: procedure(v: PGLshort);stdcall;
- TexCoord4d: procedure(s, t, r, q: TGLdouble);stdcall;
- TexCoord4dv: procedure(v: PGLdouble);stdcall;
- TexCoord4f: procedure(s, t, r, q: TGLfloat);stdcall;
- TexCoord4fv: procedure(v: PGLfloat);stdcall;
- TexCoord4i: procedure(s, t, r, q: TGLint);stdcall;
- TexCoord4iv: procedure(v: PGLint);stdcall;
- TexCoord4s: procedure(s, t, r, q: TGLshort);stdcall;
- TexCoord4sv: procedure(v: PGLshort);stdcall;
- TexCoordPointer: procedure(size: TGLint; atype: Cardinal; stride: TGLsizei; Data: Pointer);stdcall;
- TexEnvf: procedure(target, pname: Cardinal; param: TGLfloat);stdcall;
- TexEnvfv: procedure(target, pname: Cardinal; params: PGLfloat);stdcall;
- TexEnvi: procedure(target, pname: Cardinal; param: TGLint);stdcall;
- TexEnviv: procedure(target, pname: Cardinal; params: PGLint);stdcall;
- TexGend: procedure(coord, pname: Cardinal; param: TGLdouble);stdcall;
- TexGendv: procedure(coord, pname: Cardinal; params: PGLdouble);stdcall;
- TexGenf: procedure(coord, pname: Cardinal; param: TGLfloat);stdcall;
- TexGenfv: procedure(coord, pname: Cardinal; params: PGLfloat);stdcall;
- TexGeni: procedure(coord, pname: Cardinal; param: TGLint);stdcall;
- TexGeniv: procedure(coord, pname: Cardinal; params: PGLint);stdcall;
- Translated: procedure(X, y, z: TGLdouble);stdcall;
- Translatef: procedure(X, y, z: TGLfloat);stdcall;
- Vertex2d: procedure(X, y: TGLdouble);stdcall;
- Vertex2dv: procedure(v: PGLdouble);stdcall;
- Vertex2f: procedure(X, y: TGLfloat);stdcall;
- Vertex2fv: procedure(v: PGLfloat);stdcall;
- Vertex2i: procedure(X, y: TGLint);stdcall;
- Vertex2iv: procedure(v: PGLint);stdcall;
- Vertex2s: procedure(X, y: TGLshort);stdcall;
- Vertex2sv: procedure(v: PGLshort);stdcall;
- Vertex3d: procedure(X, y, z: TGLdouble);stdcall;
- Vertex3dv: procedure(v: PGLdouble);stdcall;
- Vertex3f: procedure(X, y, z: TGLfloat);stdcall;
- Vertex3fv: procedure(v: PGLfloat);stdcall;
- Vertex3i: procedure(X, y, z: TGLint);stdcall;
- Vertex3iv: procedure(v: PGLint);stdcall;
- Vertex3s: procedure(X, y, z: TGLshort);stdcall;
- Vertex3sv: procedure(v: PGLshort);stdcall;
- Vertex4d: procedure(X, y, z, w: TGLdouble);stdcall;
- Vertex4dv: procedure(v: PGLdouble);stdcall;
- Vertex4f: procedure(X, y, z, w: TGLfloat);stdcall;
- Vertex4fv: procedure(v: PGLfloat);stdcall;
- Vertex4i: procedure(X, y, z, w: TGLint);stdcall;
- Vertex4iv: procedure(v: PGLint);stdcall;
- Vertex4s: procedure(X, y, z, w: TGLshort);stdcall;
- Vertex4sv: procedure(v: PGLshort);stdcall;
- VertexPointer: procedure(size: TGLint; atype: Cardinal; stride: TGLsizei;
- Data: Pointer);stdcall;
- //*****************************************************************
- // --------- New core function/procedure definitions in OpenGL 1.2'}
- //*****************************************************************
- BlendColor: PFNGLBLENDCOLORPROC;
- BlendEquation: PFNGLBLENDEQUATIONPROC;
- DrawRangeElements: PFNGLDRAWRANGEELEMENTSPROC;
- TexImage3D: PFNGLTEXIMAGE3DPROC;
- TexSubImage3D: PFNGLTEXSUBIMAGE3DPROC;
- CopyTexSubImage3D: PFNGLCOPYTEXSUBIMAGE3DPROC;
- // -------- New core function/procedure definitions in OpenGL 1.4'}
- BlendFuncSeparate: PFNGLBLENDFUNCSEPARATEPROC;
- MultiDrawArrays: PFNGLMULTIDRAWARRAYSPROC;
- MultiDrawElements: PFNGLMULTIDRAWELEMENTSPROC;
- PointParameterf: PFNGLPOINTPARAMETERFPROC;
- PointParameterfv: PFNGLPOINTPARAMETERFVPROC;
- PointParameteri: PFNGLPOINTPARAMETERIPROC;
- PointParameteriv: PFNGLPOINTPARAMETERIVPROC;
- // ------------- New core function/procedure definitions in OpenGL 2.0'}
- BlendEquationSeparate: PFNGLBLENDEQUATIONSEPARATEPROC;
- DrawBuffers: PFNGLDRAWBUFFERSPROC;
- StencilOpSeparate: PFNGLSTENCILOPSEPARATEPROC;
- StencilFuncSeparate: PFNGLSTENCILFUNCSEPARATEPROC;
- StencilMaskSeparate: PFNGLSTENCILMASKSEPARATEPROC;
- // ---------------- Buffer objects
- LockArrays: PFNGLLOCKARRAYSEXTPROC; // EXT only
- UnlockArrays: PFNGLUNLOCKARRAYSEXTPROC; // EXT only
- BindBuffer: PFNGLBINDBUFFERPROC;
- DeleteBuffers: PFNGLDELETEBUFFERSPROC;
- GenBuffers: PFNGLGENBUFFERSPROC;
- IsBuffer: PFNGLISBUFFERPROC;
- BufferData: PFNGLBUFFERDATAPROC;
- BufferSubData: PFNGLBUFFERSUBDATAPROC;
- GetBufferSubData: PFNGLGETBUFFERSUBDATAPROC;
- MapBuffer: PFNGLMAPBUFFERPROC;
- UnmapBuffer: PFNGLUNMAPBUFFERPROC;
- GetBufferParameteriv: PFNGLGETBUFFERPARAMETERIVPROC;
- GetBufferPointerv: PFNGLGETBUFFERPOINTERVPROC;
- MapBufferRange: PFNGLMAPBUFFERRANGEPROC;
- FlushMappedBufferRange: PFNGLFLUSHMAPPEDBUFFERRANGEPROC;
- BindBufferRange: PFNGLBINDBUFFERRANGEPROC;
- BindBufferOffset: PFNGLBINDBUFFEROFFSETEXTPROC; // EXT + NV only
- BindBufferBase: PFNGLBINDBUFFERBASEPROC;
- TransformFeedbackAttribs: PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC; // NV only
- TransformFeedbackVaryingsNV: PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC;
- // NV only
- TransformFeedbackVaryings: PFNGLTRANSFORMFEEDBACKVARYINGSPROC;
- GetTransformFeedbackVarying: PFNGLGETTRANSFORMFEEDBACKVARYINGPROC;
- BeginTransformFeedback: PFNGLBEGINTRANSFORMFEEDBACKPROC;
- EndTransformFeedback: PFNGLENDTRANSFORMFEEDBACKPROC;
- TexBuffer: PFNGLTEXBUFFERPROC;
- ClearBufferiv: PFNGLCLEARBUFFERIVPROC;
- ClearBufferuiv: PFNGLCLEARBUFFERUIVPROC;
- ClearBufferfv: PFNGLCLEARBUFFERFVPROC;
- ClearBufferfi: PFNGLCLEARBUFFERFIPROC;
- GetStringi: PFNGLGETSTRINGIPROC;
- BindVertexArray: PFNGLBINDVERTEXARRAYPROC;
- DeleteVertexArrays: PFNGLDELETEVERTEXARRAYSPROC;
- GenVertexArrays: PFNGLGENVERTEXARRAYSPROC;
- IsVertexArray: PFNGLISVERTEXARRAYPROC;
- FlushVertexArrayRangeNV: PFNGLFLUSHVERTEXARRAYRANGENVPROC;
- VertexArrayRangeNV: PFNGLVERTEXARRAYRANGENVPROC;
- GetUniformIndices: PFNGLGETUNIFORMINDICESPROC;
- GetActiveUniformsiv: PFNGLGETACTIVEUNIFORMSIVPROC;
- GetActiveUniformName: PFNGLGETACTIVEUNIFORMNAMEPROC;
- GetUniformBlockIndex: PFNGLGETUNIFORMBLOCKINDEXPROC;
- GetActiveUniformBlockiv: PFNGLGETACTIVEUNIFORMBLOCKIVPROC;
- GetActiveUniformBlockName: PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC;
- UniformBlockBinding: PFNGLUNIFORMBLOCKBINDINGPROC;
- CopyBufferSubData: PFNGLCOPYBUFFERSUBDATAPROC;
- UniformBuffer: PFNGLUNIFORMBUFFEREXTPROC;
- GetUniformBufferSize: PFNGLGETUNIFORMBUFFERSIZEEXTPROC; // EXT only
- GetUniformOffset: PFNGLGETUNIFORMOFFSETEXTPROC; // EXT only
- PrimitiveRestartIndex: PFNGLPRIMITIVERESTARTINDEXPROC;
- DrawElementsBaseVertex: PFNGLDRAWELEMENTSBASEVERTEXPROC;
- DrawRangeElementsBaseVertex: PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC;
- DrawElementsInstancedBaseVertex: PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC;
- MultiDrawElementsBaseVertex: PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC;
- DrawArraysInstanced: PFNGLDRAWARRAYSINSTANCEDPROC;
- DrawElementsInstanced: PFNGLDRAWELEMENTSINSTANCEDPROC;
- VertexAttrib1d: PFNGLVERTEXATTRIB1DPROC;
- VertexAttrib1dv: PFNGLVERTEXATTRIB1DVPROC;
- VertexAttrib1f: PFNGLVERTEXATTRIB1FPROC;
- VertexAttrib1fv: PFNGLVERTEXATTRIB1FVPROC;
- VertexAttrib1s: PFNGLVERTEXATTRIB1SPROC;
- VertexAttrib1sv: PFNGLVERTEXATTRIB1SVPROC;
- VertexAttrib2d: PFNGLVERTEXATTRIB2DPROC;
- VertexAttrib2dv: PFNGLVERTEXATTRIB2DVPROC;
- VertexAttrib2f: PFNGLVERTEXATTRIB2FPROC;
- VertexAttrib2fv: PFNGLVERTEXATTRIB2FVPROC;
- VertexAttrib2s: PFNGLVERTEXATTRIB2SPROC;
- VertexAttrib2sv: PFNGLVERTEXATTRIB2SVPROC;
- VertexAttrib3d: PFNGLVERTEXATTRIB3DPROC;
- VertexAttrib3dv: PFNGLVERTEXATTRIB3DVPROC;
- VertexAttrib3f: PFNGLVERTEXATTRIB3FPROC;
- VertexAttrib3fv: PFNGLVERTEXATTRIB3FVPROC;
- VertexAttrib3s: PFNGLVERTEXATTRIB3SPROC;
- VertexAttrib3sv: PFNGLVERTEXATTRIB3SVPROC;
- VertexAttrib4Nbv: PFNGLVERTEXATTRIB4NBVPROC;
- VertexAttrib4Niv: PFNGLVERTEXATTRIB4NIVPROC;
- VertexAttrib4Nsv: PFNGLVERTEXATTRIB4NSVPROC;
- VertexAttrib4Nub: PFNGLVERTEXATTRIB4NUBPROC;
- VertexAttrib4Nubv: PFNGLVERTEXATTRIB4NUBVPROC;
- VertexAttrib4Nuiv: PFNGLVERTEXATTRIB4NUIVPROC;
- VertexAttrib4Nusv: PFNGLVERTEXATTRIB4NUSVPROC;
- VertexAttrib4bv: PFNGLVERTEXATTRIB4BVPROC;
- VertexAttrib4d: PFNGLVERTEXATTRIB4DPROC;
- VertexAttrib4dv: PFNGLVERTEXATTRIB4DVPROC;
- VertexAttrib4f: PFNGLVERTEXATTRIB4FPROC;
- VertexAttrib4fv: PFNGLVERTEXATTRIB4FVPROC;
- VertexAttrib4iv: PFNGLVERTEXATTRIB4IVPROC;
- VertexAttrib4s: PFNGLVERTEXATTRIB4SPROC;
- VertexAttrib4sv: PFNGLVERTEXATTRIB4SVPROC;
- VertexAttrib4ubv: PFNGLVERTEXATTRIB4UBVPROC;
- VertexAttrib4uiv: PFNGLVERTEXATTRIB4UIVPROC;
- VertexAttrib4usv: PFNGLVERTEXATTRIB4USVPROC;
- VertexAttribPointer: PFNGLVERTEXATTRIBPOINTERPROC;
- VertexAttribI1i: PFNGLVERTEXATTRIBI1IPROC;
- VertexAttribI2i: PFNGLVERTEXATTRIBI2IPROC;
- VertexAttribI3i: PFNGLVERTEXATTRIBI3IPROC;
- VertexAttribI4i: PFNGLVERTEXATTRIBI4IPROC;
- VertexAttribI1ui: PFNGLVERTEXATTRIBI1UIPROC;
- VertexAttribI2ui: PFNGLVERTEXATTRIBI2UIPROC;
- VertexAttribI3ui: PFNGLVERTEXATTRIBI3UIPROC;
- VertexAttribI4ui: PFNGLVERTEXATTRIBI4UIPROC;
- VertexAttribI1iv: PFNGLVERTEXATTRIBI1IVPROC;
- VertexAttribI2iv: PFNGLVERTEXATTRIBI2IVPROC;
- VertexAttribI3iv: PFNGLVERTEXATTRIBI3IVPROC;
- VertexAttribI4iv: PFNGLVERTEXATTRIBI4IVPROC;
- VertexAttribI1uiv: PFNGLVERTEXATTRIBI1UIVPROC;
- VertexAttribI2uiv: PFNGLVERTEXATTRIBI2UIVPROC;
- VertexAttribI3uiv: PFNGLVERTEXATTRIBI3UIVPROC;
- VertexAttribI4uiv: PFNGLVERTEXATTRIBI4UIVPROC;
- VertexAttribI4bv: PFNGLVERTEXATTRIBI4BVPROC;
- VertexAttribI4sv: PFNGLVERTEXATTRIBI4SVPROC;
- VertexAttribI4ubv: PFNGLVERTEXATTRIBI4UBVPROC;
- VertexAttribI4usv: PFNGLVERTEXATTRIBI4USVPROC;
- VertexAttribIPointer: PFNGLVERTEXATTRIBIPOINTERPROC;
- GetVertexAttribIiv: PFNGLGETVERTEXATTRIBIIVPROC;
- GetVertexAttribIuiv: PFNGLGETVERTEXATTRIBIUIVPROC;
- Uniform1ui: PFNGLUNIFORM1UIPROC;
- Uniform2ui: PFNGLUNIFORM2UIPROC;
- Uniform3ui: PFNGLUNIFORM3UIPROC;
- Uniform4ui: PFNGLUNIFORM4UIPROC;
- Uniform1uiv: PFNGLUNIFORM1UIVPROC;
- Uniform2uiv: PFNGLUNIFORM2UIVPROC;
- Uniform3uiv: PFNGLUNIFORM3UIVPROC;
- Uniform4uiv: PFNGLUNIFORM4UIVPROC;
- GetUniformuiv: PFNGLGETUNIFORMUIVPROC;
- BindFragDataLocation: PFNGLBINDFRAGDATALOCATIONPROC;
- GetFragDataLocation: PFNGLGETFRAGDATALOCATIONPROC;
- ClampColor: PFNGLCLAMPCOLORPROC;
- ColorMaski: PFNGLCOLORMASKIPROC;
- GetBooleani_v: PFNGLGETBOOLEANI_VPROC;
- GetIntegeri_v: PFNGLGETINTEGERI_VPROC;
- Enablei: PFNGLENABLEIPROC;
- Disablei: PFNGLDISABLEIPROC;
- IsEnabledi: PFNGLISENABLEDIPROC;
- EnableVertexAttribArray: PFNGLENABLEVERTEXATTRIBARRAYPROC;
- DisableVertexAttribArray: PFNGLDISABLEVERTEXATTRIBARRAYPROC;
- VertexAttribDivisor: PFNGLVERTEXATTRIBDIVISORPROC;
- ClearColorIi: PFNGLCLEARCOLORIIEXTPROC; // EXT only
- ClearColorIui: PFNGLCLEARCOLORIUIEXTPROC; // EXT only
- TexParameterIiv: PFNGLTEXPARAMETERIIVPROC;
- TexParameterIuiv: PFNGLTEXPARAMETERIUIVPROC;
- GetTexParameterIiv: PFNGLGETTEXPARAMETERIIVPROC;
- GetTexParameterIuiv: PFNGLGETTEXPARAMETERIUIVPROC;
- PatchParameteri: PFNGLPATCHPARAMETERIPROC;
- PatchParameterfv: PFNGLPATCHPARAMETERFVPROC;
- BufferAddressRangeNV: PFNGLBUFFERADDRESSRANGENVPROC;
- VertexFormatNV: PFNGLVERTEXFORMATNVPROC;
- NormalFormatNV: PFNGLNORMALFORMATNVPROC;
- ColorFormatNV: PFNGLCOLORFORMATNVPROC;
- IndexFormatNV: PFNGLINDEXFORMATNVPROC;
- TexCoordFormatNV: PFNGLTEXCOORDFORMATNVPROC;
- EdgeFlagFormatNV: PFNGLEDGEFLAGFORMATNVPROC;
- SecondaryColorFormatNV: PFNGLSECONDARYCOLORFORMATNVPROC;
- FogCoordFormatNV: PFNGLFOGCOORDFORMATNVPROC;
- VertexAttribFormatNV: PFNGLVERTEXATTRIBFORMATNVPROC;
- VertexAttribIFormatNV: PFNGLVERTEXATTRIBIFORMATNVPROC;
- GetIntegerui64i_vNV: PFNGLGETINTEGERUI64I_VNVPROC;
- GetBufferParameterui64vNV: PGNGLGETBUFFERPARAMETERUI64VNV;
- MakeBufferResidentNV: PFNGLMAKEBUFFERRESIDENTNVPROC;
- MakeBufferNonResidentNV: PFNGLMAKEBUFFERNONRESIDENTNVPROC;
- IsBufferResidentNV: PFNGLISBUFFERRESIDENTNVPROC;
- MakeNamedBufferResidentNV: PFNGLMAKENAMEDBUFFERRESIDENTNVPROC;
- MakeNamedBufferNonResidentNV: PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC;
- IsNamedBufferResidentNV: PFNGLISNAMEDBUFFERRESIDENTNVPROC;
- GetNamedBufferParameterui64vNV: PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC;
- GetIntegerui64vNV: PFNGLGETINTEGERUI64VNVPROC;
- Uniformui64NV: PFNGLUNIFORMUI64NVPROC;
- Uniformui64vNV: PFNGLUNIFORMUI64VNVPROC;
- GetUniformui64vNV: PFNGLGETUNIFORMUI64VNVPROC;
- ProgramUniformui64NV: PFNGLPROGRAMUNIFORMUI64NVPROC;
- ProgramUniformui64vNV: PFNGLPROGRAMUNIFORMUI64VNVPROC;
- ClearBufferData: PFNGLClearBufferData;
- ClearBufferSubData: PFNGLClearBufferSubData;
- ClearNamedBufferData: PFNGLClearNamedBufferData;
- ClearNamedBufferSubData: PFNGLClearNamedBufferSubData;
- InvalidateTexSubImage: PFNGLInvalidateTexSubImage;
- InvalidateTexImage: PFNGLInvalidateTexImage;
- InvalidateBufferSubData: PFNGLInvalidateBufferSubData;
- InvalidateBufferData: PFNGLInvalidateBufferData;
- InvalidateFramebuffer: PFNGLInvalidateFramebuffer;
- InvalidateSubFramebuffer: PFNGLInvalidateSubFramebuffer;
- MultiDrawArraysIndirect: PFNGLMultiDrawArraysIndirect;
- MultiDrawElementsIndirect: PFNGLMultiDrawElementsIndirect;
- BindVertexBuffer: PFNGLBindVertexBuffer;
- VertexAttribFormat: PFNGLVertexAttribFormat;
- VertexAttribIFormat: PFNGLVertexAttribIFormat;
- VertexAttribLFormat: PFNGLVertexAttribLFormat;
- VertexAttribBinding: PFNGLVertexAttribBinding;
- VertexBindingDivisor: PFNGLVertexBindingDivisor;
- VertexArrayBindVertexBuffer: PFNGLVertexArrayBindVertexBuffer;
- VertexArrayVertexAttribFormat: PFNGLVertexArrayVertexAttribFormat;
- VertexArrayVertexAttribIFormat: PFNGLVertexArrayVertexAttribIFormat;
- VertexArrayVertexAttribLFormat: PFNGLVertexArrayVertexAttribLFormat;
- VertexArrayVertexAttribBinding: PFNGLVertexArrayVertexAttribBinding;
- VertexArrayVertexBindingDivisor: PFNGLVertexArrayVertexBindingDivisor;
- // ------------------------------ Shader object
- DeleteObject: PFNGLDELETEOBJECTARBPROC; // ARB only
- GetHandle: PFNGLGETHANDLEARBPROC; // ARB only
- DetachShader: PFNGLDETACHSHADERPROC;
- CreateShader: PFNGLCREATESHADERPROC;
- DeleteShader: PFNGLDELETESHADERPROC;
- ShaderSource: PFNGLSHADERSOURCEPROC;
- CompileShader: PFNGLCOMPILESHADERPROC;
- CreateProgram: PFNGLCREATEPROGRAMPROC;
- DeleteProgram: PFNGLDELETEPROGRAMPROC;
- AttachShader: PFNGLATTACHSHADERPROC;
- LinkProgram: PFNGLLINKPROGRAMPROC;
- UseProgram: PFNGLUSEPROGRAMPROC;
- ValidateProgram: PFNGLVALIDATEPROGRAMPROC;
- Uniform1f: PFNGLUNIFORM1FPROC;
- Uniform2f: PFNGLUNIFORM2FPROC;
- Uniform3f: PFNGLUNIFORM3FPROC;
- Uniform4f: PFNGLUNIFORM4FPROC;
- Uniform1i: PFNGLUNIFORM1IPROC;
- Uniform2i: PFNGLUNIFORM2IPROC;
- Uniform3i: PFNGLUNIFORM3IPROC;
- Uniform4i: PFNGLUNIFORM4IPROC;
- Uniform1fv: PFNGLUNIFORM1FVPROC;
- Uniform2fv: PFNGLUNIFORM2FVPROC;
- Uniform3fv: PFNGLUNIFORM3FVPROC;
- Uniform4fv: PFNGLUNIFORM4FVPROC;
- Uniform1iv: PFNGLUNIFORM1IVPROC;
- Uniform2iv: PFNGLUNIFORM2IVPROC;
- Uniform3iv: PFNGLUNIFORM3IVPROC;
- Uniform4iv: PFNGLUNIFORM4IVPROC;
- UniformMatrix2fv: PFNGLUNIFORMMATRIX2FVPROC;
- UniformMatrix3fv: PFNGLUNIFORMMATRIX3FVPROC;
- UniformMatrix4fv: PFNGLUNIFORMMATRIX4FVPROC;
- GetObjectParameterfv: PFNGLGETOBJECTPARAMETERFVARBPROC; // ARB only
- GetObjectParameteriv: PFNGLGETOBJECTPARAMETERIVARBPROC; // ARB only
- GetInfoLog: PFNGLGETINFOLOGARBPROC; // ARB only
- GetAttachedObjects: PFNGLGETATTACHEDOBJECTSARBPROC; // ARB only
- GetActiveAttrib: PFNGLGETACTIVEATTRIBPROC;
- GetActiveUniform: PFNGLGETACTIVEUNIFORMPROC;
- GetAttachedShaders: PFNGLGETATTACHEDSHADERSPROC;
- GetAttribLocation: PFNGLGETATTRIBLOCATIONPROC;
- GetProgramiv: PFNGLGETPROGRAMIVPROC;
- GetProgramInfoLog: PFNGLGETPROGRAMINFOLOGPROC;
- GetShaderiv: PFNGLGETSHADERIVPROC;
- GetShaderInfoLog: PFNGLGETSHADERINFOLOGPROC;
- GetShaderSource: PFNGLGETSHADERSOURCEPROC;
- GetUniformLocation: PFNGLGETUNIFORMLOCATIONPROC;
- GetUniformfv: PFNGLGETUNIFORMFVPROC;
- GetUniformiv: PFNGLGETUNIFORMIVPROC;
- GetVertexAttribdv: PFNGLGETVERTEXATTRIBDVPROC;
- GetVertexAttribfv: PFNGLGETVERTEXATTRIBFVPROC;
- GetVertexAttribiv: PFNGLGETVERTEXATTRIBIVPROC;
- GetVertexAttribPointerv: PFNGLGETVERTEXATTRIBPOINTERVPROC;
- IsProgram: PFNGLISPROGRAMPROC;
- IsShader: PFNGLISSHADERPROC;
- BindAttribLocation: PFNGLBINDATTRIBLOCATIONPROC;
- BindFragDataLocationIndexed: PFNGLBINDFRAGDATALOCATIONINDEXEDPROC;
- GetFragDataIndex: PFNGLGETFRAGDATAINDEXPROC;
- GetVaryingLocation: PFNGLGETVARYINGLOCATIONNVPROC; // NV only
- GetActiveVarying: PFNGLGETACTIVEVARYINGNVPROC; // NV only
- ActiveVarying: PFNGLACTIVEVARYINGNVPROC; // NV only
- GetProgramBinary: PFNGLGETPROGRAMBINARYPROC;
- ProgramBinary: PFNGLPROGRAMBINARYPROC;
- UseProgramStages: PFNGLUSEPROGRAMSTAGESPROC;
- ActiveShaderProgram: PFNGLACTIVESHADERPROGRAMPROC;
- CreateShaderProgramv: PFNGLCREATESHADERPROGRAMVPROC;
- BindProgramPipeline: PFNGLBINDPROGRAMPIPELINEPROC;
- DeleteProgramPipelines: PFNGLDELETEPROGRAMPIPELINESPROC;
- GenProgramPipelines: PFNGLGENPROGRAMPIPELINESPROC;
- IsProgramPipeline: PFNGLISPROGRAMPIPELINEPROC;
- GetProgramPipelineiv: PFNGLGETPROGRAMPIPELINEIVPROC;
- ProgramUniform1i: PFNGLPROGRAMUNIFORM1IPROC;
- ProgramUniform1iv: PFNGLPROGRAMUNIFORM1IVPROC;
- ProgramUniform1f: PFNGLPROGRAMUNIFORM1FPROC;
- ProgramUniform1fv: PFNGLPROGRAMUNIFORM1FVPROC;
- ProgramUniform1d: PFNGLPROGRAMUNIFORM1DPROC;
- ProgramUniform1dv: PFNGLPROGRAMUNIFORM1DVPROC;
- ProgramUniform1ui: PFNGLPROGRAMUNIFORM1UIPROC;
- ProgramUniform1uiv: PFNGLPROGRAMUNIFORM1UIVPROC;
- ProgramUniform2i: PFNGLPROGRAMUNIFORM2IPROC;
- ProgramUniform2iv: PFNGLPROGRAMUNIFORM2IVPROC;
- ProgramUniform2f: PFNGLPROGRAMUNIFORM2FPROC;
- ProgramUniform2fv: PFNGLPROGRAMUNIFORM2FVPROC;
- ProgramUniform2d: PFNGLPROGRAMUNIFORM2DPROC;
- ProgramUniform2dv: PFNGLPROGRAMUNIFORM2DVPROC;
- ProgramUniform2ui: PFNGLPROGRAMUNIFORM2UIPROC;
- ProgramUniform2uiv: PFNGLPROGRAMUNIFORM2UIVPROC;
- ProgramUniform3i: PFNGLPROGRAMUNIFORM3IPROC;
- ProgramUniform3iv: PFNGLPROGRAMUNIFORM3IVPROC;
- ProgramUniform3f: PFNGLPROGRAMUNIFORM3FPROC;
- ProgramUniform3fv: PFNGLPROGRAMUNIFORM3FVPROC;
- ProgramUniform3d: PFNGLPROGRAMUNIFORM3DPROC;
- ProgramUniform3dv: PFNGLPROGRAMUNIFORM3DVPROC;
- ProgramUniform3ui: PFNGLPROGRAMUNIFORM3UIPROC;
- ProgramUniform3uiv: PFNGLPROGRAMUNIFORM3UIVPROC;
- ProgramUniform4i: PFNGLPROGRAMUNIFORM4IPROC;
- ProgramUniform4iv: PFNGLPROGRAMUNIFORM4IVPROC;
- ProgramUniform4f: PFNGLPROGRAMUNIFORM4FPROC;
- ProgramUniform4fv: PFNGLPROGRAMUNIFORM4FVPROC;
- ProgramUniform4d: PFNGLPROGRAMUNIFORM4DPROC;
- ProgramUniform4dv: PFNGLPROGRAMUNIFORM4DVPROC;
- ProgramUniform4ui: PFNGLPROGRAMUNIFORM4UIPROC;
- ProgramUniform4uiv: PFNGLPROGRAMUNIFORM4UIVPROC;
- ProgramUniformMatrix2fv: PFNGLPROGRAMUNIFORMMATRIX2FVPROC;
- ProgramUniformMatrix3fv: PFNGLPROGRAMUNIFORMMATRIX3FVPROC;
- ProgramUniformMatrix4fv: PFNGLPROGRAMUNIFORMMATRIX4FVPROC;
- ProgramUniformMatrix2dv: PFNGLPROGRAMUNIFORMMATRIX2DVPROC;
- ProgramUniformMatrix3dv: PFNGLPROGRAMUNIFORMMATRIX3DVPROC;
- ProgramUniformMatrix4dv: PFNGLPROGRAMUNIFORMMATRIX4DVPROC;
- ProgramUniformMatrix2x3fv: PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC;
- ProgramUniformMatrix3x2fv: PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC;
- ProgramUniformMatrix2x4fv: PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC;
- ProgramUniformMatrix4x2fv: PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC;
- ProgramUniformMatrix3x4fv: PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC;
- ProgramUniformMatrix4x3fv: PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC;
- ProgramUniformMatrix2x3dv: PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC;
- ProgramUniformMatrix3x2dv: PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC;
- ProgramUniformMatrix2x4dv: PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC;
- ProgramUniformMatrix4x2dv: PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC;
- ProgramUniformMatrix3x4dv: PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC;
- ProgramUniformMatrix4x3dv: PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC;
- ValidateProgramPipeline: PFNGLVALIDATEPROGRAMPIPELINEPROC;
- GetProgramPipelineInfoLog: PFNGLGETPROGRAMPIPELINEINFOLOGPROC;
- DispatchCompute: PFNGLDispatchCompute;
- DispatchComputeIndirect: PFNGLDispatchComputeIndirect;
- ShaderStorageBlockBinding: PFNGLShaderStorageBlockBinding;
- // ------------- Framebuffer object
- IsRenderbuffer: PFNGLISRENDERBUFFERPROC;
- BindRenderbuffer: PFNGLBINDRENDERBUFFERPROC;
- DeleteRenderbuffers: PFNGLDELETERENDERBUFFERSPROC;
- GenRenderbuffers: PFNGLGENRENDERBUFFERSPROC;
- RenderbufferStorage: PFNGLRENDERBUFFERSTORAGEPROC;
- RenderbufferStorageMultisample: PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC;
- GetRenderbufferParameteriv: PFNGLGETRENDERBUFFERPARAMETERIVPROC;
- IsFramebuffer: PFNGLISFRAMEBUFFERPROC;
- BindFramebuffer: PFNGLBINDFRAMEBUFFERPROC;
- DeleteFramebuffers: PFNGLDELETEFRAMEBUFFERSPROC;
- GenFramebuffers: PFNGLGENFRAMEBUFFERSPROC;
- CheckFramebufferStatus: PFNGLCHECKFRAMEBUFFERSTATUSPROC;
- FramebufferTexture: PFNGLFRAMEBUFFERTEXTUREPROC;
- FramebufferTexture1D: PFNGLFRAMEBUFFERTEXTURE1DPROC;
- FramebufferTexture2D: PFNGLFRAMEBUFFERTEXTURE2DPROC;
- FramebufferTexture3D: PFNGLFRAMEBUFFERTEXTURE3DPROC;
- FramebufferTextureLayer: PFNGLFRAMEBUFFERTEXTURELAYERPROC;
- FramebufferTextureFace: PFNGLFRAMEBUFFERTEXTUREFACEARBPROC; // ARB only
- FramebufferRenderbuffer: PFNGLFRAMEBUFFERRENDERBUFFERPROC;
- GetFramebufferAttachmentParameteriv: PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC;
- BlitFramebuffer: PFNGLBLITFRAMEBUFFERPROC;
- GenerateMipmap: PFNGLGENERATEMIPMAPPROC;
- FramebufferParameteri: PFNGLFramebufferParameteri;
- NamedFramebufferParameteri: PFNGLNamedFramebufferParameteri;
- GetNamedFramebufferParameteriv: PFNGLGetNamedFramebufferParameteriv;
- // ------------------------------ Queries object
- GenQueries: PFNGLGENQUERIESPROC;
- DeleteQueries: PFNGLDELETEQUERIESPROC;
- IsQuery: PFNGLISQUERYPROC;
- BeginQuery: PFNGLBEGINQUERYPROC;
- EndQuery: PFNGLENDQUERYPROC;
- GetQueryiv: PFNGLGETQUERYIVPROC;
- GetQueryObjectiv: PFNGLGETQUERYOBJECTIVPROC;
- GetQueryObjectuiv: PFNGLGETQUERYOBJECTUIVPROC;
- QueryCounter: PFNGLQUERYCOUNTERPROC;
- GetQueryObjecti64v: PFNGLGETQUERYOBJECTI64VPROC;
- GetQueryObjectui64v: PFNGLGETQUERYOBJECTUI64VPROC;
- GetInternalformati64v: PFNGLGetInternalformati64v;
- GetProgramInterfaceiv: PFNGLGetProgramInterfaceiv;
- GetProgramResourceIndex: PFNGLGetProgramResourceIndex;
- GetProgramResourceName: PFNGLGetProgramResourceName;
- GetProgramResourceiv: PFNGLGetProgramResourceiv;
- GetProgramResourceLocation: PFNGLGetProgramResourceLocation;
- GetProgramResourceLocationIndex: PFNGLGetProgramResourceLocationIndex;
- // ------------------------------ Texture & Sampler object
- // promoted to core v1.3 from GL_ARB_multitexture (#1)
- ActiveTexture: PFNGLACTIVETEXTUREPROC;
- SampleCoverage: PFNGLSAMPLECOVERAGEPROC;
- // promoted to core v1.3 from GL_ARB_texture_compression (#12)
- CompressedTexImage3D: PFNGLCOMPRESSEDTEXIMAGE3DPROC;
- CompressedTexImage2D: PFNGLCOMPRESSEDTEXIMAGE2DPROC;
- CompressedTexImage1D: PFNGLCOMPRESSEDTEXIMAGE1DPROC;
- CompressedTexSubImage3D: PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC;
- CompressedTexSubImage2D: PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC;
- CompressedTexSubImage1D: PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC;
- GetCompressedTexImage: PFNGLGETCOMPRESSEDTEXIMAGEPROC;
- ClientActiveTexture: PFNGLCLIENTACTIVETEXTUREPROC;
- MultiTexCoord1d: PFNGLMULTITEXCOORD1DPROC;
- MultiTexCoord1dV: PFNGLMULTITEXCOORD1DVPROC;
- MultiTexCoord1f: PFNGLMULTITEXCOORD1FPROC;
- MultiTexCoord1fv: PFNGLMULTITEXCOORD1FVPROC;
- MultiTexCoord1i: PFNGLMULTITEXCOORD1IPROC;
- MultiTexCoord1iv: PFNGLMULTITEXCOORD1IVPROC;
- MultiTexCoord1s: PFNGLMULTITEXCOORD1SPROC;
- MultiTexCoord1sv: PFNGLMULTITEXCOORD1SVPROC;
- MultiTexCoord2d: PFNGLMULTITEXCOORD2DPROC;
- MultiTexCoord2dv: PFNGLMULTITEXCOORD2DVPROC;
- MultiTexCoord2f: PFNGLMULTITEXCOORD2FPROC;
- MultiTexCoord2fv: PFNGLMULTITEXCOORD2FVPROC;
- MultiTexCoord2i: PFNGLMULTITEXCOORD2IPROC;
- MultiTexCoord2iv: PFNGLMULTITEXCOORD2IVPROC;
- MultiTexCoord2s: PFNGLMULTITEXCOORD2SPROC;
- MultiTexCoord2sv: PFNGLMULTITEXCOORD2SVPROC;
- MultiTexCoord3d: PFNGLMULTITEXCOORD3DPROC;
- MultiTexCoord3dv: PFNGLMULTITEXCOORD3DVPROC;
- MultiTexCoord3f: PFNGLMULTITEXCOORD3FPROC;
- MultiTexCoord3fv: PFNGLMULTITEXCOORD3FVPROC;
- MultiTexCoord3i: PFNGLMULTITEXCOORD3IPROC;
- MultiTexCoord3iv: PFNGLMULTITEXCOORD3IVPROC;
- MultiTexCoord3s: PFNGLMULTITEXCOORD3SPROC;
- MultiTexCoord3sv: PFNGLMULTITEXCOORD3SVPROC;
- MultiTexCoord4d: PFNGLMULTITEXCOORD4DPROC;
- MultiTexCoord4dv: PFNGLMULTITEXCOORD4DVPROC;
- MultiTexCoord4f: PFNGLMULTITEXCOORD4FPROC;
- MultiTexCoord4fv: PFNGLMULTITEXCOORD4FVPROC;
- MultiTexCoord4i: PFNGLMULTITEXCOORD4IPROC;
- MultiTexCoord4iv: PFNGLMULTITEXCOORD4IVPROC;
- MultiTexCoord4s: PFNGLMULTITEXCOORD4SPROC;
- MultiTexCoord4sv: PFNGLMULTITEXCOORD4SVPROC;
- GetInteger64i_v: PFNGLGETINTEGER64I_VPROC;
- GetBufferParameteri64v: PFNGLGETBUFFERPARAMETERI64VPROC;
- ProgramParameteri: PFNGLPROGRAMPARAMETERIPROC;
- ProgramString: PFNGLPROGRAMSTRINGARBPROC; // ARB only
- BindProgram: PFNGLBINDPROGRAMARBPROC; // ARB + NV only
- DeletePrograms: PFNGLDELETEPROGRAMSARBPROC; // ARB + NV only
- GenPrograms: PFNGLGENPROGRAMSARBPROC; // ARB + NV only
- ProgramEnvParameter4d: PFNGLPROGRAMENVPARAMETER4DARBPROC; // ARB only
- ProgramEnvParameter4dv: PFNGLPROGRAMENVPARAMETER4DVARBPROC; // ARB only
- ProgramEnvParameter4f: PFNGLPROGRAMENVPARAMETER4FARBPROC; // ARB only
- ProgramEnvParameter4fv: PFNGLPROGRAMENVPARAMETER4FVARBPROC; // ARB only
- ProgramLocalParameter4d: PFNGLPROGRAMLOCALPARAMETER4DARBPROC; // ARB only
- ProgramLocalParameter4dv: PFNGLPROGRAMLOCALPARAMETER4DVARBPROC; // ARB only
- ProgramLocalParameter4f: PFNGLPROGRAMLOCALPARAMETER4FARBPROC; // ARB only
- ProgramLocalParameter4fv: PFNGLPROGRAMLOCALPARAMETER4FVARBPROC; // ARB only
- GetProgramEnvParameterdv: PFNGLGETPROGRAMENVPARAMETERDVARBPROC; // ARB only
- GetProgramEnvParameterfv: PFNGLGETPROGRAMENVPARAMETERFVARBPROC; // ARB only
- GetProgramLocalParameterdv: PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC;
- // ARB only
- GetProgramLocalParameterfv: PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC;
- // ARB only
- TexImage2DMultisample: PFNGLTEXIMAGE2DMULTISAMPLEPROC;
- TexImage3DMultisample: PFNGLTEXIMAGE3DMULTISAMPLEPROC;
- GetMultisamplefv: PFNGLGETMULTISAMPLEFVPROC;
- SampleMaski: PFNGLSAMPLEMASKIPROC;
- ProvokingVertex: PFNGLPROVOKINGVERTEXPROC;
- FenceSync: PFNGLFENCESYNCPROC;
- IsSync: PFNGLISSYNCPROC;
- DeleteSync: PFNGLDELETESYNCPROC;
- ClientWaitSync: PFNGLCLIENTWAITSYNCPROC;
- WaitSync: PFNGLWAITSYNCPROC;
- GetInteger64v: PFNGLGETINTEGER64VPROC;
- GetSynciv: PFNGLGETSYNCIVPROC;
- BlendEquationi: PFNGLBLENDEQUATIONIPROC;
- BlendEquationSeparatei: PFNGLBLENDEQUATIONSEPARATEIPROC;
- BlendFunci: PFNGLBLENDFUNCIPROC;
- BlendFuncSeparatei: PFNGLBLENDFUNCSEPARATEIPROC;
- MinSampleShading: PFNGLMINSAMPLESHADINGPROC;
- GenSamplers: PFNGLGENSAMPLERSPROC;
- DeleteSamplers: PFNGLDELETESAMPLERSPROC;
- IsSampler: PFNGLISSAMPLERPROC;
- BindSampler: PFNGLBINDSAMPLERPROC;
- SamplerParameteri: PFNGLSAMPLERPARAMETERIPROC;
- SamplerParameteriv: PFNGLSAMPLERPARAMETERIVPROC;
- SamplerParameterf: PFNGLSAMPLERPARAMETERFPROC;
- SamplerParameterfv: PFNGLSAMPLERPARAMETERFVPROC;
- SamplerParameterIiv: PFNGLSAMPLERPARAMETERIIVPROC;
- SamplerParameterIuiv: PFNGLSAMPLERPARAMETERIUIVPROC;
- GetSamplerParameteriv: PFNGLGETSAMPLERPARAMETERIVPROC;
- GetSamplerParameterIiv: PFNGLGETSAMPLERPARAMETERIIVPROC;
- GetSamplerParameterfv: PFNGLGETSAMPLERPARAMETERFVPROC;
- GetSamplerParameterIfv: PFNGLGETSAMPLERPARAMETERIFVPROC;
- CopyImageSubData: PFNGLCopyImageSubData;
- TexBufferRange: PFNGLTexBufferRange;
- TextureBufferRange: PFNGLTextureBufferRange;
- TexStorage2DMultisample: PFNGLTexStorage2DMultisample;
- TexStorage3DMultisample: PFNGLTexStorage3DMultisample;
- TextureStorage2DMultisample: PFNGLTextureStorage2DMultisample;
- TextureStorage3DMultisample: PFNGLTextureStorage3DMultisample;
- BufferStorage: PFNGLBufferStorage;
- ClearTexImage: PFNGLClearTexImage;
- ClearTexSubImage: PFNGLClearTexSubImage;
- BindBuffersBase: PFNGLBindBuffersBase;
- BindBuffersRange: PFNGLBindBuffersRange;
- BindTextures: PFNGLBindTextures;
- BindSamplers: PFNGLBindSamplers;
- BindImageTextures: PFNGLBindImageTextures;
- BindVertexBuffers: PFNGLBindVertexBuffers;
- TextureView: PFNGLTextureView;
- // ------------------------------ Direct access
- ClientAttribDefault: PFNGLCLIENTATTRIBDEFAULTEXTPROC;
- PushClientAttribDefault: PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC;
- MatrixLoadf: PFNGLMATRIXLOADFEXTPROC;
- MatrixLoadd: PFNGLMATRIXLOADDEXTPROC;
- MatrixMultf: PFNGLMATRIXMULTFEXTPROC;
- MatrixMultd: PFNGLMATRIXMULTDEXTPROC;
- MatrixLoadIdentity: PFNGLMATRIXLOADIDENTITYEXTPROC;
- MatrixRotatef: PFNGLMATRIXROTATEFEXTPROC;
- MatrixRotated: PFNGLMATRIXROTATEDEXTPROC;
- MatrixScalef: PFNGLMATRIXSCALEFEXTPROC;
- MatrixScaled: PFNGLMATRIXSCALEDEXTPROC;
- MatrixTranslatef: PFNGLMATRIXTRANSLATEFEXTPROC;
- MatrixTranslated: PFNGLMATRIXTRANSLATEDEXTPROC;
- MatrixFrustum: PFNGLMATRIXFRUSTUMEXTPROC;
- MatrixOrtho: PFNGLMATRIXORTHOEXTPROC;
- MatrixPop: PFNGLMATRIXPOPEXTPROC;
- MatrixPush: PFNGLMATRIXPUSHEXTPROC;
- MatrixLoadTransposef: PFNGLMATRIXLOADTRANSPOSEFEXTPROC;
- MatrixLoadTransposed: PFNGLMATRIXLOADTRANSPOSEDEXTPROC;
- MatrixMultTransposef: PFNGLMATRIXMULTTRANSPOSEFEXTPROC;
- MatrixMultTransposed: PFNGLMATRIXMULTTRANSPOSEDEXTPROC;
- TextureParameterfv: PFNGLTEXTUREPARAMETERFVEXTPROC;
- TextureParameteri: PFNGLTEXTUREPARAMETERIEXTPROC;
- TextureParameteriv: PFNGLTEXTUREPARAMETERIVEXTPROC;
- TextureImage1D: PFNGLTEXTUREIMAGE1DEXTPROC;
- TextureImage2D: PFNGLTEXTUREIMAGE2DEXTPROC;
- TextureSubImage1D: PFNGLTEXTURESUBIMAGE1DEXTPROC;
- TextureSubImage2D: PFNGLTEXTURESUBIMAGE2DEXTPROC;
- CopyTextureImage1D: PFNGLCOPYTEXTUREIMAGE1DEXTPROC;
- CopyTextureImage2D: PFNGLCOPYTEXTUREIMAGE2DEXTPROC;
- CopyTextureSubImage1D: PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC;
- CopyTextureSubImage2D: PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC;
- GetTextureImage: PFNGLGETTEXTUREIMAGEEXTPROC;
- GetTextureParameterfv: PFNGLGETTEXTUREPARAMETERFVEXTPROC;
- GetTextureParameteriv: PFNGLGETTEXTUREPARAMETERIVEXTPROC;
- GetTextureLevelParameterfv: PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC;
- GetTextureLevelParameteriv: PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC;
- TextureImage3D: PFNGLTEXTUREIMAGE3DEXTPROC;
- TextureSubImage3D: PFNGLTEXTURESUBIMAGE3DEXTPROC;
- CopyTextureSubImage3D: PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC;
- MultiTexParameterf: PFNGLMULTITEXPARAMETERFEXTPROC;
- MultiTexParameterfv: PFNGLMULTITEXPARAMETERFVEXTPROC;
- MultiTexParameteri: PFNGLMULTITEXPARAMETERIEXTPROC;
- MultiTexParameteriv: PFNGLMULTITEXPARAMETERIVEXTPROC;
- MultiTexImage1D: PFNGLMULTITEXIMAGE1DEXTPROC;
- MultiTexImage2D: PFNGLMULTITEXIMAGE2DEXTPROC;
- MultiTexSubImage1D: PFNGLMULTITEXSUBIMAGE1DEXTPROC;
- MultiTexSubImage2D: PFNGLMULTITEXSUBIMAGE2DEXTPROC;
- CopyMultiTexImage1D: PFNGLCOPYMULTITEXIMAGE1DEXTPROC;
- CopyMultiTexImage2D: PFNGLCOPYMULTITEXIMAGE2DEXTPROC;
- CopyMultiTexSubImage1D: PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC;
- CopyMultiTexSubImage2D: PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC;
- GetMultiTexImage: PFNGLGETMULTITEXIMAGEEXTPROC;
- GetMultiTexParameterfv: PFNGLGETMULTITEXPARAMETERFVEXTPROC;
- GetMultiTexParameteriv: PFNGLGETMULTITEXPARAMETERIVEXTPROC;
- GetMultiTexLevelParameterfv: PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC;
- GetMultiTexLevelParameteriv: PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC;
- MultiTexImage3D: PFNGLMULTITEXIMAGE3DEXTPROC;
- MultiTexSubImage3D: PFNGLMULTITEXSUBIMAGE3DEXTPROC;
- CopyMultiTexSubImage3D: PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC;
- BindMultiTexture: PFNGLBINDMULTITEXTUREEXTPROC;
- EnableClientStateIndexed: PFNGLENABLECLIENTSTATEINDEXEDEXTPROC;
- DisableClientStateIndexed: PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC;
- MultiTexCoordPointer: PFNGLMULTITEXCOORDPOINTEREXTPROC;
- MultiTexEnvf: PFNGLMULTITEXENVFEXTPROC;
- MultiTexEnvfv: PFNGLMULTITEXENVFVEXTPROC;
- MultiTexEnvi: PFNGLMULTITEXENVIEXTPROC;
- MultiTexEnviv: PFNGLMULTITEXENVIVEXTPROC;
- MultiTexGend: PFNGLMULTITEXGENDEXTPROC;
- MultiTexGendv: PFNGLMULTITEXGENDVEXTPROC;
- MultiTexGenf: PFNGLMULTITEXGENFEXTPROC;
- MultiTexGenfv: PFNGLMULTITEXGENFVEXTPROC;
- MultiTexGeni: PFNGLMULTITEXGENIEXTPROC;
- MultiTexGeniv: PFNGLMULTITEXGENIVEXTPROC;
- GetMultiTexEnvfv: PFNGLGETMULTITEXENVFVEXTPROC;
- GetMultiTexEnviv: PFNGLGETMULTITEXENVIVEXTPROC;
- GetMultiTexGendv: PFNGLGETMULTITEXGENDVEXTPROC;
- GetMultiTexGenfv: PFNGLGETMULTITEXGENFVEXTPROC;
- GetMultiTexGeniv: PFNGLGETMULTITEXGENIVEXTPROC;
- GetFloatIndexedv: PFNGLGETFLOATINDEXEDVEXTPROC;
- GetDoubleIndexedv: PFNGLGETDOUBLEINDEXEDVEXTPROC;
- GetPointerIndexedv: PFNGLGETPOINTERINDEXEDVEXTPROC;
- CompressedTextureImage3D: PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC;
- CompressedTextureImage2D: PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC;
- CompressedTextureImage1D: PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC;
- CompressedTextureSubImage3D: PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC;
- CompressedTextureSubImage2D: PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC;
- CompressedTextureSubImage1D: PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC;
- GetCompressedTextureImage: PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC;
- CompressedMultiTexImage3D: PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC;
- CompressedMultiTexImage2D: PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC;
- CompressedMultiTexImage1D: PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC;
- CompressedMultiTexSubImage3D: PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC;
- CompressedMultiTexSubImage2D: PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC;
- CompressedMultiTexSubImage1D: PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC;
- GetCompressedMultiTexImage: PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC;
- NamedProgramString: PFNGLNAMEDPROGRAMSTRINGEXTPROC;
- NamedProgramLocalParameter4d: PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC;
- NamedProgramLocalParameter4dv: PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC;
- NamedProgramLocalParameter4f: PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC;
- NamedProgramLocalParameter4fv: PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC;
- GetNamedProgramLocalParameterdv: PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC;
- GetNamedProgramLocalParameterfv: PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC;
- GetNamedProgramiv: PFNGLGETNAMEDPROGRAMIVEXTPROC;
- GetNamedProgramString: PFNGLGETNAMEDPROGRAMSTRINGEXTPROC;
- NamedProgramLocalParameters4fv: PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC;
- NamedProgramLocalParameterI4i: PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC;
- NamedProgramLocalParameterI4iv: PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC;
- NamedProgramLocalParametersI4iv: PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC;
- NamedProgramLocalParameterI4ui: PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC;
- NamedProgramLocalParameterI4uiv: PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC;
- NamedProgramLocalParametersI4uiv: PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC;
- GetNamedProgramLocalParameterIiv: PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC;
- GetNamedProgramLocalParameterIuiv: PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC;
- TextureParameterIiv: PFNGLTEXTUREPARAMETERIIVEXTPROC;
- TextureParameterIuiv: PFNGLTEXTUREPARAMETERIUIVEXTPROC;
- GetTextureParameterIiv: PFNGLGETTEXTUREPARAMETERIIVEXTPROC;
- GetTextureParameterIuiv: PFNGLGETTEXTUREPARAMETERIUIVEXTPROC;
- MultiTexParameterIiv: PFNGLMULTITEXPARAMETERIIVEXTPROC;
- MultiTexParameterIuiv: PFNGLMULTITEXPARAMETERIUIVEXTPROC;
- GetMultiTexParameterIiv: PFNGLGETMULTITEXPARAMETERIIVEXTPROC;
- GetMultiTexParameterIuiv: PFNGLGETMULTITEXPARAMETERIUIVEXTPROC;
- NamedBufferData: PFNGLNAMEDBUFFERDATAEXTPROC;
- NamedBufferSubData: PFNGLNAMEDBUFFERSUBDATAEXTPROC;
- MapNamedBuffer: PFNGLMAPNAMEDBUFFEREXTPROC;
- UnmapNamedBuffer: PFNGLUNMAPNAMEDBUFFEREXTPROC;
- MapNamedBufferRange: PFNGLMAPNAMEDBUFFERRANGEEXTPROC;
- FlushMappedNamedBufferRange: PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC;
- NamedCopyBufferSubData: PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC;
- GetNamedBufferParameteriv: PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC;
- GetNamedBufferPointerv: PFNGLGETNAMEDBUFFERPOINTERVEXTPROC;
- GetNamedBufferSubData: PFNGLGETNAMEDBUFFERSUBDATAEXTPROC;
- TextureBuffer: PFNGLTEXTUREBUFFEREXTPROC;
- MultiTexBuffer: PFNGLMULTITEXBUFFEREXTPROC;
- NamedRenderbufferStorage: PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC;
- GetNamedRenderbufferParameteriv: PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC;
- CheckNamedFramebufferStatus: PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC;
- NamedFramebufferTexture1D: PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC;
- NamedFramebufferTexture2D: PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC;
- NamedFramebufferTexture3D: PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC;
- NamedFramebufferRenderbuffer: PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC;
- GetNamedFramebufferAttachmentParameteriv: PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC;
- GenerateTextureMipmap: PFNGLGENERATETEXTUREMIPMAPEXTPROC;
- GenerateMultiTexMipmap: PFNGLGENERATEMULTITEXMIPMAPEXTPROC;
- FramebufferDrawBuffer: PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC;
- FramebufferDrawBuffers: PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC;
- FramebufferReadBuffer: PFNGLFRAMEBUFFERREADBUFFEREXTPROC;
- GetFramebufferParameteriv: PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC;
- NamedRenderbufferStorageMultisample: PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC;
- NamedRenderbufferStorageMultisampleCoverage: PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC;
- NamedFramebufferTexture: PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC;
- NamedFramebufferTextureLayer: PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC;
- NamedFramebufferTextureFace: PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC;
- TextureRenderbuffer: PFNGLTEXTURERENDERBUFFEREXTPROC;
- MultiTexRenderbuffer: PFNGLMULTITEXRENDERBUFFEREXTPROC;
- // ------------------------------ Debugging
- // Special Gremedy debugger extension
- FrameTerminatorGREMEDY: PFNGLFRAMETERMINATORGREMEDYPROC;
- StringMarkerGREMEDY: PFNGLSTRINGMARKERGREMEDYPROC;
- DebugMessageEnableAMDX: procedure(category: Cardinal; severity: Cardinal;
- Count: TGLsizei; var ids: Cardinal; Enabled: boolean);
- PushDebugGroup: PFNGLPushDebugGroup;
- PopDebugGroup: PFNGLPopDebugGroup;
- ObjectLabel: PFNGLObjectLabel;
- GetObjectLabel: PFNGLGetObjectLabel;
- ObjectPtrLabel: PFNGLObjectPtrLabel;
- GetObjectPtrLabel: PFNGLGetObjectPtrLabel;
- DebugMessageCallbackAMDX: procedure(callback: TDebugProcAMD;
- userParam: Pointer);stdcall;
- DebugMessageControl: procedure(type_: Cardinal; Source: Cardinal;
- severity: Cardinal; Count: TGLsizei; var ids: Cardinal; Enabled: boolean);stdcall;
- DebugMessageInsert: procedure(Source: Cardinal; severity: Cardinal;
- id: Cardinal; length: TGLsizei; const buf: PAnsiChar);stdcall;
- DebugMessageCallback: procedure(callback: TDebugProc; userParam: Pointer);stdcall;
- GetDebugMessageLog: function(Count: Cardinal; bufSize: TGLsizei;
- var severity: Cardinal; var severities: Cardinal; var ids: Cardinal;
- var lengths: TGLsizei; messageLog: PAnsiChar): Cardinal;stdcall;
- // ------------------------------ Interrop
- CreateSyncFromCLevent: PFNGLCreateSyncFromCLevent;
- VDPAUInitNV: procedure(const vdpDevice: Pointer;
- const getProcAddress: Pointer); stdcall;
- VDPAUFiniNV: procedure(); stdcall;
- VDPAURegisterVideoSurfaceNV: function(const vdpSurface: Pointer;
- target: Cardinal; numTextureNames: TGLsizei; const textureNames: PGLuint)
- : TGLvdpauSurfaceNV;stdcall;
- VDPAURegisterOutputSurfaceNV: function(const vdpSurface: Pointer;
- target: Cardinal; numTextureNames: TGLsizei; const textureNames: PGLuint)
- : TGLvdpauSurfaceNV;stdcall;
- VDPAUIsSurfaceNV: procedure(surface: TGLvdpauSurfaceNV);stdcall;
- VDPAUUnregisterSurfaceNV: procedure(surface: TGLvdpauSurfaceNV);stdcall;
- VDPAUGetSurfaceivNV: procedure(surface: TGLvdpauSurfaceNV; pname: Cardinal;
- bufSize: TGLsizei; length: PGLsizei; values: PGLint);stdcall;
- VDPAUSurfaceAccessNV: procedure(surface: TGLvdpauSurfaceNV;
- access: Cardinal);stdcall;
- VDPAUMapSurfacesNV: procedure(numSurfaces: TGLsizei;
- const surfaces: PGLvdpauSurfaceNV);stdcall;
- VDPAUUnmapSurfacesNV: procedure(numSurface: TGLsizei;
- const surfaces: PGLvdpauSurfaceNV);stdcall;
- // ------------------------------ Path rendering
- GenPathsNV: PFNGLGENPATHSNVPROC;
- DeletePathsNV: PFNGLDELETEPATHSNVPROC;
- IsPathNV: PFNGLISPATHNVPROC;
- PathCommandsNV: PFNGLPATHCOMMANDSNVPROC;
- PathCoordsNV: PFNGLPATHCOORDSNVPROC;
- PathSubCommandsNV: PFNGLPATHSUBCOMMANDSNVPROC;
- PathSubCoordsNV: PFNGLPATHSUBCOORDSNVPROC;
- PathStringNV: PFNGLPATHSTRINGNVPROC;
- PathGlyphsNV: PFNGLPATHGLYPHSNVPROC;
- PathGlyphRangeNV: PFNGLPATHGLYPHRANGENVPROC;
- WeightPathsNV: PFNGLWEIGHTPATHSNVPROC;
- CopyPathNV: PFNGLCOPYPATHNVPROC;
- InterpolatePathsNV: PFNGLINTERPOLATEPATHSNVPROC;
- PathParameterivNV: PFNGLPATHPARAMETERIVNVPROC;
- PathParameteriNV: PFNGLPATHPARAMETERINVPROC;
- PathParameterfvNV: PFNGLPATHPARAMETERFVNVPROC;
- PathParameterfNV: PFNGLPATHPARAMETERFNVPROC;
- PathDashArrayNV: PFNGLPATHDASHARRAYNVPROC;
- PathStencilFuncNV: PFNGLPATHSTENCILFUNCNVPROC;
- StencilFillPathNV: PFNGLSTENCILFILLPATHNVPROC;
- StencilStrokePathNV: PFNGLSTENCILSTROKEPATHNVPROC;
- StencilFillPathInstancedNV: PFNGLSTENCILFILLPATHINSTANCEDNVPROC;
- StencilStrokePathInstancedNV: PFNGLSTENCILSTROKEPATHINSTANCEDNVPROC;
- PathColorGenNV: PFNGLPATHCOLORGENNVPROC;
- PathTexGenNV: PFNGLPATHTEXGENNVPROC;
- PathFogGenNV: PFNGLPATHFOGGENNVPROC;
- CoverFillPathNV: PFNGLCOVERFILLPATHNVPROC;
- CoverStrokePathNV: PFNGLCOVERSTROKEPATHNVPROC;
- CoverFillPathInstancedNV: PFNGLCOVERFILLPATHINSTANCEDNVPROC;
- CoverStrokePathInstancedNV: PFNGLCOVERSTROKEPATHINSTANCEDNVPROC;
- GetPathParameterivNV: PFNGLGETPATHPARAMETERIVNVPROC;
- GetPathParameterfvNV: PFNGLGETPATHPARAMETERFVNVPROC;
- GetPathCommandsNV: PFNGLGETPATHCOMMANDSNVPROC;
- GetPathCoordsNV: PFNGLGETPATHCOORDSNVPROC;
- GetPathDashArrayNV: PFNGLGETPATHDASHARRAYNVPROC;
- GetPathMetricsNV: PFNGLGETPATHMETRICSNVPROC;
- GetPathMetricRangeNV: PFNGLGETPATHMETRICRANGENVPROC;
- GetPathSpacingNV: PFNGLGETPATHSPACINGNVPROC;
- GetPathColorGenivNV: PFNGLGETPATHCOLORGENIVNVPROC;
- GetPathColorGenfvNV: PFNGLGETPATHCOLORGENFVNVPROC;
- GetPathTexGenivNV: PFNGLGETPATHTEXGENIVNVPROC;
- GetPathTexGenfvNV: PFNGLGETPATHTEXGENFVNVPROC;
- IsPointInFillPathNV: PFNGLISPOINTINFILLPATHNVPROC;
- IsPointInStrokePathNV: PFNGLISPOINTINSTROKEPATHNVPROC;
- GetPathLengthNV: PFNGLGETPATHLENGTHNVPROC;
- PointAlongPathNV: PFNGLPOINTALONGPATHNVPROC;
- PathStencilDepthOffsetNV: PFNGLPATHSTENCILDEPTHOFFSETNVPROC;
- PathCoverDepthFuncNV: PFNGLPATHCOVERDEPTHFUNCNVPROC;
- {$IFDEF SUPPORT_WGL}
- // ###########################################################
- // function and procedure definitions for
- // ARB approved WGL extensions
- // ###########################################################
- // ARB approved WGL extension checks
- W_ARB_buffer_region, W_ARB_create_context, W_ARB_create_context_profile,
- W_ARB_extensions_string, W_ARB_framebuffer_sRGB, W_ARB_make_current_read,
- W_ARB_multisample, W_ARB_pbuffer, W_ARB_pixel_format,
- W_ARB_pixel_format_float, W_ARB_render_texture,
- // Vendor/EXT WGL extension checks
- W_ATI_pixel_format_float, W_EXT_framebuffer_sRGB,
- W_EXT_pixel_format_packed_float, W_EXT_swap_control, W_NV_gpu_affinity,
- W_EXT_create_context_es2_profile, W_NV_DX_interop,
- W_NV_DX_interop2: boolean;
- // WGL_buffer_region (ARB #4)
- WCreateBufferRegionARB: PFNWGLCREATEBUFFERREGIONARBPROC;
- WDeleteBufferRegionARB: PFNWGLDELETEBUFFERREGIONARBPROC;
- WSaveBufferRegionARB: PFNWGLSAVEBUFFERREGIONARBPROC;
- WRestoreBufferRegionARB: PFNWGLRESTOREBUFFERREGIONARBPROC;
- // WGL_ARB_extensions_string (ARB #8)
- WGetExtensionsStringARB: PFNWGLGETEXTENSIONSSTRINGARBPROC;
- // WGL_ARB_pixel_format (ARB #9)
- WGetPixelFormatAttribivARB: PFNWGLGETPIXELFORMATATTRIBIVARBPROC;
- WGetPixelFormatAttribfvARB: PFNWGLGETPIXELFORMATATTRIBFVARBPROC;
- WChoosePixelFormatARB: PFNWGLCHOOSEPIXELFORMATARBPROC;
- // WGL_make_current_read (ARB #10)
- WMakeContextCurrentARB: PFNWGLMAKECONTEXTCURRENTARBPROC;
- WGetCurrentReadDCARB: PFNWGLGETCURRENTREADDCARBPROC;
- // WGL_ARB_pbuffer (ARB #11)
- WCreatePbufferARB: PFNWGLCREATEPBUFFERARBPROC;
- WGetPbufferDCARB: PFNWGLGETPBUFFERDCARBPROC;
- WReleasePbufferDCARB: PFNWGLRELEASEPBUFFERDCARBPROC;
- WDestroyPbufferARB: PFNWGLDESTROYPBUFFERARBPROC;
- WQueryPbufferARB: PFNWGLQUERYPBUFFERARBPROC;
- // WGL_ARB_render_texture (ARB #20)
- WBindTexImageARB: PFNWGLBINDTEXIMAGEARBPROC;
- WReleaseTexImageARB: PFNWGLRELEASETEXIMAGEARBPROC;
- WSetPbufferAttribARB: PFNWGLSETPBUFFERATTRIBARBPROC;
- // WGL_ARB_create_context (ARB #55)
- WCreateContextAttribsARB: PFNWGLCREATECONTEXTATTRIBSARBPROC;
- // WGL_NV_gpu_affinity
- WEnumGpusNV: PFNWGLENUMGPUSNVPROC;
- WEnumGpuDevicesNV: PFNWGLENUMGPUDEVICESNVPROC;
- WCreateAffinityDCNV: PFNWGLCREATEAFFINITYDCNVPROC;
- WEnumGpusFromAffinityDCNV: PFNWGLENUMGPUSFROMAFFINITYDCNVPROC;
- WDeleteDCNV: PFNWGLDELETEDCNVPROC;
- // WGL_NV_DX_interop (EXT #407)
- WDXSetResourceShareHandleNV: PFNWGLDXSETRESOURCESHAREHANDLEPROC;
- WDXOpenDeviceNV: PFNWGLDXOPENDEVICEPROC;
- WDXCloseDeviceNV: PFNWGLDXCLOSEDEVICEPROC;
- WDXRegisterObjectNV: PFNWGLDXREGISTEROBJECTPROC;
- WDXUnregisterObjectNV: PFNWGLDXUNREGISTEROBJECTPROC;
- WDXObjectAccessNV: PFNWGLDXOBJECTACCESSPROC;
- WDXLockObjectsNV: PFNWGLDXLOCKOBJECTSPROC;
- WDXUnlockObjectsNV: PFNWGLDXUNLOCKOBJECTSNVPROC;
- // ###########################################################
- // function and procedure definitions for
- // Vendor/EXT WGL extensions
- // ###########################################################
- // WGL_EXT_swap_control (EXT #172)
- WSwapIntervalEXT: PFNWGLSWAPINTERVALEXTPROC;
- WGetSwapIntervalEXT: PFNWGLGETSWAPINTERVALEXTPROC;
- // GL_NV_vertex_array_range (EXT #190)
- WAllocateMemoryNV: PFNWGLALLOCATEMEMORYNVPROC;
- WFreeMemoryNV: PFNWGLFREEMEMORYNVPROC;
- {$ENDIF SUPPORT_WGL}
- // ------------------------------ EGL function/procedure
- {$IFDEF EGL_SUPPORT}
- OES_depth24, OES_depth32, OES_depth_texture, OES_element_index_uint,
- OES_fbo_render_mipmap, OES_get_program_binary, OES_mapbuffer,
- OES_packed_depth_stencil, OES_rgb8_rgba8, OES_standard_derivatives,
- OES_texture_3D, OES_texture_float, OES_texture_float_linear,
- OES_texture_half_float, OES_texture_half_float_linear, OES_texture_npot,
- OES_vertex_array_object, OES_vertex_half_float: boolean;
- EGetError: function: EGLint;stdcall;
- EGetDisplay: function(display_id: EGLNativeDisplayType): EGLDisplay;stdcall;
- EInitialize: function(dpy: EGLDisplay; major: pEGLint; minor: pEGLint)
- : EGLBoolean;stdcall;
- ETerminate: function(dpy: EGLDisplay): EGLBoolean;stdcall;
- EQueryString: function(dpy: EGLDisplay; name: EGLint): pchar;stdcall;
- EGetConfigs: function(dpy: EGLDisplay; configs: pEGLConfig;
- config_size: EGLint; num_config: pEGLint): EGLBoolean;stdcall;
- EChooseConfig: function(dpy: EGLDisplay; attrib_list: pEGLint;
- configs: pEGLConfig; config_size: EGLint; num_config: pEGLint)
- : EGLBoolean;stdcall;
- EGetConfigAttrib: function(dpy: EGLDisplay; config: EGLConfig;
- attribute: EGLint; Value: pEGLint): EGLBoolean;stdcall;
- ECreateWindowSurface: function(dpy: EGLDisplay; config: EGLConfig;
- win: EGLNativeWindowType; attrib_list: pEGLint): EGLSurface;stdcall;
- ECreatePbufferSurface: function(dpy: EGLDisplay; config: EGLConfig;
- attrib_list: pEGLint): EGLSurface;stdcall;
- ECreatePixmapSurface: function(dpy: EGLDisplay; config: EGLConfig;
- pixmap: EGLNativePixmapType; attrib_list: pEGLint): EGLSurface;stdcall;
- EDestroySurface: function(dpy: EGLDisplay; surface: EGLSurface): EGLBoolean;stdcall;
- EQuerySurface: function(dpy: EGLDisplay; surface: EGLSurface;
- attribute: EGLint; Value: pEGLint): EGLBoolean;stdcall;
- EBindAPI: function(api: EGLenum): EGLBoolean;stdcall;
- EQueryAPI: function: EGLenum;stdcall;
- EWaitClient: function: EGLBoolean;stdcall;
- EReleaseThread: function: EGLBoolean;stdcall;
- ECreatePbufferFromClientBuffer: function(dpy: EGLDisplay; buftype: EGLenum;
- buffer: EGLClientBuffer; config: EGLConfig; attrib_list: pEGLint)
- : EGLSurface;stdcall;
- ESurfaceAttrib: function(dpy: EGLDisplay; surface: EGLSurface;
- attribute: EGLint; Value: EGLint): EGLBoolean;stdcall; EBindTexImage: function(dpy: EGLDisplay; surface: EGLSurface;
- buffer: EGLint): EGLBoolean;stdcall;
- EReleaseTexImage: function(dpy: EGLDisplay; surface: EGLSurface;
- buffer: EGLint): EGLBoolean;stdcall;
- ESwapInterval: function(dpy: EGLDisplay; interval: EGLint): EGLBoolean;stdcall;
- ECreateContext: function(dpy: EGLDisplay; config: EGLConfig;
- share_context: EGLContext; attrib_list: pEGLint): EGLContext;stdcall;
- EDestroyContext: function(dpy: EGLDisplay; ctx: EGLContext): EGLBoolean;stdcall;
- EMakeCurrent: function(dpy: EGLDisplay; draw: EGLSurface; read: EGLSurface;
- ctx: EGLContext): EGLBoolean;stdcall;
- EGetCurrentContext: function: EGLContext;stdcall;
- EGetCurrentSurface: function(readdraw: EGLint): EGLSurface;stdcall;
- EGetCurrentDisplay: function: EGLDisplay;stdcall;
- EQueryContext: function(dpy: EGLDisplay; ctx: EGLContext; attribute: EGLint;
- Value: pEGLint): EGLBoolean;stdcall;
- EWaitGL: function: EGLBoolean;stdcall;
- EWaitNative: function(engine: EGLint): EGLBoolean;stdcall;
- ESwapBuffers: function(dpy: EGLDisplay; surface: EGLSurface): EGLBoolean;stdcall;
- ECopyBuffers: function(dpy: EGLDisplay; surface: EGLSurface;
- target: EGLNativePixmapType): EGLBoolean;stdcall;
- {$ENDIF EGL_SUPPORT}
- // ------------------------------ locate functions/procedures for OpenGL Utility (GLU) extensions'} {$ENDIF}
- // ###########################################################
- // locate functions and procedures for
- // GLU extensions
- // ###########################################################
- UNurbsCallbackDataEXT: procedure(nurb: PGLUnurbs; userData: Pointer);stdcall;
- UNewNurbsTessellatorEXT: function: PGLUnurbs;stdcall;
- UDeleteNurbsTessellatorEXT: procedure(nurb: PGLUnurbs);stdcall;
- constructor Create;
- procedure Initialize(ATemporary: boolean = False);
- procedure Close;
- procedure CheckError;
- procedure ClearError;
- property IsInitialized: boolean read FInitialized;
- property DebugMode: boolean read FDebug write FDebug;
- end; // TGLExtensionsAndEntryPoints
- // ------------------------------ Windows OpenGL (WGL) support functions
- {$IFDEF MSWINDOWS} // {$IFDEF SUPPORT_WGL}
- ///function wglGetProcAddress(ProcName: PAnsiChar): Pointer; stdcall; external opengl32;
- function wglCopyContext(p1: HGLRC; p2: HGLRC; p3: cardinal): BOOL; stdcall; external opengl32;
- function wglCreateContext(DC: HDC): HGLRC; stdcall; external opengl32;
- function wglCreateLayerContext(p1: HDC; p2: integer): HGLRC; stdcall; external opengl32;
- function wglDeleteContext(p1: HGLRC): BOOL; stdcall; external opengl32;
- ///function wglDescribeLayerPlane(p1: HDC; p2, p3: integer; p4: cardinal; var p5: TLayerPlaneDescriptor): BOOL; stdcall; external opengl32;
- function wglGetCurrentContext: HGLRC; stdcall; external opengl32;
- function wglGetCurrentDC: HDC; stdcall; external opengl32;
- ///function wglGetLayerPaletteEntries(p1: HDC; p2, p3, p4: integer; var pcr): integer; stdcall; external opengl32;
- function wglMakeCurrent(DC: HDC; p2: HGLRC): BOOL; stdcall; external opengl32;
- function wglRealizeLayerPalette(p1: HDC; p2: integer; p3: BOOL): BOOL; stdcall; external opengl32;
- ///function wglSetLayerPaletteEntries(p1: HDC; p2, p3, p4: integer; var pcr): integer; stdcall; external opengl32;
- function wglShareLists(p1, p2: HGLRC): BOOL; stdcall; external opengl32;
- function wglSwapLayerBuffers(p1: HDC; p2: cardinal): BOOL; stdcall; external opengl32;
- (*
- function wglSwapMultipleBuffers(p1: UINT; const p2: PWGLSwap): DWORD; stdcall; external opengl32;
- function wglUseFontBitmapsA(DC: HDC; p2, p3, p4: DWORD): BOOL; stdcall; external opengl32;
- function wglUseFontOutlinesA(p1: HDC; p2, p3, p4: DWORD; p5, p6: single;
- p7: integer; p8: PGlyphMetricsFloat): BOOL; stdcall; external opengl32;
- function wglUseFontBitmapsW(DC: HDC; p2, p3, p4: DWORD): BOOL; stdcall; external opengl32;
- function wglUseFontOutlinesW(p1: HDC; p2, p3, p4: DWORD; p5, p6: single;
- p7: integer; p8: PGlyphMetricsFloat): BOOL; stdcall; external opengl32;
- function wglUseFontBitmaps(DC: HDC; p2, p3, p4: DWORD): BOOL; stdcall; external opengl32 Name 'wglUseFontBitmapsA';
- function wglUseFontOutlines(p1: HDC; p2, p3, p4: DWORD; p5, p6: single;
- p7: integer; p8: PGlyphMetricsFloat): BOOL; stdcall; external opengl32 Name 'wglUseFontOutlinesA';
- *)
- {$ENDIF}
- function gluErrorString(errCode: Cardinal): PAnsiChar; stdcall; external glu32;
- function gluGetString(Name: Cardinal): PAnsiChar; stdcall; external glu32;
- procedure gluOrtho2D(left, right, bottom, top: TGLdouble);
- stdcall; external glu32;
- procedure gluPerspective(fovy, aspect, zNear, zFar: TGLdouble);stdcall; external glu32;
- procedure gluPickMatrix(X, y, Width, Height: TGLdouble; const Viewport: TVector4i);
- stdcall; external glu32;
- procedure gluLookAt(eyex, eyey, eyez, centerx, centery, centerz, upx, upy, upz: TGLdouble);
- stdcall; external glu32;
- function gluProject(objx, objy, objz: TGLdouble; const modelMatrix: TMatrix4d;
- const projMatrix: TMatrix4d; const Viewport: TVector4i;
- winx, winy, winz: PGLdouble): TGLint;stdcall; external glu32;
- function gluUnProject(winx, winy, winz: TGLdouble; const modelMatrix: TMatrix4d;
- const projMatrix: TMatrix4d; const Viewport: TVector4i;
- objx, objy, objz: PGLdouble): TGLint;stdcall; external glu32;
- function gluScaleImage(format: Cardinal; widthin, heightin: TGLint;
- typein: Cardinal; datain: Pointer; widthout, heightout: TGLint;
- typeout: Cardinal; dataout: Pointer): TGLint; stdcall; external glu32;
- function gluBuild1DMipmaps(target: Cardinal; Components, Width: TGLint;
- format, atype: Cardinal; Data: Pointer): TGLint; stdcall; external glu32;
- function gluBuild2DMipmaps(target: Cardinal; Components, Width, Height: TGLint;
- format, atype: Cardinal; Data: Pointer): TGLint; stdcall; external glu32;
- function gluNewQuadric: PGLUquadric; stdcall; external glu32;
- procedure gluDeleteQuadric(state: PGLUquadric);stdcall; external glu32;
- procedure gluQuadricNormals(quadObject: PGLUquadric; normals: Cardinal);stdcall; external glu32;
- procedure gluQuadricTexture(quadObject: PGLUquadric; textureCoords: TGLboolean);
- stdcall; external glu32;
- procedure gluQuadricOrientation(quadObject: PGLUquadric; orientation: Cardinal);
- stdcall; external glu32;
- procedure gluQuadricDrawStyle(quadObject: PGLUquadric; drawStyle: Cardinal);
- stdcall; external glu32;
- procedure gluCylinder(quadObject: PGLUquadric;
- baseRadius, topRadius, Height: TGLdouble; slices, stacks: TGLint);
- stdcall; external glu32;
- procedure gluDisk(quadObject: PGLUquadric; innerRadius, outerRadius: TGLdouble;
- slices, loops: TGLint);
- stdcall; external glu32;
- procedure gluPartialDisk(quadObject: PGLUquadric;
- innerRadius, outerRadius: TGLdouble; slices, loops: TGLint;
- startAngle, sweepAngle: TGLdouble);
- stdcall; external glu32;
- procedure gluSphere(quadObject: PGLUquadric; radius: TGLdouble;
- slices, stacks: TGLint);
- stdcall; external glu32;
- procedure gluQuadricCallback(quadObject: PGLUquadric; which: Cardinal;
- fn: TGLUQuadricErrorProc); {$IFDEF MSWINDOWS} stdcall; {$ELSE} cdecl;
- {$ENDIF} external glu32;
- function gluNewTess: PGLUtesselator; stdcall; external glu32;
- procedure gluDeleteTess(tess: PGLUtesselator);
- stdcall; external glu32;
- procedure gluTessBeginPolygon(tess: PGLUtesselator; polygon_data: Pointer);
- {$IFDEF MSWINDOWS} stdcall; {$ELSE} cdecl;
- {$ENDIF} external glu32;
- procedure gluTessBeginContour(tess: PGLUtesselator); stdcall; external glu32;
- procedure gluTessVertex(tess: PGLUtesselator; const coords: TVector3d;
- Data: Pointer);
- stdcall; external glu32;
- procedure gluTessEndContour(tess: PGLUtesselator); stdcall; external glu32;
- procedure gluTessEndPolygon(tess: PGLUtesselator);
- stdcall; external glu32;
- procedure gluTessProperty(tess: PGLUtesselator; which: Cardinal;
- Value: TGLdouble);stdcall; external glu32;
- procedure gluTessNormal(tess: PGLUtesselator; X, y, z: TGLdouble);stdcall; external glu32;
- procedure gluTessCallback(tess: PGLUtesselator; which: Cardinal; fn: Pointer);stdcall; external glu32;
- procedure gluGetTessProperty(tess: PGLUtesselator; which: Cardinal; Value: PGLdouble);
- stdcall; external glu32;
- function gluNewNurbsRenderer: PGLUnurbs; stdcall; external glu32;
- procedure gluDeleteNurbsRenderer(nobj: PGLUnurbs);
- stdcall; external glu32;
- procedure gluBeginSurface(nobj: PGLUnurbs);
- stdcall; external glu32;
- procedure gluBeginCurve(nobj: PGLUnurbs);
- stdcall; external glu32;
- procedure gluEndCurve(nobj: PGLUnurbs);
- stdcall; external glu32;
- procedure gluEndSurface(nobj: PGLUnurbs);
- stdcall; external glu32;
- procedure gluBeginTrim(nobj: PGLUnurbs);
- stdcall; external glu32;
- procedure gluEndTrim(nobj: PGLUnurbs);
- stdcall; external glu32;
- procedure gluPwlCurve(nobj: PGLUnurbs; Count: TGLint; points: PGLfloat; stride: TGLint; atype: Cardinal);
- stdcall; external glu32;
- procedure gluNurbsCurve(nobj: PGLUnurbs; nknots: TGLint; knot: PGLfloat;
- stride: TGLint; ctlarray: PGLfloat; order: TGLint; atype: Cardinal);
- stdcall; external glu32;
- procedure gluNurbsSurface(nobj: PGLUnurbs; sknot_count: TGLint; sknot: PGLfloat;
- tknot_count: TGLint; tknot: PGLfloat; s_stride, t_stride: TGLint;
- ctlarray: PGLfloat; sorder, torder: TGLint; atype: Cardinal);
- stdcall; external glu32;
- procedure gluLoadSamplingMatrices(nobj: PGLUnurbs; const modelMatrix: TMatrix4f;
- const projMatrix: TMatrix4f; const Viewport: TVector4i);
- stdcall; external glu32;
- procedure gluNurbsProperty(nobj: PGLUnurbs; aproperty: Cardinal; Value: TGLfloat);
- stdcall; external glu32;
- procedure gluGetNurbsProperty(nobj: PGLUnurbs; aproperty: Cardinal; Value: PGLfloat);
- stdcall; external glu32;
- procedure gluNurbsCallback(nobj: PGLUnurbs; which: Cardinal;
- fn: TGLUNurbsErrorProc);
- stdcall; external glu32;
- procedure gluBeginPolygon(tess: PGLUtesselator);
- stdcall; external glu32;
- procedure gluNextContour(tess: PGLUtesselator; atype: Cardinal);
- stdcall; external glu32;
- procedure gluEndPolygon(tess: PGLUtesselator);
- stdcall; external glu32;
- function GetProcAddressGLLib(ProcName: PAnsiChar): Pointer;
- function GetProcAddressGLS(ProcName: PAnsiChar): Pointer;
- procedure CloseOpenGL;
- function InitOpenGL: boolean;
- function InitOpenGLFromLibrary(const GLName, GLUName: string): boolean;
- function IsOpenGLInitialized: boolean;
- // compatibility routines
- procedure UnloadOpenGL;
- function LoadOpenGL: boolean;
- function LoadOpenGLFromLibrary(GLName, GLUName: string): boolean;
- function IsOpenGLLoaded: boolean;
- function IsMesaGL: boolean;
- procedure TrimAndSplitVersionString(buffer: string; var max, min: integer);
- function IsVersionMet(MajorVersion, MinorVersion, actualMajorVersion,
- actualMinorVersion: integer): boolean;
- //------------------------------------------------------------------
- implementation
- //------------------------------------------------------------------
- const
- glPrefix = 'gl';
- {$IFDEF MSWINDOWS}
- // ************** Windows specific ********************
- const
- INVALID_MODULEHANDLE = 0;
- var
- GLHandle: HINST;
- GLUHandle: HINST;
- {$IFDEF EGL_SUPPORT}
- EGLHandle: HINST;
- EGL2Handle: HINST;
- {$ENDIF}
- function GetProcAddressGLS(ProcName: PAnsiChar): Pointer;
- begin
- {$IFNDEF EGL_SUPPORT}
- Result := wglGetProcAddress(ProcName);
- {$ELSE}
- Result := getProcAddress(EGL2Handle, ProcName);
- {$ENDIF}
- end;
- {$IFDEF EGL_SUPPORT}
- function GetProcAddressEGL(ProcName: PAnsiChar): Pointer;
- begin
- Result := getProcAddress(EGLHandle, ProcName);
- end;
- {$ENDIF}
- {$ENDIF} //MSWINDOWS
- function GetProcAddressGLLib(ProcName: PAnsiChar): Pointer;
- {$IFDEF CROSSVCL}
- var
- UniProcName: string;
- {$ENDIF}
- begin
- {$IFDEF CROSSVCL}
- UniProcName := ProcName;
- Result := getProcAddress(GLHandle, PChar(UniProcName));
- {$ELSE}
- Result := getProcAddress(GLHandle, ProcName);
- {$ENDIF}
- end;
- var
- vNotInformed: boolean = True;
- procedure DebugCallBack(Source: Cardinal; type_: Cardinal; id: Cardinal;
- severity: Cardinal; length: TGLsizei; const message: PAnsiChar;
- userParam: Pointer);
- stdcall;
- begin
- {$IFDEF USE_LOGGING}
- if length > 0 then
- GLSLogger.LogDebug(string(message));
- {$ENDIF}
- end;
- procedure DebugCallBackAMD(id: Cardinal; category: Cardinal; severity: Cardinal;
- length: TGLsizei; message: PAnsiChar; userParam: Pointer);
- stdcall;
- begin
- if length > 0 then
- GLSLogger.LogDebug(string(message));
- end;
- constructor TGLExtensionsAndEntryPoints.Create;
- begin
- FInitialized := False;
- end;
- procedure glCap;stdcall;
- begin
- {$IFDEF USE_LOGGING}
- GLSLogger.LogError('Call OpenGL function with undefined entry point');
- {$ENDIF}
- Abort;
- end;
- function TGLExtensionsAndEntryPoints.GetAddress(const ProcName: string): Pointer;
- var
- vName: string;
- begin
- vName := glPrefix + ProcName;
- Result := GetProcAddressGLS(PAnsiChar(AnsiString(vName)));
- if Result = nil then
- begin
- vName := glPrefix + ProcName + 'ARB';
- Result := GetProcAddressGLS(PAnsiChar(AnsiString(vName)));
- if Result = nil then
- begin
- vName := glPrefix + ProcName;
- Result := GetProcAddressGLLib(PAnsiChar(AnsiString(vName)));
- if Result = nil then
- begin
- vName := glPrefix + ProcName + 'EXT';
- Result := GetProcAddressGLS(PAnsiChar(AnsiString(vName)));
- if Result = nil then
- begin
- vName := glPrefix + ProcName + 'NV';
- Result := GetProcAddressGLS(PAnsiChar(AnsiString(vName)));
- if Result = nil then
- begin
- vName := glPrefix + ProcName + 'ATI';
- Result := GetProcAddressGLS(PAnsiChar(AnsiString(vName)));
- if Result = nil then
- begin
- vName := glPrefix + ProcName + 'OES';
- Result := GetProcAddressGLS(PAnsiChar(AnsiString(vName)));
- if Result = nil then
- Result := @glCap;
- end;
- end;
- end;
- end;
- end;
- end;
- {$IFDEF USE_OPENGL_DEBUG}
- if Result <> @glCap then
- GLSLogger.LogDebug('Finded entry point of ' + vName)
- else
- GLSLogger.LogDebug('Can''t find entry point of ' + vName);
- {$ENDIF}
- end;
- function TGLExtensionsAndEntryPoints.GetAddressAlt(const ProcName1,
- ProcName2: string): Pointer;
- begin
- Result := GetAddress(ProcName1);
- if Result = @glCap then
- Result := GetAddress(ProcName2);
- end;
- function TGLExtensionsAndEntryPoints.GetAddressNoSuffixes
- (const ProcName: string): Pointer;
- var
- vName: string;
- begin
- vName := glPrefix + ProcName;
- Result := GetProcAddressGLS(PAnsiChar(AnsiString(vName)));
- if Result = nil then
- Result := @glCap;
- {$IFDEF USE_OPENGL_DEBUG}
- if Result <> @glCap then
- GLSLogger.LogDebug('Finded entry point of ' + vName)
- else
- GLSLogger.LogDebug('Can''t find entry point of ' + vName);
- {$ENDIF}
- end;
- function TGLExtensionsAndEntryPoints.GetCapAddress: Pointer;
- begin
- Result := @glCap;
- end;
- procedure TGLExtensionsAndEntryPoints.CheckError;
- var
- glError: Cardinal;
- Count: word;
- begin
- if FInitialized then
- try
- glError := GetError();
- if glError <> GL_NO_ERROR then
- begin
- Count := 0;
- try
- while (GetError <> GL_NO_ERROR) and (Count < 6) do
- Inc(Count);
- except
- end;
- if not(FDebug and ARB_debug_output) then
- case glError of
- GL_INVALID_ENUM:
- GLSLogger.LogError(format(strOpenGLError, ['Invalid enum']));
- GL_INVALID_VALUE:
- GLSLogger.LogError(format(strOpenGLError, ['Invalid value']));
- GL_INVALID_OPERATION:
- GLSLogger.LogError(format(strOpenGLError,
- ['Invalid Operation']));
- GL_OUT_OF_MEMORY:
- GLSLogger.LogError(format(strOpenGLError, ['Out of memory']));
- end;
- end;
- except
- GLSLogger.LogError(format(strOpenGLError, ['Exception in glGetError']));
- end;
- end;
- procedure TGLExtensionsAndEntryPoints.ClearError;
- var
- n: integer;
- begin
- n := 0;
- while (GetError <> GL_NO_ERROR) and (n < 6) do
- Inc(n);
- end;
- function TGLExtensionsAndEntryPoints.CheckExtension(const Extension
- : string): boolean;
- var
- ExtPos: integer;
- begin
- // First find the position of the extension string as substring in Buffer.
- ExtPos := Pos(Extension, FBuffer);
- Result := ExtPos > 0;
- // Now check that it isn't only a substring of another extension.
- if Result then
- Result := ((ExtPos + length(Extension) - 1) = length(FBuffer)) or
- (FBuffer[ExtPos + length(Extension)] = ' ');
- {$IFDEF USE_OPENGL_DEBUG}
- if Result then
- GLSLogger.LogDebug(Extension);
- {$ENDIF}
- end;
- procedure TGLExtensionsAndEntryPoints.Initialize(ATemporary: boolean);
- var
- i: integer;
- numExt: TGLint;
- MajorVersion, MinorVersion: integer;
- begin
- GLSLogger.LogNotice('Getting OpenGL entry points and extension');
- {$IFDEF SUPPORT_WGL}
- ReadWGLExtensions;
- ReadWGLImplementationProperties;
- {$ENDIF}
- {$IFDEF EGL_SUPPORT}
- ReadEGLExtensions;
- ReadEGLImplementationProperties;
- {$ENDIF}
- GetString := GetAddress('GetString');
- GetStringi := GetAddress('GetStringi');
- GetIntegerv := GetAddress('GetIntegerv');
- GetError := GetAddress('GetError');
- // determine OpenGL versions supported
- FBuffer := string(GetString(GL_VERSION));
- TrimAndSplitVersionString(FBuffer, MajorVersion, MinorVersion);
- VERSION_1_0 := True;
- VERSION_1_1 := IsVersionMet(1, 1, MajorVersion, MinorVersion);
- VERSION_1_2 := IsVersionMet(1, 2, MajorVersion, MinorVersion);
- VERSION_1_3 := IsVersionMet(1, 3, MajorVersion, MinorVersion);
- VERSION_1_4 := IsVersionMet(1, 4, MajorVersion, MinorVersion);
- VERSION_1_5 := IsVersionMet(1, 5, MajorVersion, MinorVersion);
- VERSION_2_0 := IsVersionMet(2, 0, MajorVersion, MinorVersion);
- VERSION_2_1 := IsVersionMet(2, 1, MajorVersion, MinorVersion);
- VERSION_3_0 := IsVersionMet(3, 0, MajorVersion, MinorVersion);
- VERSION_3_1 := IsVersionMet(3, 1, MajorVersion, MinorVersion);
- VERSION_3_2 := IsVersionMet(3, 2, MajorVersion, MinorVersion);
- VERSION_3_3 := IsVersionMet(3, 3, MajorVersion, MinorVersion);
- VERSION_4_0 := IsVersionMet(4, 0, MajorVersion, MinorVersion);
- VERSION_4_1 := IsVersionMet(4, 1, MajorVersion, MinorVersion);
- VERSION_4_2 := IsVersionMet(4, 2, MajorVersion, MinorVersion);
- if vNotInformed then
- begin
- GLSLogger.LogNotice('');
- GLSLogger.LogInfo('OpenGL rendering context information:');
- GLSLogger.LogInfo(format('Renderer : %s', [GetString(GL_RENDERER)]));
- GLSLogger.LogInfo(format('Vendor : %s', [GetString(GL_VENDOR)]));
- GLSLogger.LogInfo(format('Version : %s', [GetString(GL_VERSION)]));
- if VERSION_2_0 then
- GLSLogger.LogInfo(format('GLSL version : %s',
- [GetString(GL_SHADING_LANGUAGE_VERSION)]))
- else
- GLSLogger.LogWarning('GLSL version : not supported');
- GLSLogger.LogNotice('');
- vNotInformed := False;
- end;
- if ATemporary then
- begin
- FInitialized := True;
- exit;
- end;
- // check supported OpenGL extensions
- if VERSION_3_0 then
- begin
- FBuffer := '';
- GetIntegerv(GL_NUM_EXTENSIONS, @numExt);
- for i := 0 to numExt - 1 do
- FBuffer := FBuffer + string(GetStringi(GL_EXTENSIONS, i)) + ' ';
- end
- else
- FBuffer := string(GetString(GL_EXTENSIONS));
- // check ARB approved OpenGL extensions
- ARB_blend_func_extended := CheckExtension('GL_ARB_blend_func_extended');
- ARB_color_buffer_float := CheckExtension('GL_ARB_color_buffer_float');
- ARB_compatibility := CheckExtension('GL_ARB_compatibility');
- ARB_copy_buffer := CheckExtension('GL_ARB_copy_buffer');
- ARB_depth_buffer_float := CheckExtension('GL_ARB_depth_buffer_float');
- ARB_depth_clamp := CheckExtension('GL_ARB_depth_clamp');
- ARB_depth_texture := CheckExtension('GL_ARB_depth_texture');
- ARB_draw_buffers := CheckExtension('GL_ARB_draw_buffers');
- ARB_draw_buffers_blend := CheckExtension('GL_ARB_draw_buffers_blend');
- ARB_draw_elements_base_vertex := CheckExtension('GL_ARB_draw_elements_base_vertex');
- ARB_draw_indirect := CheckExtension('GL_ARB_draw_indirect');
- ARB_draw_instanced := CheckExtension('GL_ARB_draw_instanced');
- ARB_explicit_attrib_location := CheckExtension('GL_ARB_explicit_attrib_location');
- ARB_fragment_coord_conventions := CheckExtension('GL_ARB_fragment_coord_conventions');
- ARB_fragment_program := CheckExtension('GL_ARB_fragment_program');
- ARB_fragment_program_shadow := CheckExtension('GL_ARB_fragment_program_shadow');
- ARB_fragment_shader := CheckExtension('GL_ARB_fragment_shader');
- ARB_framebuffer_object := CheckExtension('GL_ARB_framebuffer_object');
- ARB_framebuffer_sRGB := CheckExtension('GL_ARB_framebuffer_sRGB');
- ARB_geometry_shader4 := CheckExtension('GL_ARB_geometry_shader4');
- ARB_gpu_shader_fp64 := CheckExtension('GL_ARB_gpu_shader_fp64');
- ARB_gpu_shader5 := CheckExtension('GL_ARB_gpu_shader5');
- ARB_half_float_pixel := CheckExtension('GL_ARB_half_float_pixel');
- ARB_half_float_vertex := CheckExtension('GL_ARB_half_float_vertex');
- ARB_imaging := CheckExtension('GL_ARB_imaging');
- ARB_instanced_arrays := CheckExtension('GL_ARB_instanced_arrays');
- ARB_map_buffer_range := CheckExtension('GL_ARB_map_buffer_range');
- ARB_matrix_palette := CheckExtension('GL_ARB_matrix_palette');
- ARB_multisample := CheckExtension('GL_ARB_multisample');
- // ' ' to avoid collision with WGL variant
- ARB_multitexture := CheckExtension('GL_ARB_multitexture');
- ARB_occlusion_query := CheckExtension('GL_ARB_occlusion_query');
- ARB_occlusion_query2 := CheckExtension('GL_ARB_occlusion_query2');
- ARB_pixel_buffer_object := CheckExtension('GL_ARB_pixel_buffer_object');
- ARB_point_parameters := CheckExtension('GL_ARB_point_parameters');
- ARB_point_sprite := CheckExtension('GL_ARB_point_sprite');
- ARB_provoking_vertex := CheckExtension('GL_ARB_provoking_vertex');
- ARB_sample_shading := CheckExtension('GL_ARB_sample_shading');
- ARB_sampler_objects := CheckExtension('GL_ARB_sampler_objects');
- ARB_seamless_cube_map := CheckExtension('GL_ARB_seamless_cube_map');
- ARB_shader_bit_encoding := CheckExtension('GL_ARB_shader_bit_encoding');
- ARB_shader_objects := CheckExtension('GL_ARB_shader_objects');
- ARB_shader_subroutine := CheckExtension('GL_ARB_shader_subroutine');
- ARB_shader_texture_lod := CheckExtension('GL_ARB_shader_texture_lod');
- ARB_shading_language_100 := CheckExtension('GL_ARB_shading_language_100');
- ARB_shadow := CheckExtension('GL_ARB_shadow');
- ARB_shadow_ambient := CheckExtension('GL_ARB_shadow_ambient');
- ARB_sync := CheckExtension('GL_ARB_sync');
- ARB_tessellation_shader := CheckExtension('GL_ARB_tessellation_shader');
- ARB_texture_border_clamp := CheckExtension('GL_ARB_texture_border_clamp');
- ARB_texture_buffer_object := CheckExtension('GL_ARB_texture_buffer_object');
- ARB_texture_buffer_object_rgb32 := CheckExtension('GL_ARB_texture_buffer_object_rgb32');
- ARB_texture_compression := CheckExtension('GL_ARB_texture_compression');
- ARB_texture_compression_rgtc := CheckExtension('GL_ARB_texture_compression_rgtc');
- ARB_texture_cube_map := CheckExtension('GL_ARB_texture_cube_map');
- ARB_texture_cube_map_array := CheckExtension('GL_ARB_texture_cube_map_array');
- ARB_texture_env_add := CheckExtension('GL_ARB_texture_env_add');
- ARB_texture_env_combine := CheckExtension('GL_ARB_texture_env_combine');
- ARB_texture_env_crossbar := CheckExtension('GL_ARB_texture_env_crossbar');
- ARB_texture_env_dot3 := CheckExtension('GL_ARB_texture_env_dot3');
- ARB_texture_float := CheckExtension('GL_ARB_texture_float');
- ARB_texture_gather := CheckExtension('GL_ARB_texture_gather');
- ARB_texture_mirrored_repeat := CheckExtension('GL_ARB_texture_mirrored_repeat');
- ARB_texture_multisample := CheckExtension('GL_ARB_texture_multisample');
- ARB_texture_non_power_of_two := CheckExtension('GL_ARB_texture_non_power_of_two');
- ARB_texture_query_lod := CheckExtension('GL_ARB_texture_query_lod');
- ARB_texture_rectangle := CheckExtension('GL_ARB_texture_rectangle');
- ARB_texture_rg := CheckExtension('GL_ARB_texture_rg');
- ARB_texture_rgb10_a2ui := CheckExtension('GL_ARB_texture_rgb10_a2ui');
- ARB_texture_swizzle := CheckExtension('GL_ARB_texture_swizzle');
- ARB_timer_query := CheckExtension('GL_ARB_timer_query');
- ARB_transform_feedback2 := CheckExtension('GL_ARB_transform_feedback2');
- ARB_transform_feedback3 := CheckExtension('GL_ARB_transform_feedback3');
- ARB_transpose_matrix := CheckExtension('GL_ARB_transpose_matrix');
- ARB_uniform_buffer_object := CheckExtension('GL_ARB_uniform_buffer_object');
- ARB_vertex_array_bgra := CheckExtension('GL_ARB_vertex_array_bgra');
- ARB_vertex_array_object := CheckExtension('GL_ARB_vertex_array_object');
- ARB_vertex_blend := CheckExtension('GL_ARB_vertex_blend');
- ARB_vertex_buffer_object := CheckExtension('GL_ARB_vertex_buffer_object');
- ARB_vertex_program := CheckExtension('GL_ARB_vertex_program');
- ARB_vertex_shader := CheckExtension('GL_ARB_vertex_shader');
- ARB_vertex_type_2_10_10_10_rev := CheckExtension('GL_ARB_vertex_type_2_10_10_10_rev');
- ARB_window_pos := CheckExtension('GL_ARB_window_pos');
- ARB_texture_compression_bptc := CheckExtension('GL_ARB_texture_compression_bptc');
- ARB_get_program_binary := CheckExtension('GL_ARB_get_program_binary');
- ARB_separate_shader_objects := CheckExtension('GL_ARB_separate_shader_objects');
- ARB_shader_stencil_export := CheckExtension('GL_ARB_shader_stencil_export');
- KHR_debug := CheckExtension('GL_KHR_debug');
- ARB_clear_buffer_object := CheckExtension('GL_ARB_clear_buffer_object');
- ARB_compute_shader := CheckExtension('GL_ARB_compute_shader');
- ARB_copy_image := CheckExtension('GL_ARB_copy_image');
- ARB_debug_group := CheckExtension('GL_ARB_debug_group');
- ARB_debug_label := CheckExtension('GL_ARB_debug_label');
- ARB_debug_output2 := CheckExtension('GL_ARB_debug_output2');
- ARB_ES3_compatibility := CheckExtension('GL_ARB_ES3_compatibility');
- ARB_explicit_uniform_location := CheckExtension('GL_ARB_explicit_uniform_location');
- ARB_fragment_layer_viewport := CheckExtension('GL_ARB_fragment_layer_viewport');
- ARB_framebuffer_no_attachments := CheckExtension('GL_ARB_framebuffer_no_attachments');
- ARB_internalformat_query2 := CheckExtension('GL_ARB_internalformat_query2');
- ARB_invalidate_subdata := CheckExtension('GL_ARB_invalidate_subdata');
- ARB_multi_draw_indirect := CheckExtension('GL_ARB_multi_draw_indirect');
- ARB_program_interface_query := CheckExtension('GL_ARB_program_interface_query');
- ARB_shader_image_size := CheckExtension('GL_ARB_shader_image_size');
- ARB_shader_storage_buffer_object := CheckExtension('GL_ARB_shader_storage_buffer_object');
- ARB_stencil_texturing := CheckExtension('GL_ARB_stencil_texturing');
- ARB_texture_buffer_range := CheckExtension('GL_ARB_texture_buffer_range');
- ARB_texture_query_levels := CheckExtension('GL_ARB_texture_query_levels');
- ARB_texture_storage_multisample := CheckExtension('GL_ARB_texture_storage_multisample');
- ARB_texture_view := CheckExtension('GL_ARB_texture_view');
- ARB_vertex_attrib_binding := CheckExtension('GL_ARB_vertex_attrib_binding');
- ARB_robustness_isolation := CheckExtension('GL_ARB_robustness_isolation');
- ARB_cl_event := CheckExtension('GL_ARB_cl_event');
- // check Vendor/EXT OpenGL extensions
- _3DFX_multisample := CheckExtension('GL_3DFX_multisample');
- _3DFX_tbuffer := CheckExtension('GL_3DFX_tbuffer');
- _3DFX_texture_compression_FXT1 := CheckExtension('GL_3DFX_texture_compression_FXT1');
- ATI_draw_buffers := CheckExtension('GL_ATI_draw_buffers');
- ATI_texture_compression_3dc := CheckExtension('GL_ATI_texture_compression_3dc');
- ATI_texture_float := CheckExtension('GL_ATI_texture_float');
- ATI_texture_mirror_once := CheckExtension('GL_ATI_texture_mirror_once');
- S3_s3tc := CheckExtension('GL_S3_s3tc');
- EXT_abgr := CheckExtension('GL_EXT_abgr');
- EXT_bgra := CheckExtension('GL_EXT_bgra');
- EXT_bindable_uniform := CheckExtension('GL_EXT_bindable_uniform');
- EXT_blend_color := CheckExtension('GL_EXT_blend_color');
- EXT_blend_equation_separate := CheckExtension('GL_EXT_blend_equation_separate');
- EXT_blend_func_separate := CheckExtension('GL_EXT_blend_func_separate');
- EXT_blend_logic_op := CheckExtension('GL_EXT_blend_logic_op');
- EXT_blend_minmax := CheckExtension('GL_EXT_blend_minmax');
- EXT_blend_subtract := CheckExtension('GL_EXT_blend_subtract');
- EXT_Cg_shader := CheckExtension('GL_EXT_Cg_shader');
- EXT_clip_volume_hint := CheckExtension('GL_EXT_clip_volume_hint');
- EXT_compiled_vertex_array := CheckExtension('GL_EXT_compiled_vertex_array');
- EXT_copy_texture := CheckExtension('GL_EXT_copy_texture');
- EXT_depth_bounds_test := CheckExtension('GL_EXT_depth_bounds_test');
- EXT_draw_buffers2 := CheckExtension('GL_EXT_draw_buffers2');
- EXT_draw_instanced := CheckExtension('GL_EXT_draw_instanced');
- EXT_draw_range_elements := CheckExtension('GL_EXT_draw_range_elements');
- EXT_fog_coord := CheckExtension('GL_EXT_fog_coord');
- EXT_framebuffer_blit := CheckExtension('GL_EXT_framebuffer_blit');
- EXT_framebuffer_multisample := CheckExtension('GL_EXT_framebuffer_multisample');
- EXT_framebuffer_object := CheckExtension('GL_EXT_framebuffer_object');
- EXT_framebuffer_sRGB := CheckExtension('GL_EXT_framebuffer_sRGB');
- EXT_geometry_shader4 := CheckExtension('GL_EXT_geometry_shader4');
- EXT_gpu_program_parameters := CheckExtension('GL_EXT_gpu_program_parameters');
- EXT_gpu_shader4 := CheckExtension('GL_EXT_gpu_shader4');
- EXT_multi_draw_arrays := CheckExtension('GL_EXT_multi_draw_arrays');
- EXT_multisample := CheckExtension('GL_EXT_multisample');
- EXT_packed_depth_stencil := CheckExtension('GL_EXT_packed_depth_stencil');
- EXT_packed_float := CheckExtension('GL_EXT_packed_float');
- EXT_packed_pixels := CheckExtension('GL_EXT_packed_pixels');
- EXT_paletted_texture := CheckExtension('GL_EXT_paletted_texture');
- EXT_pixel_buffer_object := CheckExtension('GL_EXT_pixel_buffer_object');
- EXT_polygon_offset := CheckExtension('GL_EXT_polygon_offset');
- EXT_rescale_normal := CheckExtension('GL_EXT_rescale_normal');
- EXT_secondary_color := CheckExtension('GL_EXT_secondary_color');
- EXT_separate_specular_color := CheckExtension('GL_EXT_separate_specular_color');
- EXT_shadow_funcs := CheckExtension('GL_EXT_shadow_funcs');
- EXT_shared_texture_palette := CheckExtension('GL_EXT_shared_texture_palette');
- EXT_stencil_clear_tag := CheckExtension('GL_EXT_stencil_clear_tag');
- EXT_stencil_two_side := CheckExtension('GL_EXT_stencil_two_side');
- EXT_stencil_wrap := CheckExtension('GL_EXT_stencil_wrap');
- EXT_texture3D := CheckExtension('GL_EXT_texture3D');
- EXT_texture_array := CheckExtension('GL_EXT_texture_array');
- EXT_texture_buffer_object := CheckExtension('GL_EXT_texture_buffer_object');
- EXT_texture_compression_latc := CheckExtension('GL_EXT_texture_compression_latc');
- EXT_texture_compression_rgtc := CheckExtension('GL_EXT_texture_compression_rgtc');
- EXT_texture_compression_s3tc := CheckExtension('GL_EXT_texture_compression_s3tc');
- EXT_texture_cube_map := CheckExtension('GL_EXT_texture_cube_map');
- EXT_texture_edge_clamp := CheckExtension('GL_EXT_texture_edge_clamp');
- EXT_texture_env_add := CheckExtension('GL_EXT_texture_env_add');
- EXT_texture_env_combine := CheckExtension('GL_EXT_texture_env_combine');
- EXT_texture_env_dot3 := CheckExtension('GL_EXT_texture_env_dot3');
- EXT_texture_filter_anisotropic :=
- CheckExtension('GL_EXT_texture_filter_anisotropic');
- EXT_texture_integer := CheckExtension('GL_EXT_texture_integer');
- EXT_texture_lod := CheckExtension('GL_EXT_texture_lod');
- EXT_texture_lod_bias := CheckExtension('GL_EXT_texture_lod_bias');
- EXT_texture_mirror_clamp := CheckExtension('GL_EXT_texture_mirror_clamp');
- EXT_texture_object := CheckExtension('GL_EXT_texture_object');
- EXT_texture_rectangle := CheckExtension('GL_EXT_texture_rectangle');
- EXT_texture_sRGB := CheckExtension('GL_EXT_texture_sRGB');
- EXT_texture_shared_exponent := CheckExtension('GL_EXT_texture_shared_exponent');
- EXT_timer_query := CheckExtension('GL_EXT_timer_query');
- EXT_transform_feedback := CheckExtension('GL_EXT_transform_feedback');
- EXT_vertex_array := CheckExtension('GL_EXT_vertex_array');
- EXT_texture_sRGB_decode := CheckExtension('GL_EXT_texture_sRGB_decode');
- EXT_direct_state_access := CheckExtension('EXT_direct_state_access');
- EXT_texture_swizzle := CheckExtension('EXT_texture_swizzle');
- HP_occlusion_test := CheckExtension('GL_HP_occlusion_test');
- IBM_rasterpos_clip := CheckExtension('GL_IBM_rasterpos_clip');
- KTX_buffer_region := CheckExtension('GL_KTX_buffer_region');
- MESA_resize_buffers := CheckExtension('GL_MESA_resize_buffers');
- NV_blend_square := CheckExtension('GL_NV_blend_square');
- NV_conditional_render := CheckExtension('GL_NV_conditional_render');
- NV_copy_image := CheckExtension('GL_NV_copy_image');
- NV_depth_buffer_float := CheckExtension('GL_NV_depth_buffer_float');
- NV_fence := CheckExtension('GL_NV_fence');
- NV_float_buffer := CheckExtension('GL_NV_float_buffer');
- NV_fog_distance := CheckExtension('GL_NV_fog_distance');
- NV_geometry_program4 := CheckExtension('GL_NV_geometry_program4');
- NV_light_max_exponent := CheckExtension('GL_NV_light_max_exponent');
- NV_multisample_filter_hint := CheckExtension('GL_NV_multisample_filter_hint');
- NV_occlusion_query := CheckExtension('GL_NV_occlusion_query');
- NV_point_sprite := CheckExtension('GL_NV_point_sprite');
- NV_primitive_restart := CheckExtension('GL_NV_primitive_restart');
- NV_register_combiners := CheckExtension('GL_NV_register_combiners');
- NV_shader_buffer_load := CheckExtension('GL_NV_shader_buffer_load');
- NV_texgen_reflection := CheckExtension('GL_NV_texgen_reflection');
- NV_texture_compression_vtc := CheckExtension('GL_NV_texture_compression_vtc');
- NV_texture_env_combine4 := CheckExtension('GL_NV_texture_env_combine4');
- NV_texture_rectangle := CheckExtension('GL_NV_texture_rectangle');
- NV_texture_shader := CheckExtension('GL_NV_texture_shader');
- NV_texture_shader2 := CheckExtension('GL_NV_texture_shader2');
- NV_texture_shader3 := CheckExtension('GL_NV_texture_shader3');
- NV_transform_feedback := CheckExtension('GL_NV_transform_feedback');
- NV_vertex_array_range := CheckExtension('GL_NV_vertex_array_range');
- NV_vertex_array_range2 := CheckExtension('GL_NV_vertex_array_range2');
- NV_vertex_buffer_unified_memory := CheckExtension('GL_NV_vertex_buffer_unified_memory');
- NV_vertex_program := CheckExtension('GL_NV_vertex_program');
- SGI_color_matrix := CheckExtension('GL_SGI_color_matrix');
- SGIS_generate_mipmap := CheckExtension('GL_SGIS_generate_mipmap');
- SGIS_multisample := CheckExtension('GL_SGIS_multisample');
- SGIS_texture_border_clamp := CheckExtension('GL_SGIS_texture_border_clamp');
- SGIS_texture_color_mask := CheckExtension('GL_SGIS_texture_color_mask');
- SGIS_texture_edge_clamp := CheckExtension('GL_SGIS_texture_edge_clamp');
- SGIS_texture_lod := CheckExtension('GL_SGIS_texture_lod');
- SGIX_depth_texture := CheckExtension('GL_SGIX_depth_texture');
- SGIX_shadow := CheckExtension('GL_SGIX_shadow');
- SGIX_shadow_ambient := CheckExtension('GL_SGIX_shadow_ambient');
- AMD_vertex_shader_tessellator := CheckExtension('GL_AMD_vertex_shader_tessellator');
- WIN_swap_hint := CheckExtension('GL_WIN_swap_hint');
- ATI_meminfo := CheckExtension('GL_ATI_meminfo');
- NVX_gpu_memory_info := CheckExtension('GL_NVX_gpu_memory_info');
- NV_vdpau_interop := CheckExtension('GL_NV_vdpau_interop');
- NV_path_rendering := CheckExtension('GL_NV_path_rendering');
- GREMEDY_frame_terminator := CheckExtension('GL_GREMEDY_frame_terminator');
- GREMEDY_string_marker := CheckExtension('GL_GREMEDY_string_marker');
- AMDX_debug_output := CheckExtension('AMDX_debug_output');
- ARB_debug_output := CheckExtension('GL_ARB_debug_output');
- BindTexture := GetAddress('BindTexture');
- BlendFunc := GetAddress('BlendFunc');
- Clear := GetAddress('Clear');
- ClearColor := GetAddress('ClearColor');
- ClearDepth := GetAddress('ClearDepth');
- ClearStencil := GetAddress('ClearStencil');
- ColorMask := GetAddress('ColorMask');
- CopyTexImage1D := GetAddress('CopyTexImage1D');
- CopyTexImage2D := GetAddress('CopyTexImage2D');
- CopyTexSubImage1D := GetAddress('CopyTexSubImage1D');
- CopyTexSubImage2D := GetAddress('CopyTexSubImage2D');
- CullFace := GetAddress('CullFace');
- DeleteTextures := GetAddress('DeleteTextures');
- DepthFunc := GetAddress('DepthFunc');
- DepthMask := GetAddress('DepthMask');
- DepthRange := GetAddress('DepthRange');
- Disable := GetAddress('Disable');
- DrawArrays := GetAddress('DrawArrays');
- DrawBuffer := GetAddress('DrawBuffer');
- DrawElements := GetAddress('DrawElements');
- Enable := GetAddress('Enable');
- Finish := GetAddress('Finish');
- Flush := GetAddress('Flush');
- FrontFace := GetAddress('FrontFace');
- GenTextures := GetAddress('GenTextures');
- GetBooleanv := GetAddress('GetBooleanv');
- GetDoublev := GetAddress('GetDoublev');
- GetFloatv := GetAddress('GetFloatv');
- GetPointerv := GetAddress('GetPointerv');
- GetString := GetAddress('GetString');
- GetTexImage := GetAddress('GetTexImage');
- GetTexLevelParameterfv := GetAddress('GetTexLevelParameterfv');
- GetTexLevelParameteriv := GetAddress('GetTexLevelParameteriv');
- GetTexParameterfv := GetAddress('GetTexParameterfv');
- GetTexParameteriv := GetAddress('GetTexParameteriv');
- Hint := GetAddress('Hint');
- IsEnabled := GetAddress('IsEnabled');
- IsTexture := GetAddress('IsTexture');
- LineWidth := GetAddress('LineWidth');
- LogicOp := GetAddress('LogicOp');
- PixelStoref := GetAddress('PixelStoref');
- PixelStorei := GetAddress('PixelStorei');
- PointSize := GetAddress('PointSize');
- PolygonMode := GetAddress('PolygonMode');
- PolygonOffset := GetAddress('PolygonOffset');
- ReadBuffer := GetAddress('ReadBuffer');
- ReadPixels := GetAddress('ReadPixels');
- Scissor := GetAddress('Scissor');
- StencilFunc := GetAddress('StencilFunc');
- StencilMask := GetAddress('StencilMask');
- StencilOp := GetAddress('StencilOp');
- TexImage1D := GetAddress('TexImage1D');
- TexImage2D := GetAddress('TexImage2D');
- TexParameterf := GetAddress('TexParameterf');
- TexParameterfv := GetAddress('TexParameterfv');
- TexParameteri := GetAddress('TexParameteri');
- TexParameteriv := GetAddress('TexParameteriv');
- TexSubImage1D := GetAddress('TexSubImage1D');
- TexSubImage2D := GetAddress('TexSubImage2D');
- Viewport := GetAddress('Viewport');
- Accum := GetAddress('Accum');
- AlphaFunc := GetAddress('AlphaFunc');
- AreTexturesResident := GetAddress('AreTexturesResident');
- ArrayElement := GetAddress('ArrayElement');
- Begin_ := GetAddress('Begin');
- Bitmap := GetAddress('Bitmap');
- CallList := GetAddress('CallList');
- CallLists := GetAddress('CallLists');
- ClearAccum := GetAddress('ClearAccum');
- ClearIndex := GetAddress('ClearIndex');
- ClipPlane := GetAddress('ClipPlane');
- Color3b := GetAddress('Color3b');
- Color3bv := GetAddress('Color3bv');
- Color3d := GetAddress('Color3d');
- Color3dv := GetAddress('Color3dv');
- Color3f := GetAddress('Color3f');
- Color3fv := GetAddress('Color3fv');
- Color3i := GetAddress('Color3i');
- Color3iv := GetAddress('Color3iv');
- Color3s := GetAddress('Color3s');
- Color3sv := GetAddress('Color3sv');
- Color3ub := GetAddress('Color3ub');
- Color3ubv := GetAddress('Color3ubv');
- Color3ui := GetAddress('Color3ui');
- Color3uiv := GetAddress('Color3uiv');
- Color3us := GetAddress('Color3us');
- Color3usv := GetAddress('Color3usv');
- Color4b := GetAddress('Color4b');
- Color4bv := GetAddress('Color4bv');
- Color4d := GetAddress('Color4d');
- Color4dv := GetAddress('Color4dv');
- Color4f := GetAddress('Color4f');
- Color4fv := GetAddress('Color4fv');
- Color4i := GetAddress('Color4i');
- Color4iv := GetAddress('Color4iv');
- Color4s := GetAddress('Color4s');
- Color4sv := GetAddress('Color4sv');
- Color4ub := GetAddress('Color4ub');
- Color4ubv := GetAddress('Color4ubv');
- Color4ui := GetAddress('Color4ui');
- Color4uiv := GetAddress('Color4uiv');
- Color4us := GetAddress('Color4us');
- Color4usv := GetAddress('Color4usv');
- ColorMaterial := GetAddress('ColorMaterial');
- ColorPointer := GetAddress('ColorPointer');
- CopyPixels := GetAddress('CopyPixels');
- DeleteLists := GetAddress('DeleteLists');
- DisableClientState := GetAddress('DisableClientState');
- DrawPixels := GetAddress('DrawPixels');
- EdgeFlag := GetAddress('EdgeFlag');
- EdgeFlagPointer := GetAddress('EdgeFlagPointer');
- EdgeFlagv := GetAddress('EdgeFlagv');
- EnableClientState := GetAddress('EnableClientState');
- End_ := GetAddress('End');
- EndList := GetAddress('EndList');
- EvalCoord1d := GetAddress('EvalCoord1d');
- EvalCoord1dv := GetAddress('EvalCoord1dv');
- EvalCoord1f := GetAddress('EvalCoord1f');
- EvalCoord1fv := GetAddress('EvalCoord1fv');
- EvalCoord2d := GetAddress('EvalCoord2d');
- EvalCoord2dv := GetAddress('EvalCoord2dv');
- EvalCoord2f := GetAddress('EvalCoord2f');
- EvalCoord2fv := GetAddress('EvalCoord2fv');
- EvalMesh1 := GetAddress('EvalMesh1');
- EvalMesh2 := GetAddress('EvalMesh2');
- EvalPoint1 := GetAddress('EvalPoint1');
- EvalPoint2 := GetAddress('EvalPoint2');
- FeedbackBuffer := GetAddress('FeedbackBuffer');
- Fogf := GetAddress('Fogf');
- Fogfv := GetAddress('Fogfv');
- Fogi := GetAddress('Fogi');
- Fogiv := GetAddress('Fogiv');
- Frustum := GetAddress('Frustum');
- GenLists := GetAddress('GenLists');
- GetClipPlane := GetAddress('GetClipPlane');
- GetLightfv := GetAddress('GetLightfv');
- GetLightiv := GetAddress('GetLightiv');
- GetMapdv := GetAddress('GetMapdv');
- GetMapfv := GetAddress('GetMapfv');
- GetMapiv := GetAddress('GetMapiv');
- GetMaterialfv := GetAddress('GetMaterialfv');
- GetMaterialiv := GetAddress('GetMaterialiv');
- GetPixelMapfv := GetAddress('GetPixelMapfv');
- GetPixelMapuiv := GetAddress('GetPixelMapuiv');
- GetPixelMapusv := GetAddress('GetPixelMapusv');
- GetPolygonStipple := GetAddress('GetPolygonStipple');
- GetTexEnvfv := GetAddress('GetTexEnvfv');
- GetTexEnviv := GetAddress('GetTexEnviv');
- GetTexGendv := GetAddress('GetTexGendv');
- GetTexGenfv := GetAddress('GetTexGenfv');
- GetTexGeniv := GetAddress('GetTexGeniv');
- IndexMask := GetAddress('IndexMask');
- IndexPointer := GetAddress('IndexPointer');
- Indexd := GetAddress('Indexd');
- Indexdv := GetAddress('Indexdv');
- Indexf := GetAddress('Indexf');
- Indexfv := GetAddress('Indexfv');
- Indexi := GetAddress('Indexi');
- Indexiv := GetAddress('Indexiv');
- Indexs := GetAddress('Indexs');
- Indexsv := GetAddress('Indexsv');
- Indexub := GetAddress('Indexub');
- Indexubv := GetAddress('Indexubv');
- InitNames := GetAddress('InitNames');
- InterleavedArrays := GetAddress('InterleavedArrays');
- IsList := GetAddress('IsList');
- LightModelf := GetAddress('LightModelf');
- LightModelfv := GetAddress('LightModelfv');
- LightModeli := GetAddress('LightModeli');
- LightModeliv := GetAddress('LightModeliv');
- Lightf := GetAddress('Lightf');
- Lightfv := GetAddress('Lightfv');
- Lighti := GetAddress('Lighti');
- Lightiv := GetAddress('Lightiv');
- LineStipple := GetAddress('LineStipple');
- ListBase := GetAddress('ListBase');
- LoadIdentity := GetAddress('LoadIdentity');
- LoadMatrixd := GetAddress('LoadMatrixd');
- LoadMatrixf := GetAddress('LoadMatrixf');
- LoadName := GetAddress('LoadName');
- Map1d := GetAddress('Map1d');
- Map1f := GetAddress('Map1f');
- Map2d := GetAddress('Map2d');
- Map2f := GetAddress('Map2f');
- MapGrid1d := GetAddress('MapGrid1d');
- MapGrid1f := GetAddress('MapGrid1f');
- MapGrid2d := GetAddress('MapGrid2d');
- MapGrid2f := GetAddress('MapGrid2f');
- Materialf := GetAddress('Materialf');
- Materialfv := GetAddress('Materialfv');
- Materiali := GetAddress('Materiali');
- Materialiv := GetAddress('Materialiv');
- MatrixMode := GetAddress('MatrixMode');
- MultMatrixd := GetAddress('MultMatrixd');
- MultMatrixf := GetAddress('MultMatrixf');
- NewList := GetAddress('NewList');
- Normal3b := GetAddress('Normal3b');
- Normal3bv := GetAddress('Normal3bv');
- Normal3d := GetAddress('Normal3d');
- Normal3dv := GetAddress('Normal3dv');
- Normal3f := GetAddress('Normal3f');
- Normal3fv := GetAddress('Normal3fv');
- Normal3i := GetAddress('Normal3i');
- Normal3iv := GetAddress('Normal3iv');
- Normal3s := GetAddress('Normal3s');
- Normal3sv := GetAddress('Normal3sv');
- NormalPointer := GetAddress('NormalPointer');
- Ortho := GetAddress('Ortho');
- PassThrough := GetAddress('PassThrough');
- PixelMapfv := GetAddress('PixelMapfv');
- PixelMapuiv := GetAddress('PixelMapuiv');
- PixelMapusv := GetAddress('PixelMapusv');
- PixelTransferf := GetAddress('PixelTransferf');
- PixelTransferi := GetAddress('PixelTransferi');
- PixelZoom := GetAddress('PixelZoom');
- PolygonStipple := GetAddress('PolygonStipple');
- PopAttrib := GetAddress('PopAttrib');
- PopClientAttrib := GetAddress('PopClientAttrib');
- PopMatrix := GetAddress('PopMatrix');
- PopName := GetAddress('PopName');
- PrioritizeTextures := GetAddress('PrioritizeTextures');
- PushAttrib := GetAddress('PushAttrib');
- PushClientAttrib := GetAddress('PushClientAttrib');
- PushMatrix := GetAddress('PushMatrix');
- PushName := GetAddress('PushName');
- RasterPos2d := GetAddress('RasterPos2d');
- RasterPos2dv := GetAddress('RasterPos2dv');
- RasterPos2f := GetAddress('RasterPos2f');
- RasterPos2fv := GetAddress('RasterPos2fv');
- RasterPos2i := GetAddress('RasterPos2i');
- RasterPos2iv := GetAddress('RasterPos2iv');
- RasterPos2s := GetAddress('RasterPos2s');
- RasterPos2sv := GetAddress('RasterPos2sv');
- RasterPos3d := GetAddress('RasterPos3d');
- RasterPos3dv := GetAddress('RasterPos3dv');
- RasterPos3f := GetAddress('RasterPos3f');
- RasterPos3fv := GetAddress('RasterPos3fv');
- RasterPos3i := GetAddress('RasterPos3i');
- RasterPos3iv := GetAddress('RasterPos3iv');
- RasterPos3s := GetAddress('RasterPos3s');
- RasterPos3sv := GetAddress('RasterPos3sv');
- RasterPos4d := GetAddress('RasterPos4d');
- RasterPos4dv := GetAddress('RasterPos4dv');
- RasterPos4f := GetAddress('RasterPos4f');
- RasterPos4fv := GetAddress('RasterPos4fv');
- RasterPos4i := GetAddress('RasterPos4i');
- RasterPos4iv := GetAddress('RasterPos4iv');
- RasterPos4s := GetAddress('RasterPos4s');
- RasterPos4sv := GetAddress('RasterPos4sv');
- Rectd := GetAddress('Rectd');
- Rectdv := GetAddress('Rectdv');
- Rectf := GetAddress('Rectf');
- Rectfv := GetAddress('Rectfv');
- Recti := GetAddress('Recti');
- Rectiv := GetAddress('Rectiv');
- Rects := GetAddress('Rects');
- Rectsv := GetAddress('Rectsv');
- RenderMode := GetAddress('RenderMode');
- Rotated := GetAddress('Rotated');
- Rotatef := GetAddress('Rotatef');
- Scaled := GetAddress('Scaled');
- Scalef := GetAddress('Scalef');
- SelectBuffer := GetAddress('SelectBuffer');
- ShadeModel := GetAddress('ShadeModel');
- TexCoord1d := GetAddress('TexCoord1d');
- TexCoord1dv := GetAddress('TexCoord1dv');
- TexCoord1f := GetAddress('TexCoord1f');
- TexCoord1fv := GetAddress('TexCoord1fv');
- TexCoord1i := GetAddress('TexCoord1i');
- TexCoord1iv := GetAddress('TexCoord1iv');
- TexCoord1s := GetAddress('TexCoord1s');
- TexCoord1sv := GetAddress('TexCoord1sv');
- TexCoord2d := GetAddress('TexCoord2d');
- TexCoord2dv := GetAddress('TexCoord2dv');
- TexCoord2f := GetAddress('TexCoord2f');
- TexCoord2fv := GetAddress('TexCoord2fv');
- TexCoord2i := GetAddress('TexCoord2i');
- TexCoord2iv := GetAddress('TexCoord2iv');
- TexCoord2s := GetAddress('TexCoord2s');
- TexCoord2sv := GetAddress('TexCoord2sv');
- TexCoord3d := GetAddress('TexCoord3d');
- TexCoord3dv := GetAddress('TexCoord3dv');
- TexCoord3f := GetAddress('TexCoord3f');
- TexCoord3fv := GetAddress('TexCoord3fv');
- TexCoord3i := GetAddress('TexCoord3i');
- TexCoord3iv := GetAddress('TexCoord3iv');
- TexCoord3s := GetAddress('TexCoord3s');
- TexCoord3sv := GetAddress('TexCoord3sv');
- TexCoord4d := GetAddress('TexCoord4d');
- TexCoord4dv := GetAddress('TexCoord4dv');
- TexCoord4f := GetAddress('TexCoord4f');
- TexCoord4fv := GetAddress('TexCoord4fv');
- TexCoord4i := GetAddress('TexCoord4i');
- TexCoord4iv := GetAddress('TexCoord4iv');
- TexCoord4s := GetAddress('TexCoord4s');
- TexCoord4sv := GetAddress('TexCoord4sv');
- TexCoordPointer := GetAddress('TexCoordPointer');
- TexEnvf := GetAddress('TexEnvf');
- TexEnvfv := GetAddress('TexEnvfv');
- TexEnvi := GetAddress('TexEnvi');
- TexEnviv := GetAddress('TexEnviv');
- TexGend := GetAddress('TexGend');
- TexGendv := GetAddress('TexGendv');
- TexGenf := GetAddress('TexGenf');
- TexGenfv := GetAddress('TexGenfv');
- TexGeni := GetAddress('TexGeni');
- TexGeniv := GetAddress('TexGeniv');
- Translated := GetAddress('Translated');
- Translatef := GetAddress('Translatef');
- Vertex2d := GetAddress('Vertex2d');
- Vertex2dv := GetAddress('Vertex2dv');
- Vertex2f := GetAddress('Vertex2f');
- Vertex2fv := GetAddress('Vertex2fv');
- Vertex2i := GetAddress('Vertex2i');
- Vertex2iv := GetAddress('Vertex2iv');
- Vertex2s := GetAddress('Vertex2s');
- Vertex2sv := GetAddress('Vertex2sv');
- Vertex3d := GetAddress('Vertex3d');
- Vertex3dv := GetAddress('Vertex3dv');
- Vertex3f := GetAddress('Vertex3f');
- Vertex3fv := GetAddress('Vertex3fv');
- Vertex3i := GetAddress('Vertex3i');
- Vertex3iv := GetAddress('Vertex3iv');
- Vertex3s := GetAddress('Vertex3s');
- Vertex3sv := GetAddress('Vertex3sv');
- Vertex4d := GetAddress('Vertex4d');
- Vertex4dv := GetAddress('Vertex4dv');
- Vertex4f := GetAddress('Vertex4f');
- Vertex4fv := GetAddress('Vertex4fv');
- Vertex4i := GetAddress('Vertex4i');
- Vertex4iv := GetAddress('Vertex4iv');
- Vertex4s := GetAddress('Vertex4s');
- Vertex4sv := GetAddress('Vertex4sv');
- VertexPointer := GetAddress('VertexPointer');
- BlendColor := GetAddress('BlendColor');
- BlendEquation := GetAddress('BlendEquation');
- DrawRangeElements := GetAddress('DrawRangeElements');
- TexImage3D := GetAddress('TexImage3D');
- TexSubImage3D := GetAddress('TexSubImage3D');
- CopyTexSubImage3D := GetAddress('CopyTexSubImage3D');
- IsRenderbuffer := GetAddress('IsRenderbuffer');
- BindRenderbuffer := GetAddress('BindRenderbuffer');
- DeleteRenderbuffers := GetAddress('DeleteRenderbuffers');
- GenRenderbuffers := GetAddress('GenRenderbuffers');
- RenderbufferStorage := GetAddress('RenderbufferStorage');
- RenderbufferStorageMultisample :=
- GetAddress('RenderbufferStorageMultisample');
- GetRenderbufferParameteriv := GetAddress('GetRenderbufferParameteriv');
- IsFramebuffer := GetAddress('IsFramebuffer');
- BindFramebuffer := GetAddress('BindFramebuffer');
- DeleteFramebuffers := GetAddress('DeleteFramebuffers');
- GenFramebuffers := GetAddress('GenFramebuffers');
- CheckFramebufferStatus := GetAddress('CheckFramebufferStatus');
- FramebufferTexture := GetAddress('FramebufferTexture');
- FramebufferTexture1D := GetAddress('FramebufferTexture1D');
- FramebufferTexture2D := GetAddress('FramebufferTexture2D');
- FramebufferTexture3D := GetAddress('FramebufferTexture3D');
- FramebufferTextureLayer := GetAddress('FramebufferTextureLayer');
- FramebufferTextureFace := GetAddress('FramebufferTextureFace');
- FramebufferRenderbuffer := GetAddress('FramebufferRenderbuffer');
- GetFramebufferAttachmentParameteriv :=
- GetAddress('GetFramebufferAttachmentParameteriv');
- BlitFramebuffer := GetAddress('BlitFramebuffer');
- GenerateMipmap := GetAddress('GenerateMipmap');
- ClearBufferiv := GetAddress('ClearBufferiv');
- ClearBufferuiv := GetAddress('ClearBufferuiv');
- ClearBufferfv := GetAddress('ClearBufferfv');
- ClearBufferfi := GetAddress('ClearBufferfi');
- BlendFuncSeparate := GetAddress('BlendFuncSeparate');
- MultiDrawArrays := GetAddress('MultiDrawArrays');
- MultiDrawElements := GetAddress('MultiDrawElements');
- PointParameterf := GetAddress('PointParameterf');
- PointParameterfv := GetAddress('PointParameterfv');
- PointParameteri := GetAddress('PointParameteri');
- PointParameteriv := GetAddress('PointParameteriv');
- LockArrays := GetAddress('LockArrays');
- UnlockArrays := GetAddress('UnlockArrays');
- BindBuffer := GetAddress('BindBuffer');
- DeleteBuffers := GetAddress('DeleteBuffers');
- GenBuffers := GetAddress('GenBuffers');
- IsBuffer := GetAddress('IsBuffer');
- BufferData := GetAddress('BufferData');
- BufferSubData := GetAddress('BufferSubData');
- GetBufferSubData := GetAddress('GetBufferSubData');
- MapBuffer := GetAddress('MapBuffer');
- UnmapBuffer := GetAddress('UnmapBuffer');
- GetBufferParameteriv := GetAddress('GetBufferParameteriv');
- GetBufferPointerv := GetAddress('GetBufferPointerv');
- MapBufferRange := GetAddress('MapBufferRange');
- FlushMappedBufferRange := GetAddress('FlushMappedBufferRange');
- BindBufferRange := GetAddress('BindBufferRange');
- BindBufferOffset := GetAddress('BindBufferOffset');
- BindBufferBase := GetAddress('BindBufferBase');
- BeginTransformFeedback := GetAddress('BeginTransformFeedback');
- EndTransformFeedback := GetAddress('EndTransformFeedback');
- TransformFeedbackVaryings := GetAddress('TransformFeedbackVaryings');
- GetTransformFeedbackVarying := GetAddress('GetTransformFeedbackVarying');
- TransformFeedbackAttribs := GetAddress('TransformFeedbackAttribs');
- TransformFeedbackVaryingsNV := GetAddressNoSuffixes('TransformFeedbackVaryingsNV');
- TexBuffer := GetAddress('TexBuffer');
- BindVertexArray := GetAddress('BindVertexArray');
- DeleteVertexArrays := GetAddress('DeleteVertexArrays');
- GenVertexArrays := GetAddress('GenVertexArrays');
- IsVertexArray := GetAddress('IsVertexArray');
- FlushVertexArrayRangeNV := GetAddressNoSuffixes('FlushVertexArrayRangeNV');
- VertexArrayRangeNV := GetAddressNoSuffixes('VertexArrayRangeNV');
- CopyBufferSubData := GetAddress('CopyBufferSubData');
- UniformBuffer := GetAddress('UniformBuffer');
- GetUniformBufferSize := GetAddress('GetUniformBufferSize');
- GetUniformOffset := GetAddress('GetUniformOffset');
- PrimitiveRestartIndex := GetAddress('PrimitiveRestartIndex');
- DrawElementsBaseVertex := GetAddress('DrawElementsBaseVertex');
- DrawRangeElementsBaseVertex := GetAddress('DrawRangeElementsBaseVertex');
- DrawElementsInstancedBaseVertex :=
- GetAddress('DrawElementsInstancedBaseVertex');
- MultiDrawElementsBaseVertex := GetAddress('MultiDrawElementsBaseVertex');
- DrawArraysInstanced := GetAddress('DrawArraysInstanced');
- DrawElementsInstanced := GetAddress('DrawElementsInstanced');
- VertexAttrib1d := GetAddress('VertexAttrib1d');
- VertexAttrib1dv := GetAddress('VertexAttrib1dv');
- VertexAttrib1f := GetAddress('VertexAttrib1f');
- VertexAttrib1fv := GetAddress('VertexAttrib1fv');
- VertexAttrib1s := GetAddress('VertexAttrib1s');
- VertexAttrib1sv := GetAddress('VertexAttrib1sv');
- VertexAttrib2d := GetAddress('VertexAttrib2d');
- VertexAttrib2dv := GetAddress('VertexAttrib2dv');
- VertexAttrib2f := GetAddress('VertexAttrib2f');
- VertexAttrib2fv := GetAddress('VertexAttrib2fv');
- VertexAttrib2s := GetAddress('VertexAttrib2s');
- VertexAttrib2sv := GetAddress('VertexAttrib2sv');
- VertexAttrib3d := GetAddress('VertexAttrib3d');
- VertexAttrib3dv := GetAddress('VertexAttrib3dv');
- VertexAttrib3f := GetAddress('VertexAttrib3f');
- VertexAttrib3fv := GetAddress('VertexAttrib3fv');
- VertexAttrib3s := GetAddress('VertexAttrib3s');
- VertexAttrib3sv := GetAddress('VertexAttrib3sv');
- VertexAttrib4Nbv := GetAddress('VertexAttrib4Nbv');
- VertexAttrib4Niv := GetAddress('VertexAttrib4Niv');
- VertexAttrib4Nsv := GetAddress('VertexAttrib4Nsv');
- VertexAttrib4Nub := GetAddress('VertexAttrib4Nub');
- VertexAttrib4Nubv := GetAddress('VertexAttrib4Nubv');
- VertexAttrib4Nuiv := GetAddress('VertexAttrib4Nuiv');
- VertexAttrib4Nusv := GetAddress('VertexAttrib4Nusv');
- VertexAttrib4bv := GetAddress('VertexAttrib4bv');
- VertexAttrib4d := GetAddress('VertexAttrib4d');
- VertexAttrib4dv := GetAddress('VertexAttrib4dv');
- VertexAttrib4f := GetAddress('VertexAttrib4f');
- VertexAttrib4fv := GetAddress('VertexAttrib4fv');
- VertexAttrib4iv := GetAddress('VertexAttrib4iv');
- VertexAttrib4s := GetAddress('VertexAttrib4s');
- VertexAttrib4sv := GetAddress('VertexAttrib4sv');
- VertexAttrib4ubv := GetAddress('VertexAttrib4ubv');
- VertexAttrib4uiv := GetAddress('VertexAttrib4uiv');
- VertexAttrib4usv := GetAddress('VertexAttrib4usv');
- VertexAttribPointer := GetAddress('VertexAttribPointer');
- VertexAttribI1i := GetAddress('VertexAttribI1i');
- VertexAttribI2i := GetAddress('VertexAttribI2i');
- VertexAttribI3i := GetAddress('VertexAttribI3i');
- VertexAttribI4i := GetAddress('VertexAttribI4i');
- VertexAttribI1ui := GetAddress('VertexAttribI1ui');
- VertexAttribI2ui := GetAddress('VertexAttribI2ui');
- VertexAttribI3ui := GetAddress('VertexAttribI3ui');
- VertexAttribI4ui := GetAddress('VertexAttribI4ui');
- VertexAttribI1iv := GetAddress('VertexAttribI1iv');
- VertexAttribI2iv := GetAddress('VertexAttribI2iv');
- VertexAttribI3iv := GetAddress('VertexAttribI3iv');
- VertexAttribI4iv := GetAddress('VertexAttribI4iv');
- VertexAttribI1uiv := GetAddress('VertexAttribI1uiv');
- VertexAttribI2uiv := GetAddress('VertexAttribI2uiv');
- VertexAttribI3uiv := GetAddress('VertexAttribI3uiv');
- VertexAttribI4uiv := GetAddress('VertexAttribI4uiv');
- VertexAttribI4bv := GetAddress('VertexAttribI4bv');
- VertexAttribI4sv := GetAddress('VertexAttribI4sv');
- VertexAttribI4ubv := GetAddress('VertexAttribI4ubv');
- VertexAttribI4usv := GetAddress('VertexAttribI4usv');
- VertexAttribIPointer := GetAddress('VertexAttribIPointer');
- GetVertexAttribIiv := GetAddress('GetVertexAttribIiv');
- GetVertexAttribIuiv := GetAddress('GetVertexAttribIuiv');
- EnableVertexAttribArray := GetAddress('EnableVertexAttribArray');
- DisableVertexAttribArray := GetAddress('DisableVertexAttribArray');
- VertexAttribDivisor := GetAddress('VertexAttribDivisor');
- GenQueries := GetAddress('GenQueries');
- DeleteQueries := GetAddress('DeleteQueries');
- IsQuery := GetAddress('IsQuery');
- BeginQuery := GetAddress('BeginQuery');
- EndQuery := GetAddress('EndQuery');
- GetQueryiv := GetAddress('GetQueryiv');
- GetQueryObjectiv := GetAddress('GetQueryObjectiv');
- GetQueryObjectuiv := GetAddress('GetQueryObjectuiv');
- QueryCounter := GetAddress('QueryCounter');
- GetQueryObjecti64v := GetAddress('GetQueryObjecti64v');
- GetQueryObjectui64v := GetAddress('GetQueryObjectui64v');
- DeleteObject := GetAddress('DeleteObject');
- GetHandle := GetAddress('GetHandle');
- DetachShader := GetAddressAlt('DetachShader', 'DetachObject');
- CreateShader := GetAddressAlt('CreateShader', 'CreateShaderObject');
- ShaderSource := GetAddress('ShaderSource');
- CompileShader := GetAddress('CompileShader');
- CreateProgram := GetAddressAlt('CreateProgram', 'CreateProgramObject');
- AttachShader := GetAddressAlt('AttachShader', 'AttachObject');
- LinkProgram := GetAddress('LinkProgram');
- UseProgram := GetAddressAlt('UseProgram', 'UseProgramObject');
- ValidateProgram := GetAddress('ValidateProgram');
- Uniform1f := GetAddress('Uniform1f');
- Uniform2f := GetAddress('Uniform2f');
- Uniform3f := GetAddress('Uniform3f');
- Uniform4f := GetAddress('Uniform4f');
- Uniform1i := GetAddress('Uniform1i');
- Uniform2i := GetAddress('Uniform2i');
- Uniform3i := GetAddress('Uniform3i');
- Uniform4i := GetAddress('Uniform4i');
- Uniform1fv := GetAddress('Uniform1fv');
- Uniform2fv := GetAddress('Uniform2fv');
- Uniform3fv := GetAddress('Uniform3fv');
- Uniform4fv := GetAddress('Uniform4fv');
- Uniform1iv := GetAddress('Uniform1iv');
- Uniform2iv := GetAddress('Uniform2iv');
- Uniform3iv := GetAddress('Uniform3iv');
- Uniform4iv := GetAddress('Uniform4iv');
- Uniform1ui := GetAddress('Uniform1ui');
- Uniform2ui := GetAddress('Uniform2ui');
- Uniform3ui := GetAddress('Uniform3ui');
- Uniform4ui := GetAddress('Uniform4ui');
- Uniform1uiv := GetAddress('Uniform1uiv');
- Uniform2uiv := GetAddress('Uniform2uiv');
- Uniform3uiv := GetAddress('Uniform3uiv');
- Uniform4uiv := GetAddress('Uniform4uiv');
- GetUniformuiv := GetAddress('GetUniformuiv');
- UniformMatrix2fv := GetAddress('UniformMatrix2fv');
- UniformMatrix3fv := GetAddress('UniformMatrix3fv');
- UniformMatrix4fv := GetAddress('UniformMatrix4fv');
- BindFragDataLocation := GetAddress('BindFragDataLocation');
- GetFragDataLocation := GetAddress('GetFragDataLocation');
- ClampColor := GetAddress('ClampColor');
- ColorMaski := GetAddress('ColorMaski');
- GetBooleani_v := GetAddress('GetBooleani_v');
- GetIntegeri_v := GetAddress('GetIntegeri_v');
- Enablei := GetAddress('Enablei');
- Disablei := GetAddress('Disablei');
- IsEnabledi := GetAddress('IsEnabledi');
- BindFragDataLocationIndexed := GetAddress('BindFragDataLocationIndexed');
- GetFragDataIndex := GetAddress('GetFragDataIndex');
- GetObjectParameterfv := GetAddress('GetObjectParameterfv');
- GetObjectParameteriv := GetAddress('GetObjectParameteriv');
- GetAttachedObjects := GetAddress('GetAttachedObjects');
- GetActiveAttrib := GetAddress('GetActiveAttrib');
- GetActiveUniform := GetAddress('GetActiveUniform');
- GetAttachedShaders := GetAddress('GetAttachedShaders');
- GetAttribLocation := GetAddress('GetAttribLocation');
- GetProgramiv := GetAddressAlt('GetProgramiv', 'GetObjectParameteriv');
- GetProgramInfoLog := GetAddress('GetProgramInfoLog');
- GetShaderiv := GetAddressAlt('GetShaderiv', 'GetObjectParameteriv');
- GetInfoLog := GetAddress('GetInfoLog');
- GetShaderInfoLog := GetAddress('GetShaderInfoLog');
- GetShaderSource := GetAddress('GetShaderSource');
- GetUniformLocation := GetAddress('GetUniformLocation');
- GetUniformfv := GetAddress('GetUniformfv');
- GetUniformiv := GetAddress('GetUniformiv');
- GetVertexAttribdv := GetAddress('GetVertexAttribdv');
- GetVertexAttribfv := GetAddress('GetVertexAttribfv');
- GetVertexAttribiv := GetAddress('GetVertexAttribiv');
- GetVertexAttribPointerv := GetAddress('GetVertexAttribPointerv');
- IsProgram := GetAddress('IsProgram');
- IsShader := GetAddress('IsShader');
- GetUniformLocation := GetAddress('GetUniformLocation');
- BindAttribLocation := GetAddress('BindAttribLocation');
- GetVaryingLocation := GetAddress('GetVaryingLocation');
- GetActiveVarying := GetAddress('GetActiveVarying');
- ActiveVarying := GetAddress('ActiveVarying');
- GetUniformIndices := GetAddress('GetUniformIndices');
- GetActiveUniformsiv := GetAddress('GetActiveUniformsiv');
- GetActiveUniformName := GetAddress('GetActiveUniformName');
- GetUniformBlockIndex := GetAddress('GetUniformBlockIndex');
- GetActiveUniformBlockiv := GetAddress('GetActiveUniformBlockiv');
- GetActiveUniformBlockName := GetAddress('GetActiveUniformBlockName');
- UniformBlockBinding := GetAddress('UniformBlockBinding');
- GetProgramBinary := GetAddress('GetProgramBinary');
- ProgramBinary := GetAddress('ProgramBinary');
- UseProgramStages := GetAddress('UseProgramStages');
- ActiveShaderProgram := GetAddress('ActiveShaderProgram');
- CreateShaderProgramv := GetAddress('CreateShaderProgramv');
- BindProgramPipeline := GetAddress('BindProgramPipeline');
- DeleteProgramPipelines := GetAddress('DeleteProgramPipelines');
- GenProgramPipelines := GetAddress('GenProgramPipelines');
- IsProgramPipeline := GetAddress('IsProgramPipeline');
- GetProgramPipelineiv := GetAddress('GetProgramPipelineiv');
- ProgramUniform1i := GetAddress('ProgramUniform1i');
- ProgramUniform1iv := GetAddress('ProgramUniform1iv');
- ProgramUniform1f := GetAddress('ProgramUniform1f');
- ProgramUniform1fv := GetAddress('ProgramUniform1fv');
- ProgramUniform1d := GetAddress('ProgramUniform1d');
- ProgramUniform1dv := GetAddress('ProgramUniform1dv');
- ProgramUniform1ui := GetAddress('ProgramUniform1ui');
- ProgramUniform1uiv := GetAddress('ProgramUniform1uiv');
- ProgramUniform2i := GetAddress('ProgramUniform2i');
- ProgramUniform2iv := GetAddress('ProgramUniform2iv');
- ProgramUniform2f := GetAddress('ProgramUniform2f');
- ProgramUniform2fv := GetAddress('ProgramUniform2fv');
- ProgramUniform2d := GetAddress('ProgramUniform2d');
- ProgramUniform2dv := GetAddress('ProgramUniform2dv');
- ProgramUniform2ui := GetAddress('ProgramUniform2ui');
- ProgramUniform2uiv := GetAddress('ProgramUniform2uiv');
- ProgramUniform3i := GetAddress('ProgramUniform3i');
- ProgramUniform3iv := GetAddress('ProgramUniform3iv');
- ProgramUniform3f := GetAddress('ProgramUniform3f');
- ProgramUniform3fv := GetAddress('ProgramUniform3fv');
- ProgramUniform3d := GetAddress('ProgramUniform3d');
- ProgramUniform3dv := GetAddress('ProgramUniform3dv');
- ProgramUniform3ui := GetAddress('ProgramUniform3ui');
- ProgramUniform3uiv := GetAddress('ProgramUniform3uiv');
- ProgramUniform4i := GetAddress('ProgramUniform4i');
- ProgramUniform4iv := GetAddress('ProgramUniform4iv');
- ProgramUniform4f := GetAddress('ProgramUniform4f');
- ProgramUniform4fv := GetAddress('ProgramUniform4fv');
- ProgramUniform4d := GetAddress('ProgramUniform4d');
- ProgramUniform4dv := GetAddress('ProgramUniform4dv');
- ProgramUniform4ui := GetAddress('ProgramUniform4ui');
- ProgramUniform4uiv := GetAddress('ProgramUniform4uiv');
- ProgramUniformMatrix2fv := GetAddress('ProgramUniformMatrix2fv');
- ProgramUniformMatrix3fv := GetAddress('ProgramUniformMatrix3fv');
- ProgramUniformMatrix4fv := GetAddress('ProgramUniformMatrix4fv');
- ProgramUniformMatrix2dv := GetAddress('ProgramUniformMatrix2dv');
- ProgramUniformMatrix3dv := GetAddress('ProgramUniformMatrix3dv');
- ProgramUniformMatrix4dv := GetAddress('ProgramUniformMatrix4dv');
- ProgramUniformMatrix2x3fv := GetAddress('ProgramUniformMatrix2x3fv');
- ProgramUniformMatrix3x2fv := GetAddress('ProgramUniformMatrix3x2fv');
- ProgramUniformMatrix2x4fv := GetAddress('ProgramUniformMatrix2x4fv');
- ProgramUniformMatrix4x2fv := GetAddress('ProgramUniformMatrix4x2fv');
- ProgramUniformMatrix3x4fv := GetAddress('ProgramUniformMatrix3x4fv');
- ProgramUniformMatrix4x3fv := GetAddress('ProgramUniformMatrix4x3fv');
- ProgramUniformMatrix2x3dv := GetAddress('ProgramUniformMatrix2x3dv');
- ProgramUniformMatrix3x2dv := GetAddress('ProgramUniformMatrix3x2dv');
- ProgramUniformMatrix2x4dv := GetAddress('ProgramUniformMatrix2x4dv');
- ProgramUniformMatrix4x2dv := GetAddress('ProgramUniformMatrix4x2dv');
- ProgramUniformMatrix3x4dv := GetAddress('ProgramUniformMatrix3x4dv');
- ProgramUniformMatrix4x3dv := GetAddress('ProgramUniformMatrix4x3dv');
- ValidateProgramPipeline := GetAddress('ValidateProgramPipeline');
- GetProgramPipelineInfoLog := GetAddress('GetProgramPipelineInfoLog');
- BlendEquationSeparate := GetAddress('BlendEquationSeparate');
- DrawBuffers := GetAddress('DrawBuffers');
- StencilOpSeparate := GetAddress('StencilOpSeparate');
- StencilFuncSeparate := GetAddress('StencilFuncSeparate');
- StencilMaskSeparate := GetAddress('StencilMaskSeparate');
- ActiveTexture := GetAddress('ActiveTexture');
- CompressedTexImage3D := GetAddress('CompressedTexImage3D');
- CompressedTexImage2D := GetAddress('CompressedTexImage2D');
- CompressedTexImage1D := GetAddress('CompressedTexImage1D');
- CompressedTexSubImage3D := GetAddress('CompressedTexSubImage3D');
- CompressedTexSubImage2D := GetAddress('CompressedTexSubImage2D');
- CompressedTexSubImage1D := GetAddress('CompressedTexSubImage1D');
- GetCompressedTexImage := GetAddress('GetCompressedTexImage');
- ClientActiveTexture := GetAddress('ClientActiveTexture');
- MultiTexCoord1d := GetAddress('MultiTexCoord1d');
- MultiTexCoord1dV := GetAddress('MultiTexCoord1dv');
- MultiTexCoord1f := GetAddress('MultiTexCoord1f');
- MultiTexCoord1fv := GetAddress('MultiTexCoord1fv');
- MultiTexCoord1i := GetAddress('MultiTexCoord1i');
- MultiTexCoord1iv := GetAddress('MultiTexCoord1iv');
- MultiTexCoord1s := GetAddress('MultiTexCoord1s');
- MultiTexCoord1sv := GetAddress('MultiTexCoord1sv');
- MultiTexCoord2d := GetAddress('MultiTexCoord2d');
- MultiTexCoord2dv := GetAddress('MultiTexCoord2dv');
- MultiTexCoord2f := GetAddress('MultiTexCoord2f');
- MultiTexCoord2fv := GetAddress('MultiTexCoord2fv');
- MultiTexCoord2i := GetAddress('MultiTexCoord2i');
- MultiTexCoord2iv := GetAddress('MultiTexCoord2iv');
- MultiTexCoord2s := GetAddress('MultiTexCoord2s');
- MultiTexCoord2sv := GetAddress('MultiTexCoord2sv');
- MultiTexCoord3d := GetAddress('MultiTexCoord3d');
- MultiTexCoord3dv := GetAddress('MultiTexCoord3dv');
- MultiTexCoord3f := GetAddress('MultiTexCoord3f');
- MultiTexCoord3fv := GetAddress('MultiTexCoord3fv');
- MultiTexCoord3i := GetAddress('MultiTexCoord3i');
- MultiTexCoord3iv := GetAddress('MultiTexCoord3iv');
- MultiTexCoord3s := GetAddress('MultiTexCoord3s');
- MultiTexCoord3sv := GetAddress('MultiTexCoord3sv');
- MultiTexCoord4d := GetAddress('MultiTexCoord4d');
- MultiTexCoord4dv := GetAddress('MultiTexCoord4dv');
- MultiTexCoord4f := GetAddress('MultiTexCoord4f');
- MultiTexCoord4fv := GetAddress('MultiTexCoord4fv');
- MultiTexCoord4i := GetAddress('MultiTexCoord4i');
- MultiTexCoord4iv := GetAddress('MultiTexCoord4iv');
- MultiTexCoord4s := GetAddress('MultiTexCoord4s');
- MultiTexCoord4sv := GetAddress('MultiTexCoord4sv');
- GetInteger64i_v := GetAddress('GetInteger64i_v');
- GetBufferParameteri64v := GetAddress('GetBufferParameteri64v');
- ProgramParameteri := GetAddress('ProgramParameteri');
- ProgramString := GetAddress('ProgramString');
- BindProgram := GetAddress('BindProgram');
- DeletePrograms := GetAddress('DeletePrograms');
- GenPrograms := GetAddress('GenPrograms');
- ProgramEnvParameter4d := GetAddress('ProgramEnvParameter4d');
- ProgramEnvParameter4dv := GetAddress('ProgramEnvParameter4dv');
- ProgramEnvParameter4f := GetAddress('ProgramEnvParameter4f');
- ProgramEnvParameter4fv := GetAddress('ProgramEnvParameter4fv');
- ProgramLocalParameter4d := GetAddress('ProgramLocalParameter4d');
- ProgramLocalParameter4dv := GetAddress('ProgramLocalParameter4dv');
- ProgramLocalParameter4f := GetAddress('ProgramLocalParameter4f');
- ProgramLocalParameter4fv := GetAddress('ProgramLocalParameter4fv');
- GetProgramEnvParameterdv := GetAddress('GetProgramEnvParameterdv');
- GetProgramEnvParameterfv := GetAddress('GetProgramEnvParameterfv');
- GetProgramLocalParameterdv := GetAddress('GetProgramLocalParameterdv');
- GetProgramLocalParameterfv := GetAddress('GetProgramLocalParameterfv');
- ClearColorIi := GetAddress('ClearColorIi');
- ClearColorIui := GetAddress('ClearColorIui');
- TexParameterIiv := GetAddress('TexParameterIiv');
- TexParameterIuiv := GetAddress('TexParameterIuiv');
- GetTexParameterIiv := GetAddress('GetTexParameterIiv');
- GetTexParameterIuiv := GetAddress('GetTexParameterIuiv');
- PatchParameteri := GetAddress('PatchParameteri');
- PatchParameterfv := GetAddress('PatchParameterfv');
- BufferAddressRangeNV := GetAddressNoSuffixes('BufferAddressRangeNV');
- VertexFormatNV := GetAddressNoSuffixes('VertexFormatNV');
- NormalFormatNV := GetAddressNoSuffixes('NormalFormatNV');
- ColorFormatNV := GetAddressNoSuffixes('ColorFormatNV');
- IndexFormatNV := GetAddressNoSuffixes('IndexFormatNV');
- TexCoordFormatNV := GetAddressNoSuffixes('TexCoordFormatNV');
- EdgeFlagFormatNV := GetAddressNoSuffixes('EdgeFlagFormatNV');
- SecondaryColorFormatNV := GetAddressNoSuffixes('SecondaryColorFormatNV');
- FogCoordFormatNV := GetAddressNoSuffixes('FogCoordFormatNV');
- VertexAttribFormatNV := GetAddressNoSuffixes('VertexAttribFormatNV');
- VertexAttribIFormatNV := GetAddressNoSuffixes('VertexAttribIFormatNV');
- GetIntegerui64i_vNV := GetAddressNoSuffixes('GetIntegerui64i_vNV');
- GetBufferParameterui64vNV := GetAddressNoSuffixes('GetBufferParameterui64vNV');
- MakeBufferResidentNV := GetAddressNoSuffixes('MakeBufferResidentNV');
- MakeBufferNonResidentNV := GetAddressNoSuffixes('MakeBufferNonResidentNV');
- IsBufferResidentNV := GetAddressNoSuffixes('IsBufferResidentNV');
- MakeNamedBufferResidentNV := GetAddressNoSuffixes('MakeNamedBufferResidentNV');
- MakeNamedBufferNonResidentNV := GetAddressNoSuffixes('MakeNamedBufferNonResidentNV');
- IsNamedBufferResidentNV := GetAddressNoSuffixes('IsNamedBufferResidentNV');
- GetNamedBufferParameterui64vNV := GetAddressNoSuffixes('GetNamedBufferParameterui64vNV');
- GetIntegerui64vNV := GetAddressNoSuffixes('GetIntegerui64vNV');
- Uniformui64NV := GetAddressNoSuffixes('Uniformui64NV');
- Uniformui64vNV := GetAddressNoSuffixes('Uniformui64vNV');
- GetUniformui64vNV := GetAddressNoSuffixes('GetUniformui64vNV');
- ProgramUniformui64NV := GetAddressNoSuffixes('ProgramUniformui64NV');
- ProgramUniformui64vNV := GetAddressNoSuffixes('ProgramUniformui64vNV');
- TexImage2DMultisample := GetAddress('TexImage2DMultisample');
- TexImage3DMultisample := GetAddress('TexImage3DMultisample');
- GetMultisamplefv := GetAddress('GetMultisamplefv');
- SampleMaski := GetAddress('SampleMaski');
- ProvokingVertex := GetAddress('ProvokingVertex');
- FenceSync := GetAddress('FenceSync');
- IsSync := GetAddress('IsSync');
- DeleteSync := GetAddress('DeleteSync');
- ClientWaitSync := GetAddress('ClientWaitSync');
- WaitSync := GetAddress('WaitSync');
- GetInteger64v := GetAddress('GetInteger64v');
- GetSynciv := GetAddress('GetSynciv');
- BlendEquationi := GetAddress('BlendEquationi');
- BlendEquationSeparatei := GetAddress('BlendEquationSeparatei');
- BlendFunci := GetAddress('BlendFunci');
- BlendFuncSeparatei := GetAddress('BlendFuncSeparatei');
- MinSampleShading := GetAddress('MinSampleShading');
- GenSamplers := GetAddress('GenSamplers');
- DeleteSamplers := GetAddress('DeleteSamplers');
- IsSampler := GetAddress('IsSampler');
- BindSampler := GetAddress('BindSampler');
- SamplerParameteri := GetAddress('SamplerParameteri');
- SamplerParameteriv := GetAddress('SamplerParameteriv');
- SamplerParameterf := GetAddress('SamplerParameterf');
- SamplerParameterfv := GetAddress('SamplerParameterfv');
- SamplerParameterIiv := GetAddress('SamplerParameterIiv');
- SamplerParameterIuiv := GetAddress('SamplerParameterIuiv');
- GetSamplerParameteriv := GetAddress('GetSamplerParameteriv');
- GetSamplerParameterIiv := GetAddress('GetSamplerParameterIiv');
- GetSamplerParameterfv := GetAddress('GetSamplerParameterfv');
- GetSamplerParameterIfv := GetAddress('GetSamplerParameterIfv');
- ClientAttribDefault := GetAddress('ClientAttribDefault');
- PushClientAttribDefault := GetAddress('PushClientAttribDefault');
- MatrixLoadf := GetAddress('MatrixLoadf');
- MatrixLoadd := GetAddress('MatrixLoadd');
- MatrixMultf := GetAddress('MatrixMultf');
- MatrixMultd := GetAddress('MatrixMultd');
- MatrixLoadIdentity := GetAddress('MatrixLoadIdentity');
- MatrixRotatef := GetAddress('MatrixRotatef');
- MatrixRotated := GetAddress('MatrixRotated');
- MatrixScalef := GetAddress('MatrixScalef');
- MatrixScaled := GetAddress('MatrixScaled');
- MatrixTranslatef := GetAddress('MatrixTranslatef');
- MatrixTranslated := GetAddress('MatrixTranslated');
- MatrixFrustum := GetAddress('MatrixFrustum');
- MatrixOrtho := GetAddress('MatrixOrtho');
- MatrixPop := GetAddress('MatrixPop');
- MatrixPush := GetAddress('MatrixPush');
- MatrixLoadTransposef := GetAddress('MatrixLoadTransposef');
- MatrixLoadTransposed := GetAddress('MatrixLoadTransposed');
- MatrixMultTransposef := GetAddress('MatrixMultTransposef');
- MatrixMultTransposed := GetAddress('MatrixMultTransposed');
- TextureParameterfv := GetAddress('TextureParameterfv');
- TextureParameteri := GetAddress('TextureParameteri');
- TextureParameteriv := GetAddress('TextureParameteriv');
- TextureImage1D := GetAddress('TextureImage1D');
- TextureImage2D := GetAddress('TextureImage2D');
- TextureSubImage1D := GetAddress('TextureSubImage1D');
- TextureSubImage2D := GetAddress('TextureSubImage2D');
- CopyTextureImage1D := GetAddress('CopyTextureImage1D');
- CopyTextureImage2D := GetAddress('CopyTextureImage2D');
- CopyTextureSubImage1D := GetAddress('CopyTextureSubImage1D');
- CopyTextureSubImage2D := GetAddress('CopyTextureSubImage2D');
- GetTextureImage := GetAddress('GetTextureImage');
- GetTextureParameterfv := GetAddress('GetTextureParameterfv');
- GetTextureParameteriv := GetAddress('GetTextureParameteriv');
- GetTextureLevelParameterfv := GetAddress('GetTextureLevelParameterfv');
- GetTextureLevelParameteriv := GetAddress('GetTextureLevelParameteriv');
- TextureImage3D := GetAddress('TextureImage3D');
- TextureSubImage3D := GetAddress('TextureSubImage3D');
- CopyTextureSubImage3D := GetAddress('CopyTextureSubImage3D');
- MultiTexParameterf := GetAddress('MultiTexParameterf');
- MultiTexParameterfv := GetAddress('MultiTexParameterfv');
- MultiTexParameteri := GetAddress('MultiTexParameteri');
- MultiTexParameteriv := GetAddress('MultiTexParameteriv');
- MultiTexImage1D := GetAddress('MultiTexImage1D');
- MultiTexImage2D := GetAddress('MultiTexImage2D');
- MultiTexSubImage1D := GetAddress('MultiTexSubImage1D');
- MultiTexSubImage2D := GetAddress('MultiTexSubImage2D');
- CopyMultiTexImage1D := GetAddress('CopyMultiTexImage1D');
- CopyMultiTexImage2D := GetAddress('CopyMultiTexImage2D');
- CopyMultiTexSubImage1D := GetAddress('CopyMultiTexSubImage1D');
- CopyMultiTexSubImage2D := GetAddress('CopyMultiTexSubImage2D');
- GetMultiTexImage := GetAddress('GetMultiTexImage');
- GetMultiTexParameterfv := GetAddress('GetMultiTexParameterfv');
- GetMultiTexParameteriv := GetAddress('GetMultiTexParameteriv');
- GetMultiTexLevelParameterfv := GetAddress('GetMultiTexLevelParameterfv');
- GetMultiTexLevelParameteriv := GetAddress('GetMultiTexLevelParameteriv');
- MultiTexImage3D := GetAddress('MultiTexImage3D');
- MultiTexSubImage3D := GetAddress('MultiTexSubImage3D');
- CopyMultiTexSubImage3D := GetAddress('CopyMultiTexSubImage3D');
- BindMultiTexture := GetAddress('BindMultiTexture');
- EnableClientStateIndexed := GetAddress('EnableClientStateIndexed');
- DisableClientStateIndexed := GetAddress('DisableClientStateIndexed');
- MultiTexCoordPointer := GetAddress('MultiTexCoordPointer');
- MultiTexEnvf := GetAddress('MultiTexEnvf');
- MultiTexEnvfv := GetAddress('MultiTexEnvfv');
- MultiTexEnvi := GetAddress('MultiTexEnvi');
- MultiTexEnviv := GetAddress('MultiTexEnviv');
- MultiTexGend := GetAddress('MultiTexGend');
- MultiTexGendv := GetAddress('MultiTexGendv');
- MultiTexGenf := GetAddress('MultiTexGenf');
- MultiTexGenfv := GetAddress('MultiTexGenfv');
- MultiTexGeni := GetAddress('MultiTexGeni');
- MultiTexGeniv := GetAddress('MultiTexGeniv');
- GetMultiTexEnvfv := GetAddress('GetMultiTexEnvfv');
- GetMultiTexEnviv := GetAddress('GetMultiTexEnviv');
- GetMultiTexGendv := GetAddress('GetMultiTexGendv');
- GetMultiTexGenfv := GetAddress('GetMultiTexGenfv');
- GetMultiTexGeniv := GetAddress('GetMultiTexGeniv');
- GetFloatIndexedv := GetAddress('GetFloatIndexedv');
- GetDoubleIndexedv := GetAddress('GetDoubleIndexedv');
- GetPointerIndexedv := GetAddress('GetPointerIndexedv');
- CompressedTextureImage3D := GetAddress('CompressedTextureImage3D');
- CompressedTextureImage2D := GetAddress('CompressedTextureImage2D');
- CompressedTextureImage1D := GetAddress('CompressedTextureImage1D');
- CompressedTextureSubImage3D := GetAddress('CompressedTextureSubImage3D');
- CompressedTextureSubImage2D := GetAddress('CompressedTextureSubImage2D');
- CompressedTextureSubImage1D := GetAddress('CompressedTextureSubImage1D');
- GetCompressedTextureImage := GetAddress('GetCompressedTextureImage');
- CompressedMultiTexImage3D := GetAddress('CompressedMultiTexImage3D');
- CompressedMultiTexImage2D := GetAddress('CompressedMultiTexImage2D');
- CompressedMultiTexImage1D := GetAddress('CompressedMultiTexImage1D');
- CompressedMultiTexSubImage3D := GetAddress('CompressedMultiTexSubImage3D');
- CompressedMultiTexSubImage2D := GetAddress('CompressedMultiTexSubImage2D');
- CompressedMultiTexSubImage1D := GetAddress('CompressedMultiTexSubImage1D');
- GetCompressedMultiTexImage := GetAddress('GetCompressedMultiTexImage');
- NamedProgramString := GetAddress('NamedProgramString');
- NamedProgramLocalParameter4d := GetAddress('NamedProgramLocalParameter4d');
- NamedProgramLocalParameter4dv := GetAddress('NamedProgramLocalParameter4dv');
- NamedProgramLocalParameter4f := GetAddress('NamedProgramLocalParameter4f');
- NamedProgramLocalParameter4fv := GetAddress('NamedProgramLocalParameter4fv');
- GetNamedProgramLocalParameterdv := GetAddress('GetNamedProgramLocalParameterdv');
- GetNamedProgramLocalParameterfv := GetAddress('GetNamedProgramLocalParameterfv');
- GetNamedProgramiv := GetAddress('GetNamedProgramiv');
- GetNamedProgramString := GetAddress('GetNamedProgramString');
- NamedProgramLocalParameters4fv := GetAddress('NamedProgramLocalParameters4fv');
- NamedProgramLocalParameterI4i := GetAddress('NamedProgramLocalParameterI4i');
- NamedProgramLocalParameterI4iv := GetAddress('NamedProgramLocalParameterI4iv');
- NamedProgramLocalParametersI4iv := GetAddress('NamedProgramLocalParametersI4iv');
- NamedProgramLocalParameterI4ui := GetAddress('NamedProgramLocalParameterI4ui');
- NamedProgramLocalParameterI4uiv := GetAddress('NamedProgramLocalParameterI4uiv');
- NamedProgramLocalParametersI4uiv := GetAddress('NamedProgramLocalParametersI4uiv');
- GetNamedProgramLocalParameterIiv := GetAddress('GetNamedProgramLocalParameterIiv');
- GetNamedProgramLocalParameterIuiv := GetAddress('GetNamedProgramLocalParameterIuiv');
- TextureParameterIiv := GetAddress('TextureParameterIiv');
- TextureParameterIuiv := GetAddress('TextureParameterIuiv');
- GetTextureParameterIiv := GetAddress('GetTextureParameterIiv');
- GetTextureParameterIuiv := GetAddress('GetTextureParameterIuiv');
- MultiTexParameterIiv := GetAddress('MultiTexParameterIiv');
- MultiTexParameterIuiv := GetAddress('MultiTexParameterIuiv');
- GetMultiTexParameterIiv := GetAddress('GetMultiTexParameterIiv');
- GetMultiTexParameterIuiv := GetAddress('GetMultiTexParameterIuiv');
- NamedBufferData := GetAddress('NamedBufferData');
- NamedBufferSubData := GetAddress('NamedBufferSubData');
- MapNamedBuffer := GetAddress('MapNamedBuffer');
- UnmapNamedBuffer := GetAddress('UnmapNamedBuffer');
- MapNamedBufferRange := GetAddress('MapNamedBufferRange');
- FlushMappedNamedBufferRange := GetAddress('FlushMappedNamedBufferRange');
- NamedCopyBufferSubData := GetAddress('NamedCopyBufferSubData');
- GetNamedBufferParameteriv := GetAddress('GetNamedBufferParameteriv');
- GetNamedBufferPointerv := GetAddress('GetNamedBufferPointerv');
- GetNamedBufferSubData := GetAddress('GetNamedBufferSubData');
- TextureBuffer := GetAddress('TextureBuffer');
- MultiTexBuffer := GetAddress('MultiTexBuffer');
- NamedRenderbufferStorage := GetAddress('NamedRenderbufferStorage');
- GetNamedRenderbufferParameteriv :=
- GetAddress('GetNamedRenderbufferParameteriv');
- CheckNamedFramebufferStatus := GetAddress('CheckNamedFramebufferStatus');
- NamedFramebufferTexture1D := GetAddress('NamedFramebufferTexture1D');
- NamedFramebufferTexture2D := GetAddress('NamedFramebufferTexture2D');
- NamedFramebufferTexture3D := GetAddress('NamedFramebufferTexture3D');
- NamedFramebufferRenderbuffer := GetAddress('NamedFramebufferRenderbuffer');
- GetNamedFramebufferAttachmentParameteriv := GetAddress('GetNamedFramebufferAttachmentParameteriv');
- GenerateTextureMipmap := GetAddress('GenerateTextureMipmap');
- GenerateMultiTexMipmap := GetAddress('GenerateMultiTexMipmap');
- FramebufferDrawBuffer := GetAddress('FramebufferDrawBuffer');
- FramebufferDrawBuffers := GetAddress('FramebufferDrawBuffers');
- FramebufferReadBuffer := GetAddress('FramebufferReadBuffer');
- GetFramebufferParameteriv := GetAddress('GetFramebufferParameteriv');
- NamedRenderbufferStorageMultisample := GetAddress('NamedRenderbufferStorageMultisample');
- NamedRenderbufferStorageMultisampleCoverage := GetAddress('NamedRenderbufferStorageMultisampleCoverage');
- NamedFramebufferTexture := GetAddress('NamedFramebufferTexture');
- NamedFramebufferTextureLayer := GetAddress('NamedFramebufferTextureLayer');
- NamedFramebufferTextureFace := GetAddress('NamedFramebufferTextureFace');
- TextureRenderbuffer := GetAddress('TextureRenderbuffer');
- MultiTexRenderbuffer := GetAddress('MultiTexRenderbuffer');
- FrameTerminatorGREMEDY := GetAddress('FrameTerminatorGREMEDY');
- StringMarkerGREMEDY := GetAddress('StringMarkerGREMEDY');
- DebugMessageEnableAMDX := GetAddressNoSuffixes('DebugMessageEnableAMDX');
- DebugMessageCallbackAMDX := GetAddressNoSuffixes('DebugMessageCallbackAMDX');
- DebugMessageControl := GetAddress('DebugMessageControl');
- DebugMessageInsert := GetAddress('DebugMessageInsert');
- DebugMessageCallback := GetAddress('DebugMessageCallback');
- GetDebugMessageLog := GetAddress('GetDebugMessageLog');
- PushDebugGroup := GetAddress('PushDebugGroup');
- PopDebugGroup := GetAddress('PopDebugGroup');
- ObjectLabel := GetAddress('ObjectLabel');
- GetObjectLabel := GetAddress('GetObjectLabel');
- ObjectPtrLabel := GetAddress('ObjectPtrLabel');
- GetObjectPtrLabel := GetAddress('GetObjectPtrLabel');
- ClearBufferData := GetAddress('ClearBufferData');
- ClearBufferSubData := GetAddress('ClearBufferSubData');
- ClearNamedBufferData := GetAddress('ClearNamedBufferData');
- ClearNamedBufferSubData := GetAddress('ClearNamedBufferSubData');
- DispatchCompute := GetAddress('DispatchCompute');
- DispatchComputeIndirect := GetAddress('DispatchComputeIndirect');
- CopyImageSubData := GetAddress('CopyImageSubData');
- FramebufferParameteri := GetAddress('FramebufferParameteri');
- NamedFramebufferParameteri := GetAddress('NamedFramebufferParameteri');
- GetNamedFramebufferParameteriv := GetAddress('GetNamedFramebufferParameteriv');
- GetInternalformati64v := GetAddress('GetInternalformati64v');
- InvalidateTexSubImage := GetAddress('InvalidateTexSubImage');
- InvalidateTexImage := GetAddress('InvalidateTexImage');
- InvalidateBufferSubData := GetAddress('InvalidateBufferSubData');
- InvalidateBufferData := GetAddress('InvalidateBufferData');
- InvalidateFramebuffer := GetAddress('InvalidateFramebuffer');
- InvalidateSubFramebuffer := GetAddress('InvalidateSubFramebuffer');
- MultiDrawArraysIndirect := GetAddress('MultiDrawArraysIndirect');
- MultiDrawElementsIndirect := GetAddress('MultiDrawElementsIndirect');
- GetProgramInterfaceiv := GetAddress('GetProgramInterfaceiv');
- GetProgramResourceIndex := GetAddress('GetProgramResourceIndex');
- GetProgramResourceName := GetAddress('GetProgramResourceName');
- GetProgramResourceiv := GetAddress('GetProgramResourceiv');
- GetProgramResourceLocation := GetAddress('GetProgramResourceLocation');
- GetProgramResourceLocationIndex := GetAddress('GetProgramResourceLocationIndex');
- ShaderStorageBlockBinding := GetAddress('ShaderStorageBlockBinding');
- TexBufferRange := GetAddress('TexBufferRange');
- TextureBufferRange := GetAddress('TextureBufferRange');
- TexStorage2DMultisample := GetAddress('TexStorage2DMultisample');
- TexStorage3DMultisample := GetAddress('TexStorage3DMultisample');
- TextureStorage2DMultisample := GetAddress('TextureStorage2DMultisample');
- TextureStorage3DMultisample := GetAddress('TextureStorage3DMultisample');
- BufferStorage := GetAddress('BufferStorage');
- ClearTexImage := GetAddress('ClearTexImage');
- ClearTexSubImage := GetAddress('ClearTexSubImage');
- BindBuffersBase := GetAddress('BindBuffersBase');
- BindBuffersRange := GetAddress('BindBuffersRange');
- BindTextures := GetAddress('BindTextures');
- BindSamplers := GetAddress('BindSamplers');
- BindImageTextures := GetAddress('BindImageTextures');
- BindVertexBuffers := GetAddress('BindVertexBuffers');
- TextureView := GetAddress('TextureView');
- BindVertexBuffer := GetAddress('BindVertexBuffer');
- VertexAttribFormat := GetAddress('VertexAttribFormat');
- VertexAttribIFormat := GetAddress('VertexAttribIFormat');
- VertexAttribLFormat := GetAddress('VertexAttribLFormat');
- VertexAttribBinding := GetAddress('VertexAttribBinding');
- VertexBindingDivisor := GetAddress('VertexBindingDivisor');
- VertexArrayBindVertexBuffer := GetAddress('VertexArrayBindVertexBuffer');
- VertexArrayVertexAttribFormat := GetAddress('VertexArrayVertexAttribFormat');
- VertexArrayVertexAttribIFormat := GetAddress('VertexArrayVertexAttribIFormat');
- VertexArrayVertexAttribLFormat := GetAddress('VertexArrayVertexAttribLFormat');
- VertexArrayVertexAttribBinding := GetAddress('VertexArrayVertexAttribBinding');
- VertexArrayVertexBindingDivisor := GetAddress('VertexArrayVertexBindingDivisor');
- CreateSyncFromCLevent := GetAddress('CreateSyncFromCLevent');
- GenPathsNV := GetAddressNoSuffixes('GenPathsNV');
- DeletePathsNV := GetAddressNoSuffixes('DeletePathsNV');
- IsPathNV := GetAddressNoSuffixes('IsPathNV');
- PathCommandsNV := GetAddressNoSuffixes('PathCommandsNV');
- PathCoordsNV := GetAddressNoSuffixes('PathCoordsNV');
- PathSubCommandsNV := GetAddressNoSuffixes('PathSubCommandsNV');
- PathSubCoordsNV := GetAddressNoSuffixes('PathSubCoordsNV');
- PathStringNV := GetAddressNoSuffixes('PathStringNV');
- PathGlyphsNV := GetAddressNoSuffixes('PathGlyphsNV');
- PathGlyphRangeNV := GetAddressNoSuffixes('PathGlyphRangeNV');
- WeightPathsNV := GetAddressNoSuffixes('WeightPathsNV');
- CopyPathNV := GetAddressNoSuffixes('CopyPathNV');
- InterpolatePathsNV := GetAddressNoSuffixes('InterpolatePathsNV');
- PathParameterivNV := GetAddressNoSuffixes('PathParameterivNV');
- PathParameteriNV := GetAddressNoSuffixes('PathParameteriNV');
- PathParameterfvNV := GetAddressNoSuffixes('PathParameterfvNV');
- PathParameterfNV := GetAddressNoSuffixes('PathParameterfNV');
- PathDashArrayNV := GetAddressNoSuffixes('PathDashArrayNV');
- PathStencilFuncNV := GetAddressNoSuffixes('PathStencilFuncNV');
- StencilFillPathNV := GetAddressNoSuffixes('StencilFillPathNV');
- StencilStrokePathNV := GetAddressNoSuffixes('StencilStrokePathNV');
- StencilFillPathInstancedNV := GetAddressNoSuffixes('StencilFillPathInstancedNV');
- StencilStrokePathInstancedNV := GetAddressNoSuffixes('StencilStrokePathInstancedNV');
- PathColorGenNV := GetAddressNoSuffixes('PathColorGenNV');
- PathTexGenNV := GetAddressNoSuffixes('PathTexGenNV');
- PathFogGenNV := GetAddressNoSuffixes('PathFogGenNV');
- CoverFillPathNV := GetAddressNoSuffixes('CoverFillPathNV');
- CoverStrokePathNV := GetAddressNoSuffixes('CoverStrokePathNV');
- CoverFillPathInstancedNV := GetAddressNoSuffixes('CoverFillPathInstancedNV');
- CoverStrokePathInstancedNV := GetAddressNoSuffixes('CoverStrokePathInstancedNV');
- GetPathParameterivNV := GetAddressNoSuffixes('GetPathParameterivNV');
- GetPathParameterfvNV := GetAddressNoSuffixes('GetPathParameterfvNV');
- GetPathCommandsNV := GetAddressNoSuffixes('GetPathCommandsNV');
- GetPathCoordsNV := GetAddressNoSuffixes('GetPathCoordsNV');
- GetPathDashArrayNV := GetAddressNoSuffixes('GetPathDashArrayNV');
- GetPathMetricsNV := GetAddressNoSuffixes('GetPathMetricsNV');
- GetPathMetricRangeNV := GetAddressNoSuffixes('GetPathMetricRangeNV');
- GetPathSpacingNV := GetAddressNoSuffixes('GetPathSpacingNV');
- GetPathColorGenivNV := GetAddressNoSuffixes('GetPathColorGenivNV');
- GetPathColorGenfvNV := GetAddressNoSuffixes('GetPathColorGenfvNV');
- GetPathTexGenivNV := GetAddressNoSuffixes('GetPathTexGenivNV');
- GetPathTexGenfvNV := GetAddressNoSuffixes('GetPathTexGenfvNV');
- IsPointInFillPathNV := GetAddressNoSuffixes('IsPointInFillPathNV');
- IsPointInStrokePathNV := GetAddressNoSuffixes('IsPointInStrokePathNV');
- GetPathLengthNV := GetAddressNoSuffixes('GetPathLengthNV');
- PointAlongPathNV := GetAddressNoSuffixes('PointAlongPathNV');
- PathStencilDepthOffsetNV := GetAddressNoSuffixes('PathStencilDepthOffsetNV');
- PathCoverDepthFuncNV := GetAddressNoSuffixes('PathCoverDepthFuncNV');
- if FDebug then
- if ARB_debug_output then
- begin
- DebugMessageCallback(DebugCallBack, nil);
- DebugMessageControl(GL_DONT_CARE, GL_DONT_CARE, GL_DONT_CARE, 0,
- FDebugIds, True);
- Enable(GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB);
- end
- else if AMDX_debug_output then
- begin
- DebugMessageCallbackAMDX(DebugCallBackAMD, nil);
- DebugMessageEnableAMDX(0, 0, 0, FDebugIds, True);
- end
- else
- FDebug := False;
- SetLength(FBuffer, 0);
- FInitialized := True;
- end;
- procedure TGLExtensionsAndEntryPoints.Close;
- begin
- if FDebug then
- if ARB_debug_output then
- begin
- DebugMessageCallback(nil, nil);
- DebugMessageControl(GL_DONT_CARE, GL_DONT_CARE, GL_DONT_CARE, 0,
- FDebugIds, False);
- end
- else if AMDX_debug_output then
- begin
- DebugMessageCallbackAMDX(nil, nil);
- DebugMessageEnableAMDX(0, 0, 0, FDebugIds, False);
- end;
- VERSION_1_0 := False;
- VERSION_1_1 := False;
- VERSION_1_2 := False;
- VERSION_1_3 := False;
- VERSION_1_4 := False;
- VERSION_1_5 := False;
- VERSION_2_0 := False;
- VERSION_2_1 := False;
- VERSION_3_0 := False;
- VERSION_3_1 := False;
- VERSION_3_2 := False;
- VERSION_3_3 := False;
- VERSION_4_0 := False;
- VERSION_4_1 := False;
- ARB_blend_func_extended := False;
- ARB_color_buffer_float := False;
- ARB_compatibility := False;
- ARB_copy_buffer := False;
- ARB_depth_buffer_float := False;
- ARB_depth_clamp := False;
- ARB_depth_texture := False;
- ARB_draw_buffers := False;
- ARB_draw_buffers_blend := False;
- ARB_draw_elements_base_vertex := False;
- ARB_draw_indirect := False;
- ARB_draw_instanced := False;
- ARB_explicit_attrib_location := False;
- ARB_fragment_coord_conventions := False;
- ARB_fragment_program := False;
- ARB_fragment_program_shadow := False;
- ARB_fragment_shader := False;
- ARB_framebuffer_object := False;
- ARB_framebuffer_sRGB := False;
- ARB_geometry_shader4 := False;
- ARB_gpu_shader_fp64 := False;
- ARB_gpu_shader5 := False;
- ARB_half_float_pixel := False;
- ARB_half_float_vertex := False;
- ARB_imaging := False;
- ARB_instanced_arrays := False;
- ARB_map_buffer_range := False;
- ARB_matrix_palette := False;
- ARB_multisample := False;
- // ' ' to avoid collision with WGL variant
- ARB_multitexture := False;
- ARB_occlusion_query := False;
- ARB_occlusion_query2 := False;
- ARB_pixel_buffer_object := False;
- ARB_point_parameters := False;
- ARB_point_sprite := False;
- ARB_provoking_vertex := False;
- ARB_sample_shading := False;
- ARB_sampler_objects := False;
- ARB_seamless_cube_map := False;
- ARB_shader_bit_encoding := False;
- ARB_shader_objects := False;
- ARB_shader_subroutine := False;
- ARB_shader_texture_lod := False;
- ARB_shading_language_100 := False;
- ARB_shadow := False;
- ARB_shadow_ambient := False;
- ARB_sync := False;
- ARB_tessellation_shader := False;
- ARB_texture_border_clamp := False;
- ARB_texture_buffer_object := False;
- ARB_texture_buffer_object_rgb32 := False;
- ARB_texture_compression := False;
- ARB_texture_compression_rgtc := False;
- ARB_texture_cube_map := False;
- ARB_texture_cube_map_array := False;
- ARB_texture_env_add := False;
- ARB_texture_env_combine := False;
- ARB_texture_env_crossbar := False;
- ARB_texture_env_dot3 := False;
- ARB_texture_float := False;
- ARB_texture_gather := False;
- ARB_texture_mirrored_repeat := False;
- ARB_texture_multisample := False;
- ARB_texture_non_power_of_two := False;
- ARB_texture_query_lod := False;
- ARB_texture_rectangle := False;
- ARB_texture_rg := False;
- ARB_texture_rgb10_a2ui := False;
- ARB_texture_swizzle := False;
- ARB_timer_query := False;
- ARB_transform_feedback2 := False;
- ARB_transform_feedback3 := False;
- ARB_transpose_matrix := False;
- ARB_uniform_buffer_object := False;
- ARB_vertex_array_bgra := False;
- ARB_vertex_array_object := False;
- ARB_vertex_blend := False;
- ARB_vertex_buffer_object := False;
- ARB_vertex_program := False;
- ARB_vertex_shader := False;
- ARB_vertex_type_2_10_10_10_rev := False;
- ARB_window_pos := False;
- ARB_texture_compression_bptc := False;
- ARB_get_program_binary := False;
- ARB_separate_shader_objects := False;
- ARB_shader_stencil_export := False;
- KHR_debug := False;
- ARB_clear_buffer_object := False;
- ARB_compute_shader := False;
- ARB_copy_image := False;
- ARB_debug_group := False;
- ARB_debug_label := False;
- ARB_debug_output2 := False;
- ARB_ES3_compatibility := False;
- ARB_explicit_uniform_location := False;
- ARB_fragment_layer_viewport := False;
- ARB_framebuffer_no_attachments := False;
- ARB_internalformat_query2 := False;
- ARB_invalidate_subdata := False;
- ARB_multi_draw_indirect := False;
- ARB_program_interface_query := False;
- ARB_shader_image_size := False;
- ARB_shader_storage_buffer_object := False;
- ARB_stencil_texturing := False;
- ARB_texture_buffer_range := False;
- ARB_texture_query_levels := False;
- ARB_texture_storage_multisample := False;
- ARB_texture_view := False;
- ARB_vertex_attrib_binding := False;
- ARB_robustness_isolation := False;
- ARB_cl_event := False;
- // check Vendor/EXT OpenGL extensions
- _3DFX_multisample := False;
- _3DFX_tbuffer := False;
- _3DFX_texture_compression_FXT1 := False;
- ATI_draw_buffers := False;
- ATI_texture_compression_3dc := False;
- ATI_texture_float := False;
- ATI_texture_mirror_once := False;
- S3_s3tc := False;
- EXT_abgr := False;
- EXT_bgra := False;
- EXT_bindable_uniform := False;
- EXT_blend_color := False;
- EXT_blend_equation_separate := False;
- EXT_blend_func_separate := False;
- EXT_blend_logic_op := False;
- EXT_blend_minmax := False;
- EXT_blend_subtract := False;
- EXT_Cg_shader := False;
- EXT_clip_volume_hint := False;
- EXT_compiled_vertex_array := False;
- EXT_copy_texture := False;
- EXT_depth_bounds_test := False;
- EXT_draw_buffers2 := False;
- EXT_draw_instanced := False;
- EXT_draw_range_elements := False;
- EXT_fog_coord := False;
- EXT_framebuffer_blit := False;
- EXT_framebuffer_multisample := False;
- EXT_framebuffer_object := False;
- EXT_framebuffer_sRGB := False;
- EXT_geometry_shader4 := False;
- EXT_gpu_program_parameters := False;
- EXT_gpu_shader4 := False;
- EXT_multi_draw_arrays := False;
- EXT_multisample := False;
- EXT_packed_depth_stencil := False;
- EXT_packed_float := False;
- EXT_packed_pixels := False;
- EXT_paletted_texture := False;
- EXT_pixel_buffer_object := False;
- EXT_polygon_offset := False;
- EXT_rescale_normal := False;
- EXT_secondary_color := False;
- EXT_separate_specular_color := False;
- EXT_shadow_funcs := False;
- EXT_shared_texture_palette := False;
- EXT_stencil_clear_tag := False;
- EXT_stencil_two_side := False;
- EXT_stencil_wrap := False;
- EXT_texture3D := False;
- EXT_texture_array := False;
- EXT_texture_buffer_object := False;
- EXT_texture_compression_latc := False;
- EXT_texture_compression_rgtc := False;
- EXT_texture_compression_s3tc := False;
- EXT_texture_cube_map := False;
- EXT_texture_edge_clamp := False;
- EXT_texture_env_add := False;
- EXT_texture_env_combine := False;
- EXT_texture_env_dot3 := False;
- EXT_texture_filter_anisotropic := False;
- EXT_texture_integer := False;
- EXT_texture_lod := False;
- EXT_texture_lod_bias := False;
- EXT_texture_mirror_clamp := False;
- EXT_texture_object := False;
- EXT_texture_rectangle := False;
- EXT_texture_sRGB := False;
- EXT_texture_shared_exponent := False;
- EXT_timer_query := False;
- EXT_transform_feedback := False;
- EXT_vertex_array := False;
- EXT_texture_sRGB_decode := False;
- EXT_direct_state_access := False;
- EXT_texture_swizzle := False;
- HP_occlusion_test := False;
- IBM_rasterpos_clip := False;
- KTX_buffer_region := False;
- MESA_resize_buffers := False;
- NV_blend_square := False;
- NV_conditional_render := False;
- NV_copy_image := False;
- NV_depth_buffer_float := False;
- NV_fence := False;
- NV_float_buffer := False;
- NV_fog_distance := False;
- NV_geometry_program4 := False;
- NV_light_max_exponent := False;
- NV_multisample_filter_hint := False;
- NV_occlusion_query := False;
- NV_point_sprite := False;
- NV_primitive_restart := False;
- NV_register_combiners := False;
- NV_shader_buffer_load := False;
- NV_texgen_reflection := False;
- NV_texture_compression_vtc := False;
- NV_texture_env_combine4 := False;
- NV_texture_rectangle := False;
- NV_texture_shader := False;
- NV_texture_shader2 := False;
- NV_texture_shader3 := False;
- NV_transform_feedback := False;
- NV_vertex_array_range := False;
- NV_vertex_array_range2 := False;
- NV_vertex_buffer_unified_memory := False;
- NV_vertex_program := False;
- SGI_color_matrix := False;
- SGIS_generate_mipmap := False;
- SGIS_multisample := False;
- SGIS_texture_border_clamp := False;
- SGIS_texture_color_mask := False;
- SGIS_texture_edge_clamp := False;
- SGIS_texture_lod := False;
- SGIX_depth_texture := False;
- SGIX_shadow := False;
- SGIX_shadow_ambient := False;
- AMD_vertex_shader_tessellator := False;
- WIN_swap_hint := False;
- ATI_meminfo := False;
- NVX_gpu_memory_info := False;
- NV_vdpau_interop := False;
- NV_path_rendering := False;
- GREMEDY_frame_terminator := False;
- GREMEDY_string_marker := False;
- ARB_debug_output := False;
- BindTexture := GetCapAddress();
- BlendFunc := GetCapAddress();
- Clear := GetCapAddress();
- ClearColor := GetCapAddress();
- ClearDepth := GetCapAddress();
- ClearStencil := GetCapAddress();
- ColorMask := GetCapAddress();
- CopyTexImage1D := GetCapAddress();
- CopyTexImage2D := GetCapAddress();
- CopyTexSubImage1D := GetCapAddress();
- CopyTexSubImage2D := GetCapAddress();
- CullFace := GetCapAddress();
- DeleteTextures := GetCapAddress();
- DepthFunc := GetCapAddress();
- DepthMask := GetCapAddress();
- DepthRange := GetCapAddress();
- Disable := GetCapAddress();
- DrawArrays := GetCapAddress();
- DrawBuffer := GetCapAddress();
- DrawElements := GetCapAddress();
- Enable := GetCapAddress();
- Finish := GetCapAddress();
- Flush := GetCapAddress();
- FrontFace := GetCapAddress();
- GenTextures := GetCapAddress();
- GetBooleanv := GetCapAddress();
- GetDoublev := GetCapAddress();
- GetError := GetCapAddress();
- GetFloatv := GetCapAddress();
- GetPointerv := GetCapAddress();
- GetString := GetCapAddress();
- GetTexImage := GetCapAddress();
- GetTexLevelParameterfv := GetCapAddress();
- GetTexLevelParameteriv := GetCapAddress();
- GetTexParameterfv := GetCapAddress();
- GetTexParameteriv := GetCapAddress();
- Hint := GetCapAddress();
- IsEnabled := GetCapAddress();
- IsTexture := GetCapAddress();
- LineWidth := GetCapAddress();
- LogicOp := GetCapAddress();
- PixelStoref := GetCapAddress();
- PixelStorei := GetCapAddress();
- PointSize := GetCapAddress();
- PolygonMode := GetCapAddress();
- PolygonOffset := GetCapAddress();
- ReadBuffer := GetCapAddress();
- ReadPixels := GetCapAddress();
- Scissor := GetCapAddress();
- StencilFunc := GetCapAddress();
- StencilMask := GetCapAddress();
- StencilOp := GetCapAddress();
- TexImage1D := GetCapAddress();
- TexImage2D := GetCapAddress();
- TexParameterf := GetCapAddress();
- TexParameterfv := GetCapAddress();
- TexParameteri := GetCapAddress();
- TexParameteriv := GetCapAddress();
- TexSubImage1D := GetCapAddress();
- TexSubImage2D := GetCapAddress();
- Viewport := GetCapAddress();
- Accum := GetCapAddress();
- AlphaFunc := GetCapAddress();
- AreTexturesResident := GetCapAddress();
- ArrayElement := GetCapAddress();
- Begin_ := GetCapAddress();
- Bitmap := GetCapAddress();
- CallList := GetCapAddress();
- CallLists := GetCapAddress();
- ClearAccum := GetCapAddress();
- ClearIndex := GetCapAddress();
- ClipPlane := GetCapAddress();
- Color3b := GetCapAddress();
- Color3bv := GetCapAddress();
- Color3d := GetCapAddress();
- Color3dv := GetCapAddress();
- Color3f := GetCapAddress();
- Color3fv := GetCapAddress();
- Color3i := GetCapAddress();
- Color3iv := GetCapAddress();
- Color3s := GetCapAddress();
- Color3sv := GetCapAddress();
- Color3ub := GetCapAddress();
- Color3ubv := GetCapAddress();
- Color3ui := GetCapAddress();
- Color3uiv := GetCapAddress();
- Color3us := GetCapAddress();
- Color3usv := GetCapAddress();
- Color4b := GetCapAddress();
- Color4bv := GetCapAddress();
- Color4d := GetCapAddress();
- Color4dv := GetCapAddress();
- Color4f := GetCapAddress();
- Color4fv := GetCapAddress();
- Color4i := GetCapAddress();
- Color4iv := GetCapAddress();
- Color4s := GetCapAddress();
- Color4sv := GetCapAddress();
- Color4ub := GetCapAddress();
- Color4ubv := GetCapAddress();
- Color4ui := GetCapAddress();
- Color4uiv := GetCapAddress();
- Color4us := GetCapAddress();
- Color4usv := GetCapAddress();
- ColorMaterial := GetCapAddress();
- ColorPointer := GetCapAddress();
- CopyPixels := GetCapAddress();
- DeleteLists := GetCapAddress();
- DisableClientState := GetCapAddress();
- DrawPixels := GetCapAddress();
- EdgeFlag := GetCapAddress();
- EdgeFlagPointer := GetCapAddress();
- EdgeFlagv := GetCapAddress();
- EnableClientState := GetCapAddress();
- End_ := GetCapAddress();
- EndList := GetCapAddress();
- EvalCoord1d := GetCapAddress();
- EvalCoord1dv := GetCapAddress();
- EvalCoord1f := GetCapAddress();
- EvalCoord1fv := GetCapAddress();
- EvalCoord2d := GetCapAddress();
- EvalCoord2dv := GetCapAddress();
- EvalCoord2f := GetCapAddress();
- EvalCoord2fv := GetCapAddress();
- EvalMesh1 := GetCapAddress();
- EvalMesh2 := GetCapAddress();
- EvalPoint1 := GetCapAddress();
- EvalPoint2 := GetCapAddress();
- FeedbackBuffer := GetCapAddress();
- Fogf := GetCapAddress();
- Fogfv := GetCapAddress();
- Fogi := GetCapAddress();
- Fogiv := GetCapAddress();
- Frustum := GetCapAddress();
- GenLists := GetCapAddress();
- GetClipPlane := GetCapAddress();
- GetLightfv := GetCapAddress();
- GetLightiv := GetCapAddress();
- GetMapdv := GetCapAddress();
- GetMapfv := GetCapAddress();
- GetMapiv := GetCapAddress();
- GetMaterialfv := GetCapAddress();
- GetMaterialiv := GetCapAddress();
- GetPixelMapfv := GetCapAddress();
- GetPixelMapuiv := GetCapAddress();
- GetPixelMapusv := GetCapAddress();
- GetPolygonStipple := GetCapAddress();
- GetTexEnvfv := GetCapAddress();
- GetTexEnviv := GetCapAddress();
- GetTexGendv := GetCapAddress();
- GetTexGenfv := GetCapAddress();
- GetTexGeniv := GetCapAddress();
- IndexMask := GetCapAddress();
- IndexPointer := GetCapAddress();
- Indexd := GetCapAddress();
- Indexdv := GetCapAddress();
- Indexf := GetCapAddress();
- Indexfv := GetCapAddress();
- Indexi := GetCapAddress();
- Indexiv := GetCapAddress();
- Indexs := GetCapAddress();
- Indexsv := GetCapAddress();
- Indexub := GetCapAddress();
- Indexubv := GetCapAddress();
- InitNames := GetCapAddress();
- InterleavedArrays := GetCapAddress();
- IsList := GetCapAddress();
- LightModelf := GetCapAddress();
- LightModelfv := GetCapAddress();
- LightModeli := GetCapAddress();
- LightModeliv := GetCapAddress();
- Lightf := GetCapAddress();
- Lightfv := GetCapAddress();
- Lighti := GetCapAddress();
- Lightiv := GetCapAddress();
- LineStipple := GetCapAddress();
- ListBase := GetCapAddress();
- LoadIdentity := GetCapAddress();
- LoadMatrixd := GetCapAddress();
- LoadMatrixf := GetCapAddress();
- LoadName := GetCapAddress();
- Map1d := GetCapAddress();
- Map1f := GetCapAddress();
- Map2d := GetCapAddress();
- Map2f := GetCapAddress();
- MapGrid1d := GetCapAddress();
- MapGrid1f := GetCapAddress();
- MapGrid2d := GetCapAddress();
- MapGrid2f := GetCapAddress();
- Materialf := GetCapAddress();
- Materialfv := GetCapAddress();
- Materiali := GetCapAddress();
- Materialiv := GetCapAddress();
- MatrixMode := GetCapAddress();
- MultMatrixd := GetCapAddress();
- MultMatrixf := GetCapAddress();
- NewList := GetCapAddress();
- Normal3b := GetCapAddress();
- Normal3bv := GetCapAddress();
- Normal3d := GetCapAddress();
- Normal3dv := GetCapAddress();
- Normal3f := GetCapAddress();
- Normal3fv := GetCapAddress();
- Normal3i := GetCapAddress();
- Normal3iv := GetCapAddress();
- Normal3s := GetCapAddress();
- Normal3sv := GetCapAddress();
- NormalPointer := GetCapAddress();
- Ortho := GetCapAddress();
- PassThrough := GetCapAddress();
- PixelMapfv := GetCapAddress();
- PixelMapuiv := GetCapAddress();
- PixelMapusv := GetCapAddress();
- PixelTransferf := GetCapAddress();
- PixelTransferi := GetCapAddress();
- PixelZoom := GetCapAddress();
- PolygonStipple := GetCapAddress();
- PopAttrib := GetCapAddress();
- PopClientAttrib := GetCapAddress();
- PopMatrix := GetCapAddress();
- PopName := GetCapAddress();
- PrioritizeTextures := GetCapAddress();
- PushAttrib := GetCapAddress();
- PushClientAttrib := GetCapAddress();
- PushMatrix := GetCapAddress();
- PushName := GetCapAddress();
- RasterPos2d := GetCapAddress();
- RasterPos2dv := GetCapAddress();
- RasterPos2f := GetCapAddress();
- RasterPos2fv := GetCapAddress();
- RasterPos2i := GetCapAddress();
- RasterPos2iv := GetCapAddress();
- RasterPos2s := GetCapAddress();
- RasterPos2sv := GetCapAddress();
- RasterPos3d := GetCapAddress();
- RasterPos3dv := GetCapAddress();
- RasterPos3f := GetCapAddress();
- RasterPos3fv := GetCapAddress();
- RasterPos3i := GetCapAddress();
- RasterPos3iv := GetCapAddress();
- RasterPos3s := GetCapAddress();
- RasterPos3sv := GetCapAddress();
- RasterPos4d := GetCapAddress();
- RasterPos4dv := GetCapAddress();
- RasterPos4f := GetCapAddress();
- RasterPos4fv := GetCapAddress();
- RasterPos4i := GetCapAddress();
- RasterPos4iv := GetCapAddress();
- RasterPos4s := GetCapAddress();
- RasterPos4sv := GetCapAddress();
- Rectd := GetCapAddress();
- Rectdv := GetCapAddress();
- Rectf := GetCapAddress();
- Rectfv := GetCapAddress();
- Recti := GetCapAddress();
- Rectiv := GetCapAddress();
- Rects := GetCapAddress();
- Rectsv := GetCapAddress();
- RenderMode := GetCapAddress();
- Rotated := GetCapAddress();
- Rotatef := GetCapAddress();
- Scaled := GetCapAddress();
- Scalef := GetCapAddress();
- SelectBuffer := GetCapAddress();
- ShadeModel := GetCapAddress();
- TexCoord1d := GetCapAddress();
- TexCoord1dv := GetCapAddress();
- TexCoord1f := GetCapAddress();
- TexCoord1fv := GetCapAddress();
- TexCoord1i := GetCapAddress();
- TexCoord1iv := GetCapAddress();
- TexCoord1s := GetCapAddress();
- TexCoord1sv := GetCapAddress();
- TexCoord2d := GetCapAddress();
- TexCoord2dv := GetCapAddress();
- TexCoord2f := GetCapAddress();
- TexCoord2fv := GetCapAddress();
- TexCoord2i := GetCapAddress();
- TexCoord2iv := GetCapAddress();
- TexCoord2s := GetCapAddress();
- TexCoord2sv := GetCapAddress();
- TexCoord3d := GetCapAddress();
- TexCoord3dv := GetCapAddress();
- TexCoord3f := GetCapAddress();
- TexCoord3fv := GetCapAddress();
- TexCoord3i := GetCapAddress();
- TexCoord3iv := GetCapAddress();
- TexCoord3s := GetCapAddress();
- TexCoord3sv := GetCapAddress();
- TexCoord4d := GetCapAddress();
- TexCoord4dv := GetCapAddress();
- TexCoord4f := GetCapAddress();
- TexCoord4fv := GetCapAddress();
- TexCoord4i := GetCapAddress();
- TexCoord4iv := GetCapAddress();
- TexCoord4s := GetCapAddress();
- TexCoord4sv := GetCapAddress();
- TexCoordPointer := GetCapAddress();
- TexEnvf := GetCapAddress();
- TexEnvfv := GetCapAddress();
- TexEnvi := GetCapAddress();
- TexEnviv := GetCapAddress();
- TexGend := GetCapAddress();
- TexGendv := GetCapAddress();
- TexGenf := GetCapAddress();
- TexGenfv := GetCapAddress();
- TexGeni := GetCapAddress();
- TexGeniv := GetCapAddress();
- Translated := GetCapAddress();
- Translatef := GetCapAddress();
- Vertex2d := GetCapAddress();
- Vertex2dv := GetCapAddress();
- Vertex2f := GetCapAddress();
- Vertex2fv := GetCapAddress();
- Vertex2i := GetCapAddress();
- Vertex2iv := GetCapAddress();
- Vertex2s := GetCapAddress();
- Vertex2sv := GetCapAddress();
- Vertex3d := GetCapAddress();
- Vertex3dv := GetCapAddress();
- Vertex3f := GetCapAddress();
- Vertex3fv := GetCapAddress();
- Vertex3i := GetCapAddress();
- Vertex3iv := GetCapAddress();
- Vertex3s := GetCapAddress();
- Vertex3sv := GetCapAddress();
- Vertex4d := GetCapAddress();
- Vertex4dv := GetCapAddress();
- Vertex4f := GetCapAddress();
- Vertex4fv := GetCapAddress();
- Vertex4i := GetCapAddress();
- Vertex4iv := GetCapAddress();
- Vertex4s := GetCapAddress();
- Vertex4sv := GetCapAddress();
- VertexPointer := GetCapAddress();
- BlendColor := GetCapAddress();
- BlendEquation := GetCapAddress();
- DrawRangeElements := GetCapAddress();
- TexImage3D := GetCapAddress();
- TexSubImage3D := GetCapAddress();
- CopyTexSubImage3D := GetCapAddress();
- IsRenderbuffer := GetCapAddress();
- BindRenderbuffer := GetCapAddress();
- DeleteRenderbuffers := GetCapAddress();
- GenRenderbuffers := GetCapAddress();
- RenderbufferStorage := GetCapAddress();
- RenderbufferStorageMultisample := GetCapAddress();
- GetRenderbufferParameteriv := GetCapAddress();
- IsFramebuffer := GetCapAddress();
- BindFramebuffer := GetCapAddress();
- DeleteFramebuffers := GetCapAddress();
- GenFramebuffers := GetCapAddress();
- CheckFramebufferStatus := GetCapAddress();
- FramebufferTexture := GetCapAddress();
- FramebufferTexture1D := GetCapAddress();
- FramebufferTexture2D := GetCapAddress();
- FramebufferTexture3D := GetCapAddress();
- FramebufferTextureLayer := GetCapAddress();
- FramebufferTextureFace := GetCapAddress();
- FramebufferRenderbuffer := GetCapAddress();
- GetFramebufferAttachmentParameteriv := GetCapAddress();
- BlitFramebuffer := GetCapAddress();
- GenerateMipmap := GetCapAddress();
- ClearBufferiv := GetCapAddress();
- ClearBufferuiv := GetCapAddress();
- ClearBufferfv := GetCapAddress();
- ClearBufferfi := GetCapAddress();
- LockArrays := GetCapAddress();
- UnlockArrays := GetCapAddress();
- BindBuffer := GetCapAddress();
- DeleteBuffers := GetCapAddress();
- GenBuffers := GetCapAddress();
- IsBuffer := GetCapAddress();
- BufferData := GetCapAddress();
- BufferSubData := GetCapAddress();
- GetBufferSubData := GetCapAddress();
- MapBuffer := GetCapAddress();
- UnmapBuffer := GetCapAddress();
- GetBufferParameteriv := GetCapAddress();
- GetBufferPointerv := GetCapAddress();
- MapBufferRange := GetCapAddress();
- FlushMappedBufferRange := GetCapAddress();
- BindBufferRange := GetCapAddress();
- BindBufferOffset := GetCapAddress();
- BindBufferBase := GetCapAddress();
- BeginTransformFeedback := GetCapAddress();
- EndTransformFeedback := GetCapAddress();
- TransformFeedbackVaryings := GetCapAddress();
- GetTransformFeedbackVarying := GetCapAddress();
- TransformFeedbackAttribs := GetCapAddress();
- TransformFeedbackVaryingsNV := GetCapAddress();
- TexBuffer := GetCapAddress();
- BindVertexArray := GetCapAddress();
- DeleteVertexArrays := GetCapAddress();
- GenVertexArrays := GetCapAddress();
- IsVertexArray := GetCapAddress();
- FlushVertexArrayRangeNV := GetCapAddress();
- VertexArrayRangeNV := GetCapAddress();
- CopyBufferSubData := GetCapAddress();
- UniformBuffer := GetCapAddress();
- GetUniformBufferSize := GetCapAddress();
- GetUniformOffset := GetCapAddress();
- PrimitiveRestartIndex := GetCapAddress();
- DrawElementsBaseVertex := GetCapAddress();
- DrawRangeElementsBaseVertex := GetCapAddress();
- DrawElementsInstancedBaseVertex := GetCapAddress();
- MultiDrawElementsBaseVertex := GetCapAddress();
- DrawArraysInstanced := GetCapAddress();
- DrawElementsInstanced := GetCapAddress();
- VertexAttrib1d := GetCapAddress();
- VertexAttrib1dv := GetCapAddress();
- VertexAttrib1f := GetCapAddress();
- VertexAttrib1fv := GetCapAddress();
- VertexAttrib1s := GetCapAddress();
- VertexAttrib1sv := GetCapAddress();
- VertexAttrib2d := GetCapAddress();
- VertexAttrib2dv := GetCapAddress();
- VertexAttrib2f := GetCapAddress();
- VertexAttrib2fv := GetCapAddress();
- VertexAttrib2s := GetCapAddress();
- VertexAttrib2sv := GetCapAddress();
- VertexAttrib3d := GetCapAddress();
- VertexAttrib3dv := GetCapAddress();
- VertexAttrib3f := GetCapAddress();
- VertexAttrib3fv := GetCapAddress();
- VertexAttrib3s := GetCapAddress();
- VertexAttrib3sv := GetCapAddress();
- VertexAttrib4Nbv := GetCapAddress();
- VertexAttrib4Niv := GetCapAddress();
- VertexAttrib4Nsv := GetCapAddress();
- VertexAttrib4Nub := GetCapAddress();
- VertexAttrib4Nubv := GetCapAddress();
- VertexAttrib4Nuiv := GetCapAddress();
- VertexAttrib4Nusv := GetCapAddress();
- VertexAttrib4bv := GetCapAddress();
- VertexAttrib4d := GetCapAddress();
- VertexAttrib4dv := GetCapAddress();
- VertexAttrib4f := GetCapAddress();
- VertexAttrib4fv := GetCapAddress();
- VertexAttrib4iv := GetCapAddress();
- VertexAttrib4s := GetCapAddress();
- VertexAttrib4sv := GetCapAddress();
- VertexAttrib4ubv := GetCapAddress();
- VertexAttrib4uiv := GetCapAddress();
- VertexAttrib4usv := GetCapAddress();
- VertexAttribPointer := GetCapAddress();
- VertexAttribI1i := GetCapAddress();
- VertexAttribI2i := GetCapAddress();
- VertexAttribI3i := GetCapAddress();
- VertexAttribI4i := GetCapAddress();
- VertexAttribI1ui := GetCapAddress();
- VertexAttribI2ui := GetCapAddress();
- VertexAttribI3ui := GetCapAddress();
- VertexAttribI4ui := GetCapAddress();
- VertexAttribI1iv := GetCapAddress();
- VertexAttribI2iv := GetCapAddress();
- VertexAttribI3iv := GetCapAddress();
- VertexAttribI4iv := GetCapAddress();
- VertexAttribI1uiv := GetCapAddress();
- VertexAttribI2uiv := GetCapAddress();
- VertexAttribI3uiv := GetCapAddress();
- VertexAttribI4uiv := GetCapAddress();
- VertexAttribI4bv := GetCapAddress();
- VertexAttribI4sv := GetCapAddress();
- VertexAttribI4ubv := GetCapAddress();
- VertexAttribI4usv := GetCapAddress();
- VertexAttribIPointer := GetCapAddress();
- GetVertexAttribIiv := GetCapAddress();
- GetVertexAttribIuiv := GetCapAddress();
- EnableVertexAttribArray := GetCapAddress();
- DisableVertexAttribArray := GetCapAddress();
- VertexAttribDivisor := GetCapAddress();
- GenQueries := GetCapAddress();
- DeleteQueries := GetCapAddress();
- IsQuery := GetCapAddress();
- BeginQuery := GetCapAddress();
- EndQuery := GetCapAddress();
- GetQueryiv := GetCapAddress();
- GetQueryObjectiv := GetCapAddress();
- GetQueryObjectuiv := GetCapAddress();
- QueryCounter := GetCapAddress();
- GetQueryObjecti64v := GetCapAddress();
- GetQueryObjectui64v := GetCapAddress();
- DeleteObject := GetCapAddress();
- GetHandle := GetCapAddress();
- DetachShader := GetCapAddress();
- CreateShader := GetCapAddress();
- ShaderSource := GetCapAddress();
- CompileShader := GetCapAddress();
- CreateProgram := GetCapAddress();
- AttachShader := GetCapAddress();
- LinkProgram := GetCapAddress();
- UseProgram := GetCapAddress();
- ValidateProgram := GetCapAddress();
- Uniform1f := GetCapAddress();
- Uniform2f := GetCapAddress();
- Uniform3f := GetCapAddress();
- Uniform4f := GetCapAddress();
- Uniform1i := GetCapAddress();
- Uniform2i := GetCapAddress();
- Uniform3i := GetCapAddress();
- Uniform4i := GetCapAddress();
- Uniform1fv := GetCapAddress();
- Uniform2fv := GetCapAddress();
- Uniform3fv := GetCapAddress();
- Uniform4fv := GetCapAddress();
- Uniform1iv := GetCapAddress();
- Uniform2iv := GetCapAddress();
- Uniform3iv := GetCapAddress();
- Uniform4iv := GetCapAddress();
- Uniform1ui := GetCapAddress();
- Uniform2ui := GetCapAddress();
- Uniform3ui := GetCapAddress();
- Uniform4ui := GetCapAddress();
- Uniform1uiv := GetCapAddress();
- Uniform2uiv := GetCapAddress();
- Uniform3uiv := GetCapAddress();
- Uniform4uiv := GetCapAddress();
- GetUniformuiv := GetCapAddress();
- UniformMatrix2fv := GetCapAddress();
- UniformMatrix3fv := GetCapAddress();
- UniformMatrix4fv := GetCapAddress();
- BindFragDataLocation := GetCapAddress();
- GetFragDataLocation := GetCapAddress();
- ClampColor := GetCapAddress();
- ColorMaski := GetCapAddress();
- GetBooleani_v := GetCapAddress();
- GetIntegeri_v := GetCapAddress();
- Enablei := GetCapAddress();
- Disablei := GetCapAddress();
- IsEnabledi := GetCapAddress();
- BindFragDataLocationIndexed := GetCapAddress();
- GetFragDataIndex := GetCapAddress();
- GetObjectParameterfv := GetCapAddress();
- GetObjectParameteriv := GetCapAddress();
- GetAttachedObjects := GetCapAddress();
- GetActiveAttrib := GetCapAddress();
- GetActiveUniform := GetCapAddress();
- GetAttachedShaders := GetCapAddress();
- GetAttribLocation := GetCapAddress();
- GetProgramiv := GetCapAddress();
- GetProgramInfoLog := GetCapAddress();
- GetShaderiv := GetCapAddress();
- GetInfoLog := GetCapAddress();
- GetShaderInfoLog := GetCapAddress();
- GetShaderSource := GetCapAddress();
- GetUniformLocation := GetCapAddress();
- GetUniformfv := GetCapAddress();
- GetUniformiv := GetCapAddress();
- GetVertexAttribdv := GetCapAddress();
- GetVertexAttribfv := GetCapAddress();
- GetVertexAttribiv := GetCapAddress();
- GetVertexAttribPointerv := GetCapAddress();
- IsProgram := GetCapAddress();
- IsShader := GetCapAddress();
- GetUniformLocation := GetCapAddress();
- BindAttribLocation := GetCapAddress();
- GetVaryingLocation := GetCapAddress();
- GetActiveVarying := GetCapAddress();
- ActiveVarying := GetCapAddress();
- GetUniformIndices := GetCapAddress();
- GetActiveUniformsiv := GetCapAddress();
- GetActiveUniformName := GetCapAddress();
- GetUniformBlockIndex := GetCapAddress();
- GetActiveUniformBlockiv := GetCapAddress();
- GetActiveUniformBlockName := GetCapAddress();
- UniformBlockBinding := GetCapAddress();
- GetProgramBinary := GetCapAddress();
- ProgramBinary := GetCapAddress();
- UseProgramStages := GetCapAddress();
- ActiveShaderProgram := GetCapAddress();
- CreateShaderProgramv := GetCapAddress();
- BindProgramPipeline := GetCapAddress();
- DeleteProgramPipelines := GetCapAddress();
- GenProgramPipelines := GetCapAddress();
- IsProgramPipeline := GetCapAddress();
- GetProgramPipelineiv := GetCapAddress();
- ProgramUniform1i := GetCapAddress();
- ProgramUniform1iv := GetCapAddress();
- ProgramUniform1f := GetCapAddress();
- ProgramUniform1fv := GetCapAddress();
- ProgramUniform1d := GetCapAddress();
- ProgramUniform1dv := GetCapAddress();
- ProgramUniform1ui := GetCapAddress();
- ProgramUniform1uiv := GetCapAddress();
- ProgramUniform2i := GetCapAddress();
- ProgramUniform2iv := GetCapAddress();
- ProgramUniform2f := GetCapAddress();
- ProgramUniform2fv := GetCapAddress();
- ProgramUniform2d := GetCapAddress();
- ProgramUniform2dv := GetCapAddress();
- ProgramUniform2ui := GetCapAddress();
- ProgramUniform2uiv := GetCapAddress();
- ProgramUniform3i := GetCapAddress();
- ProgramUniform3iv := GetCapAddress();
- ProgramUniform3f := GetCapAddress();
- ProgramUniform3fv := GetCapAddress();
- ProgramUniform3d := GetCapAddress();
- ProgramUniform3dv := GetCapAddress();
- ProgramUniform3ui := GetCapAddress();
- ProgramUniform3uiv := GetCapAddress();
- ProgramUniform4i := GetCapAddress();
- ProgramUniform4iv := GetCapAddress();
- ProgramUniform4f := GetCapAddress();
- ProgramUniform4fv := GetCapAddress();
- ProgramUniform4d := GetCapAddress();
- ProgramUniform4dv := GetCapAddress();
- ProgramUniform4ui := GetCapAddress();
- ProgramUniform4uiv := GetCapAddress();
- ProgramUniformMatrix2fv := GetCapAddress();
- ProgramUniformMatrix3fv := GetCapAddress();
- ProgramUniformMatrix4fv := GetCapAddress();
- ProgramUniformMatrix2dv := GetCapAddress();
- ProgramUniformMatrix3dv := GetCapAddress();
- ProgramUniformMatrix4dv := GetCapAddress();
- ProgramUniformMatrix2x3fv := GetCapAddress();
- ProgramUniformMatrix3x2fv := GetCapAddress();
- ProgramUniformMatrix2x4fv := GetCapAddress();
- ProgramUniformMatrix4x2fv := GetCapAddress();
- ProgramUniformMatrix3x4fv := GetCapAddress();
- ProgramUniformMatrix4x3fv := GetCapAddress();
- ProgramUniformMatrix2x3dv := GetCapAddress();
- ProgramUniformMatrix3x2dv := GetCapAddress();
- ProgramUniformMatrix2x4dv := GetCapAddress();
- ProgramUniformMatrix4x2dv := GetCapAddress();
- ProgramUniformMatrix3x4dv := GetCapAddress();
- ProgramUniformMatrix4x3dv := GetCapAddress();
- ValidateProgramPipeline := GetCapAddress();
- GetProgramPipelineInfoLog := GetCapAddress();
- DrawBuffers := GetCapAddress();
- ActiveTexture := GetCapAddress();
- CompressedTexImage3D := GetCapAddress();
- CompressedTexImage2D := GetCapAddress();
- CompressedTexImage1D := GetCapAddress();
- CompressedTexSubImage3D := GetCapAddress();
- CompressedTexSubImage2D := GetCapAddress();
- CompressedTexSubImage1D := GetCapAddress();
- GetCompressedTexImage := GetCapAddress();
- ClientActiveTexture := GetCapAddress();
- MultiTexCoord1d := GetCapAddress();
- MultiTexCoord1dV := GetCapAddress();
- MultiTexCoord1f := GetCapAddress();
- MultiTexCoord1fv := GetCapAddress();
- MultiTexCoord1i := GetCapAddress();
- MultiTexCoord1iv := GetCapAddress();
- MultiTexCoord1s := GetCapAddress();
- MultiTexCoord1sv := GetCapAddress();
- MultiTexCoord2d := GetCapAddress();
- MultiTexCoord2dv := GetCapAddress();
- MultiTexCoord2f := GetCapAddress();
- MultiTexCoord2fv := GetCapAddress();
- MultiTexCoord2i := GetCapAddress();
- MultiTexCoord2iv := GetCapAddress();
- MultiTexCoord2s := GetCapAddress();
- MultiTexCoord2sv := GetCapAddress();
- MultiTexCoord3d := GetCapAddress();
- MultiTexCoord3dv := GetCapAddress();
- MultiTexCoord3f := GetCapAddress();
- MultiTexCoord3fv := GetCapAddress();
- MultiTexCoord3i := GetCapAddress();
- MultiTexCoord3iv := GetCapAddress();
- MultiTexCoord3s := GetCapAddress();
- MultiTexCoord3sv := GetCapAddress();
- MultiTexCoord4d := GetCapAddress();
- MultiTexCoord4dv := GetCapAddress();
- MultiTexCoord4f := GetCapAddress();
- MultiTexCoord4fv := GetCapAddress();
- MultiTexCoord4i := GetCapAddress();
- MultiTexCoord4iv := GetCapAddress();
- MultiTexCoord4s := GetCapAddress();
- MultiTexCoord4sv := GetCapAddress();
- GetInteger64i_v := GetCapAddress();
- GetBufferParameteri64v := GetCapAddress();
- ProgramParameteri := GetCapAddress();
- ProgramString := GetCapAddress();
- BindProgram := GetCapAddress();
- DeletePrograms := GetCapAddress();
- GenPrograms := GetCapAddress();
- ProgramEnvParameter4d := GetCapAddress();
- ProgramEnvParameter4dv := GetCapAddress();
- ProgramEnvParameter4f := GetCapAddress();
- ProgramEnvParameter4fv := GetCapAddress();
- ProgramLocalParameter4d := GetCapAddress();
- ProgramLocalParameter4dv := GetCapAddress();
- ProgramLocalParameter4f := GetCapAddress();
- ProgramLocalParameter4fv := GetCapAddress();
- GetProgramEnvParameterdv := GetCapAddress();
- GetProgramEnvParameterfv := GetCapAddress();
- GetProgramLocalParameterdv := GetCapAddress();
- GetProgramLocalParameterfv := GetCapAddress();
- ClearColorIi := GetCapAddress();
- ClearColorIui := GetCapAddress();
- TexParameterIiv := GetCapAddress();
- TexParameterIuiv := GetCapAddress();
- GetTexParameterIiv := GetCapAddress();
- GetTexParameterIuiv := GetCapAddress();
- PatchParameteri := GetCapAddress();
- PatchParameterfv := GetCapAddress();
- BufferAddressRangeNV := GetCapAddress();
- VertexFormatNV := GetCapAddress();
- NormalFormatNV := GetCapAddress();
- ColorFormatNV := GetCapAddress();
- IndexFormatNV := GetCapAddress();
- TexCoordFormatNV := GetCapAddress();
- EdgeFlagFormatNV := GetCapAddress();
- SecondaryColorFormatNV := GetCapAddress();
- FogCoordFormatNV := GetCapAddress();
- VertexAttribFormatNV := GetCapAddress();
- VertexAttribIFormatNV := GetCapAddress();
- GetIntegerui64i_vNV := GetCapAddress();
- GetBufferParameterui64vNV := GetCapAddress();
- MakeBufferResidentNV := GetCapAddress();
- MakeBufferNonResidentNV := GetCapAddress();
- IsBufferResidentNV := GetCapAddress();
- MakeNamedBufferResidentNV := GetCapAddress();
- MakeNamedBufferNonResidentNV := GetCapAddress();
- IsNamedBufferResidentNV := GetCapAddress();
- GetNamedBufferParameterui64vNV := GetCapAddress();
- GetIntegerui64vNV := GetCapAddress();
- Uniformui64NV := GetCapAddress();
- Uniformui64vNV := GetCapAddress();
- GetUniformui64vNV := GetCapAddress();
- ProgramUniformui64NV := GetCapAddress();
- ProgramUniformui64vNV := GetCapAddress();
- TexImage2DMultisample := GetCapAddress();
- TexImage3DMultisample := GetCapAddress();
- GetMultisamplefv := GetCapAddress();
- SampleMaski := GetCapAddress();
- ProvokingVertex := GetCapAddress();
- FenceSync := GetCapAddress();
- IsSync := GetCapAddress();
- DeleteSync := GetCapAddress();
- ClientWaitSync := GetCapAddress();
- WaitSync := GetCapAddress();
- GetInteger64v := GetCapAddress();
- GetSynciv := GetCapAddress();
- BlendEquationi := GetCapAddress();
- BlendEquationSeparatei := GetCapAddress();
- BlendFunci := GetCapAddress();
- BlendFuncSeparatei := GetCapAddress();
- MinSampleShading := GetCapAddress();
- GenSamplers := GetCapAddress();
- DeleteSamplers := GetCapAddress();
- IsSampler := GetCapAddress();
- BindSampler := GetCapAddress();
- SamplerParameteri := GetCapAddress();
- SamplerParameteriv := GetCapAddress();
- SamplerParameterf := GetCapAddress();
- SamplerParameterfv := GetCapAddress();
- SamplerParameterIiv := GetCapAddress();
- SamplerParameterIuiv := GetCapAddress();
- GetSamplerParameteriv := GetCapAddress();
- GetSamplerParameterIiv := GetCapAddress();
- GetSamplerParameterfv := GetCapAddress();
- GetSamplerParameterIfv := GetCapAddress();
- ClientAttribDefault := GetCapAddress();
- PushClientAttribDefault := GetCapAddress();
- MatrixLoadf := GetCapAddress();
- MatrixLoadd := GetCapAddress();
- MatrixMultf := GetCapAddress();
- MatrixMultd := GetCapAddress();
- MatrixLoadIdentity := GetCapAddress();
- MatrixRotatef := GetCapAddress();
- MatrixRotated := GetCapAddress();
- MatrixScalef := GetCapAddress();
- MatrixScaled := GetCapAddress();
- MatrixTranslatef := GetCapAddress();
- MatrixTranslated := GetCapAddress();
- MatrixFrustum := GetCapAddress();
- MatrixOrtho := GetCapAddress();
- MatrixPop := GetCapAddress();
- MatrixPush := GetCapAddress();
- MatrixLoadTransposef := GetCapAddress();
- MatrixLoadTransposed := GetCapAddress();
- MatrixMultTransposef := GetCapAddress();
- MatrixMultTransposed := GetCapAddress();
- TextureParameterfv := GetCapAddress();
- TextureParameteri := GetCapAddress();
- TextureParameteriv := GetCapAddress();
- TextureImage1D := GetCapAddress();
- TextureImage2D := GetCapAddress();
- TextureSubImage1D := GetCapAddress();
- TextureSubImage2D := GetCapAddress();
- CopyTextureImage1D := GetCapAddress();
- CopyTextureImage2D := GetCapAddress();
- CopyTextureSubImage1D := GetCapAddress();
- CopyTextureSubImage2D := GetCapAddress();
- GetTextureImage := GetCapAddress();
- GetTextureParameterfv := GetCapAddress();
- GetTextureParameteriv := GetCapAddress();
- GetTextureLevelParameterfv := GetCapAddress();
- GetTextureLevelParameteriv := GetCapAddress();
- TextureImage3D := GetCapAddress();
- TextureSubImage3D := GetCapAddress();
- CopyTextureSubImage3D := GetCapAddress();
- MultiTexParameterf := GetCapAddress();
- MultiTexParameterfv := GetCapAddress();
- MultiTexParameteri := GetCapAddress();
- MultiTexParameteriv := GetCapAddress();
- MultiTexImage1D := GetCapAddress();
- MultiTexImage2D := GetCapAddress();
- MultiTexSubImage1D := GetCapAddress();
- MultiTexSubImage2D := GetCapAddress();
- CopyMultiTexImage1D := GetCapAddress();
- CopyMultiTexImage2D := GetCapAddress();
- CopyMultiTexSubImage1D := GetCapAddress();
- CopyMultiTexSubImage2D := GetCapAddress();
- GetMultiTexImage := GetCapAddress();
- GetMultiTexParameterfv := GetCapAddress();
- GetMultiTexParameteriv := GetCapAddress();
- GetMultiTexLevelParameterfv := GetCapAddress();
- GetMultiTexLevelParameteriv := GetCapAddress();
- MultiTexImage3D := GetCapAddress();
- MultiTexSubImage3D := GetCapAddress();
- CopyMultiTexSubImage3D := GetCapAddress();
- BindMultiTexture := GetCapAddress();
- EnableClientStateIndexed := GetCapAddress();
- DisableClientStateIndexed := GetCapAddress();
- MultiTexCoordPointer := GetCapAddress();
- MultiTexEnvf := GetCapAddress();
- MultiTexEnvfv := GetCapAddress();
- MultiTexEnvi := GetCapAddress();
- MultiTexEnviv := GetCapAddress();
- MultiTexGend := GetCapAddress();
- MultiTexGendv := GetCapAddress();
- MultiTexGenf := GetCapAddress();
- MultiTexGenfv := GetCapAddress();
- MultiTexGeni := GetCapAddress();
- MultiTexGeniv := GetCapAddress();
- GetMultiTexEnvfv := GetCapAddress();
- GetMultiTexEnviv := GetCapAddress();
- GetMultiTexGendv := GetCapAddress();
- GetMultiTexGenfv := GetCapAddress();
- GetMultiTexGeniv := GetCapAddress();
- GetFloatIndexedv := GetCapAddress();
- GetDoubleIndexedv := GetCapAddress();
- GetPointerIndexedv := GetCapAddress();
- CompressedTextureImage3D := GetCapAddress();
- CompressedTextureImage2D := GetCapAddress();
- CompressedTextureImage1D := GetCapAddress();
- CompressedTextureSubImage3D := GetCapAddress();
- CompressedTextureSubImage2D := GetCapAddress();
- CompressedTextureSubImage1D := GetCapAddress();
- GetCompressedTextureImage := GetCapAddress();
- CompressedMultiTexImage3D := GetCapAddress();
- CompressedMultiTexImage2D := GetCapAddress();
- CompressedMultiTexImage1D := GetCapAddress();
- CompressedMultiTexSubImage3D := GetCapAddress();
- CompressedMultiTexSubImage2D := GetCapAddress();
- CompressedMultiTexSubImage1D := GetCapAddress();
- GetCompressedMultiTexImage := GetCapAddress();
- NamedProgramString := GetCapAddress();
- NamedProgramLocalParameter4d := GetCapAddress();
- NamedProgramLocalParameter4dv := GetCapAddress();
- NamedProgramLocalParameter4f := GetCapAddress();
- NamedProgramLocalParameter4fv := GetCapAddress();
- GetNamedProgramLocalParameterdv := GetCapAddress();
- GetNamedProgramLocalParameterfv := GetCapAddress();
- GetNamedProgramiv := GetCapAddress();
- GetNamedProgramString := GetCapAddress();
- NamedProgramLocalParameters4fv := GetCapAddress();
- NamedProgramLocalParameterI4i := GetCapAddress();
- NamedProgramLocalParameterI4iv := GetCapAddress();
- NamedProgramLocalParametersI4iv := GetCapAddress();
- NamedProgramLocalParameterI4ui := GetCapAddress();
- NamedProgramLocalParameterI4uiv := GetCapAddress();
- NamedProgramLocalParametersI4uiv := GetCapAddress();
- GetNamedProgramLocalParameterIiv := GetCapAddress();
- GetNamedProgramLocalParameterIuiv := GetCapAddress();
- TextureParameterIiv := GetCapAddress();
- TextureParameterIuiv := GetCapAddress();
- GetTextureParameterIiv := GetCapAddress();
- GetTextureParameterIuiv := GetCapAddress();
- MultiTexParameterIiv := GetCapAddress();
- MultiTexParameterIuiv := GetCapAddress();
- GetMultiTexParameterIiv := GetCapAddress();
- GetMultiTexParameterIuiv := GetCapAddress();
- NamedBufferData := GetCapAddress();
- NamedBufferSubData := GetCapAddress();
- MapNamedBuffer := GetCapAddress();
- UnmapNamedBuffer := GetCapAddress();
- MapNamedBufferRange := GetCapAddress();
- FlushMappedNamedBufferRange := GetCapAddress();
- NamedCopyBufferSubData := GetCapAddress();
- GetNamedBufferParameteriv := GetCapAddress();
- GetNamedBufferPointerv := GetCapAddress();
- GetNamedBufferSubData := GetCapAddress();
- TextureBuffer := GetCapAddress();
- MultiTexBuffer := GetCapAddress();
- NamedRenderbufferStorage := GetCapAddress();
- GetNamedRenderbufferParameteriv := GetCapAddress();
- CheckNamedFramebufferStatus := GetCapAddress();
- NamedFramebufferTexture1D := GetCapAddress();
- NamedFramebufferTexture2D := GetCapAddress();
- NamedFramebufferTexture3D := GetCapAddress();
- NamedFramebufferRenderbuffer := GetCapAddress();
- GetNamedFramebufferAttachmentParameteriv := GetCapAddress();
- GenerateTextureMipmap := GetCapAddress();
- GenerateMultiTexMipmap := GetCapAddress();
- FramebufferDrawBuffer := GetCapAddress();
- FramebufferDrawBuffers := GetCapAddress();
- FramebufferReadBuffer := GetCapAddress();
- GetFramebufferParameteriv := GetCapAddress();
- NamedRenderbufferStorageMultisample := GetCapAddress();
- NamedRenderbufferStorageMultisampleCoverage := GetCapAddress();
- NamedFramebufferTexture := GetCapAddress();
- NamedFramebufferTextureLayer := GetCapAddress();
- NamedFramebufferTextureFace := GetCapAddress();
- TextureRenderbuffer := GetCapAddress();
- MultiTexRenderbuffer := GetCapAddress();
- FrameTerminatorGREMEDY := GetCapAddress();
- StringMarkerGREMEDY := GetCapAddress();
- DebugMessageControl := GetCapAddress();
- DebugMessageInsert := GetCapAddress();
- DebugMessageCallback := GetCapAddress();
- GetDebugMessageLog := GetCapAddress();
- PushDebugGroup := GetCapAddress();
- PopDebugGroup := GetCapAddress();
- ObjectLabel := GetCapAddress();
- GetObjectLabel := GetCapAddress();
- ObjectPtrLabel := GetCapAddress();
- GetObjectPtrLabel := GetCapAddress();
- ClearBufferData := GetCapAddress();
- ClearBufferSubData := GetCapAddress();
- ClearNamedBufferData := GetCapAddress();
- ClearNamedBufferSubData := GetCapAddress();
- DispatchCompute := GetCapAddress();
- DispatchComputeIndirect := GetCapAddress();
- CopyImageSubData := GetCapAddress();
- FramebufferParameteri := GetCapAddress();
- NamedFramebufferParameteri := GetCapAddress();
- GetNamedFramebufferParameteriv := GetCapAddress();
- GetInternalformati64v := GetCapAddress();
- InvalidateTexSubImage := GetCapAddress();
- InvalidateTexImage := GetCapAddress();
- InvalidateBufferSubData := GetCapAddress();
- InvalidateBufferData := GetCapAddress();
- InvalidateFramebuffer := GetCapAddress();
- InvalidateSubFramebuffer := GetCapAddress();
- MultiDrawArraysIndirect := GetCapAddress();
- MultiDrawElementsIndirect := GetCapAddress();
- GetProgramInterfaceiv := GetCapAddress();
- GetProgramResourceIndex := GetCapAddress();
- GetProgramResourceName := GetCapAddress();
- GetProgramResourceiv := GetCapAddress();
- GetProgramResourceLocation := GetCapAddress();
- GetProgramResourceLocationIndex := GetCapAddress();
- ShaderStorageBlockBinding := GetCapAddress();
- TexBufferRange := GetCapAddress();
- TextureBufferRange := GetCapAddress();
- TexStorage2DMultisample := GetCapAddress();
- TexStorage3DMultisample := GetCapAddress();
- TextureStorage2DMultisample := GetCapAddress();
- TextureStorage3DMultisample := GetCapAddress();
- BufferStorage := GetCapAddress();
- ClearTexImage := GetCapAddress();
- ClearTexSubImage := GetCapAddress();
- BindBuffersBase := GetCapAddress();
- BindBuffersRange := GetCapAddress();
- BindTextures := GetCapAddress();
- BindSamplers := GetCapAddress();
- BindImageTextures := GetCapAddress();
- BindVertexBuffers := GetCapAddress();
- TextureView := GetCapAddress();
- BindVertexBuffer := GetCapAddress();
- VertexAttribFormat := GetCapAddress();
- VertexAttribIFormat := GetCapAddress();
- VertexAttribLFormat := GetCapAddress();
- VertexAttribBinding := GetCapAddress();
- VertexBindingDivisor := GetCapAddress();
- VertexArrayBindVertexBuffer := GetCapAddress();
- VertexArrayVertexAttribFormat := GetCapAddress();
- VertexArrayVertexAttribIFormat := GetCapAddress();
- VertexArrayVertexAttribLFormat := GetCapAddress();
- VertexArrayVertexAttribBinding := GetCapAddress();
- VertexArrayVertexBindingDivisor := GetCapAddress();
- CreateSyncFromCLevent := GetCapAddress();
- GenPathsNV := GetCapAddress();
- DeletePathsNV := GetCapAddress();
- IsPathNV := GetCapAddress();
- PathCommandsNV := GetCapAddress();
- PathCoordsNV := GetCapAddress();
- PathSubCommandsNV := GetCapAddress();
- PathSubCoordsNV := GetCapAddress();
- PathStringNV := GetCapAddress();
- PathGlyphsNV := GetCapAddress();
- PathGlyphRangeNV := GetCapAddress();
- WeightPathsNV := GetCapAddress();
- CopyPathNV := GetCapAddress();
- InterpolatePathsNV := GetCapAddress();
- PathParameterivNV := GetCapAddress();
- PathParameteriNV := GetCapAddress();
- PathParameterfvNV := GetCapAddress();
- PathParameterfNV := GetCapAddress();
- PathDashArrayNV := GetCapAddress();
- PathStencilFuncNV := GetCapAddress();
- StencilFillPathNV := GetCapAddress();
- StencilStrokePathNV := GetCapAddress();
- StencilFillPathInstancedNV := GetCapAddress();
- StencilStrokePathInstancedNV := GetCapAddress();
- PathColorGenNV := GetCapAddress();
- PathTexGenNV := GetCapAddress();
- PathFogGenNV := GetCapAddress();
- CoverFillPathNV := GetCapAddress();
- CoverStrokePathNV := GetCapAddress();
- CoverFillPathInstancedNV := GetCapAddress();
- CoverStrokePathInstancedNV := GetCapAddress();
- GetPathParameterivNV := GetCapAddress();
- GetPathParameterfvNV := GetCapAddress();
- GetPathCommandsNV := GetCapAddress();
- GetPathCoordsNV := GetCapAddress();
- GetPathDashArrayNV := GetCapAddress();
- GetPathMetricsNV := GetCapAddress();
- GetPathMetricRangeNV := GetCapAddress();
- GetPathSpacingNV := GetCapAddress();
- GetPathColorGenivNV := GetCapAddress();
- GetPathColorGenfvNV := GetCapAddress();
- GetPathTexGenivNV := GetCapAddress();
- GetPathTexGenfvNV := GetCapAddress();
- IsPointInFillPathNV := GetCapAddress();
- IsPointInStrokePathNV := GetCapAddress();
- GetPathLengthNV := GetCapAddress();
- PointAlongPathNV := GetCapAddress();
- PathStencilDepthOffsetNV := GetCapAddress();
- PathCoverDepthFuncNV := GetCapAddress();
- FInitialized := False;
- end;
- {$IFDEF SUPPORT_WGL}
- // ReadWGLImplementationProperties
- procedure TGLExtensionsAndEntryPoints.ReadWGLImplementationProperties;
- begin
- // ARB wgl extensions
- if Assigned(WGetExtensionsStringARB) then
- FBuffer := string(WGetExtensionsStringARB(wglGetCurrentDC))
- else
- FBuffer := '';
- W_ARB_buffer_region := CheckExtension('WGL_ARB_buffer_region');
- W_ARB_create_context := CheckExtension('WGL_ARB_create_context');
- W_ARB_create_context_profile :=
- CheckExtension('WGL_ARB_create_context_profile');
- W_ARB_extensions_string := CheckExtension('WGL_ARB_extensions_string');
- W_ARB_framebuffer_sRGB := CheckExtension('WGL_ARB_framebuffer_sRGB');
- W_ARB_make_current_read := CheckExtension('WGL_ARB_make_current_read');
- W_ARB_multisample := CheckExtension('WGL_ARB_multisample');
- W_ARB_pbuffer := CheckExtension('WGL_ARB_pbuffer');
- W_ARB_pixel_format := CheckExtension('WGL_ARB_pixel_format');
- W_ARB_pixel_format_float := CheckExtension('WGL_ARB_pixel_format_float');
- W_ARB_render_texture := CheckExtension('WGL_ARB_render_texture');
- // Vendor/EXT wgl extensions
- W_ATI_pixel_format_float := CheckExtension('WGL_ATI_pixel_format_float');
- W_EXT_framebuffer_sRGB := CheckExtension('WGL_EXT_framebuffer_sRGB');
- W_EXT_pixel_format_packed_float :=
- CheckExtension('WGL_EXT_pixel_format_packed_float');
- W_EXT_swap_control := CheckExtension('WGL_EXT_swap_control');
- W_NV_gpu_affinity := CheckExtension('WGL_NV_gpu_affinity');
- W_NV_DX_interop := CheckExtension('WGL_NV_DX_interop');
- W_NV_DX_interop2 := CheckExtension('WGL_NV_DX_interop2');
- W_EXT_create_context_es2_profile :=
- CheckExtension('WGL_EXT_create_context_es2_profile');
- end;
- procedure TGLExtensionsAndEntryPoints.ReadWGLExtensions;
- begin
- // ARB wgl extensions
- // ###########################################################
- // locating functions and procedures for
- // ARB approved WGL extensions
- // ###########################################################
- // WGL_buffer_region (ARB #4)
- WCreateBufferRegionARB := GetProcAddressGLS('wglCreateBufferRegionARB');
- WDeleteBufferRegionARB := GetProcAddressGLS('wglDeleteBufferRegionARB');
- WSaveBufferRegionARB := GetProcAddressGLS('wglSaveBufferRegionARB');
- WRestoreBufferRegionARB := GetProcAddressGLS('wglRestoreBufferRegionARB');
- // WGL_ARB_extensions_string (ARB #8)
- WGetExtensionsStringARB := GetProcAddressGLS('wglGetExtensionsStringARB');
- // WGL_ARB_pixel_format (ARB #9)
- WGetPixelFormatAttribivARB :=
- GetProcAddressGLS('wglGetPixelFormatAttribivARB');
- WGetPixelFormatAttribfvARB :=
- GetProcAddressGLS('wglGetPixelFormatAttribfvARB');
- WChoosePixelFormatARB := GetProcAddressGLS('wglChoosePixelFormatARB');
- // WGL_make_current_read (ARB #10)
- WMakeContextCurrentARB := GetProcAddressGLS('wglMakeContextCurrentARB');
- WGetCurrentReadDCARB := GetProcAddressGLS('wglGetCurrentReadDCARB');
- // WGL_ARB_pbuffer (ARB #11)
- WCreatePbufferARB := GetProcAddressGLS('wglCreatePbufferARB');
- WGetPbufferDCARB := GetProcAddressGLS('wglGetPbufferDCARB');
- WReleasePbufferDCARB := GetProcAddressGLS('wglReleasePbufferDCARB');
- WDestroyPbufferARB := GetProcAddressGLS('wglDestroyPbufferARB');
- WQueryPbufferARB := GetProcAddressGLS('wglQueryPbufferARB');
- // WGL_ARB_render_texture (ARB #20)
- WBindTexImageARB := GetProcAddressGLS('wglBindTexImageARB');
- WReleaseTexImageARB := GetProcAddressGLS('wglReleaseTexImageARB');
- WSetPbufferAttribARB := GetProcAddressGLS('wglSetPbufferAttribARB');
- // WGL_ARB_create_context (ARB #55)
- WCreateContextAttribsARB := GetProcAddressGLS('wglCreateContextAttribsARB');
- // ###########################################################
- // locating functions and procedures for
- // Vendor/EXT WGL extensions
- // ###########################################################
- // WGL_EXT_swap_control (EXT #172)
- WSwapIntervalEXT := GetProcAddressGLS('wglSwapIntervalEXT');
- WGetSwapIntervalEXT := GetProcAddressGLS('wglGetSwapIntervalEXT');
- // GL_NV_vertex_array_range (EXT #190)
- WAllocateMemoryNV := GetProcAddressGLS('wglAllocateMemoryNV');
- WFreeMemoryNV := GetProcAddressGLS('wglFreeMemoryNV');
- // WGL_NV_gpu_affinity
- WEnumGpusNV := GetProcAddressGLS('wglEnumGpusNV');
- WEnumGpuDevicesNV := GetProcAddressGLS('wglEnumGpuDevicesNV');
- WCreateAffinityDCNV := GetProcAddressGLS('wglCreateAffinityDCNV');
- WEnumGpusFromAffinityDCNV := GetProcAddressGLS('wglEnumGpusFromAffinityDCNV');
- WDeleteDCNV := GetProcAddressGLS('wglDeleteDCNV');
- // WGL_NV_DX_interop
- WDXSetResourceShareHandleNV :=
- GetProcAddressGLS('wglDXSetResourceShareHandleNV');
- WDXOpenDeviceNV := GetProcAddressGLS('wglDXOpenDeviceNV');
- WDXCloseDeviceNV := GetProcAddressGLS('wglDXCloseDeviceNV');
- WDXRegisterObjectNV := GetProcAddressGLS('wglDXRegisterObjectNV');
- WDXUnregisterObjectNV := GetProcAddressGLS('wglDXUnregisterObjectNV');
- WDXObjectAccessNV := GetProcAddressGLS('wglDXObjectAccessNV');
- WDXLockObjectsNV := GetProcAddressGLS('wglDXLockObjectsNV');
- WDXUnlockObjectsNV := GetProcAddressGLS('wglDXUnlockObjectsNV');
- end;
- {$ENDIF}
- procedure TrimAndSplitVersionString(buffer: string; var max, min: integer);
- // Peels out the X.Y form from the given Buffer which must contain a version string like "text Minor.Major.Build text"
- // at least however "Major.Minor".
- var
- Separator: integer;
- begin
- try
- // There must be at least one dot to separate major and minor version number.
- Separator := Pos('.', buffer);
- // At least one number must be before and one after the dot.
- if (Separator > 1) and (Separator < length(buffer)) and
- (AnsiChar(buffer[Separator - 1]) in ['0' .. '9']) and
- (AnsiChar(buffer[Separator + 1]) in ['0' .. '9']) then
- begin
- // OK, it's a valid version string. Now remove unnecessary parts.
- Dec(Separator);
- // Find last non-numeric character before version number.
- while (Separator > 0) and (AnsiChar(buffer[Separator]) in ['0' .. '9']) do
- Dec(Separator);
- // Delete leading characters which do not belong to the version string.
- Delete(buffer, 1, Separator);
- Separator := Pos('.', buffer) + 1;
- // Find first non-numeric character after version number
- while (Separator <= length(buffer)) and
- (AnsiChar(buffer[Separator]) in ['0' .. '9']) do
- Inc(Separator);
- // delete trailing characters not belonging to the version string
- Delete(buffer, Separator, 255);
- // Now translate the numbers.
- Separator := Pos('.', buffer);
- // This is necessary because the buffer length might have changed.
- max := StrToInt(Copy(buffer, 1, Separator - 1));
- min := StrToInt(Copy(buffer, Separator + 1, 255));
- end
- else
- Abort;
- except
- min := 0;
- max := 0;
- end;
- end;
- function IsVersionMet(MajorVersion, MinorVersion, actualMajorVersion,
- actualMinorVersion: integer): boolean;
- begin
- Result := (actualMajorVersion > MajorVersion) or
- ((actualMajorVersion = MajorVersion) and
- (actualMinorVersion >= MinorVersion));
- end;
- function InitOpenGL: boolean;
- begin
- if (GLHandle = INVALID_MODULEHANDLE) or (GLUHandle = INVALID_MODULEHANDLE)
- then
- Result := InitOpenGLFromLibrary(opengl32, glu32)
- else
- Result := True;
- end;
- function InitOpenGLFromLibrary(const GLName, GLUName: string): boolean;
- begin
- Result := False;
- CloseOpenGL;
- GLHandle := LoadLibrary(pchar(GLName));
- GLUHandle := LoadLibrary(pchar(GLUName));
- if (GLHandle <> INVALID_MODULEHANDLE) and (GLUHandle <> INVALID_MODULEHANDLE)
- then
- begin
- Result := True;
- end
- else
- CloseOpenGL;
- end;
- function IsOpenGLInitialized: boolean;
- begin
- Result := (GLHandle <> INVALID_MODULEHANDLE);
- end;
- procedure CloseOpenGL;
- begin
- if GLHandle <> INVALID_MODULEHANDLE then
- begin
- FreeLibrary(GLHandle);
- GLHandle := INVALID_MODULEHANDLE;
- end;
- if GLUHandle <> INVALID_MODULEHANDLE then
- begin
- FreeLibrary(GLUHandle);
- GLUHandle := INVALID_MODULEHANDLE;
- end;
- end;
- procedure UnloadOpenGL;
- begin
- CloseOpenGL;
- end;
- function LoadOpenGL: boolean;
- begin
- Result := InitOpenGL;
- end;
- function LoadOpenGLFromLibrary(GLName, GLUName: string): boolean;
- begin
- Result := InitOpenGLFromLibrary(GLName, GLUName);
- end;
- function IsOpenGLLoaded: boolean;
- begin
- Result := IsOpenGLInitialized();
- end;
- function IsMesaGL: boolean;
- begin
- Result := GetProcAddressGLS('glResizeBuffersMESA') <> nil;
- end;
- //--------------------------------------
- initialization
- //--------------------------------------
- {$IFNDEF CROSSVCL}
- Set8087CW($133F);
- {$ENDIF}
- finalization
- CloseOpenGL;
- end.
|