8ec576ddab tray, windows: fix logic error from commit 1167cf54e1572 748f0b3201 Improved Steam Controller detection on iOS ba1a980535 wayland: Only apply the toplevel bounds when initially mapping the window 28389f1c38 wayland: Apply toplevel bounds to windows ef52a4d4df Fixed warning C4389: '==': signed/unsigned mismatch 8d8649b33f Fixed error: returning 'SDL_TrayEntry **' from a function with incompatible return type 'const SDL_TrayEntry **' f8b13dadd7 Enabled warning level 4 on Visual Studio 1167cf54e1 Fixed warning C4706: assignment within conditional expression 8a9b7ae8d1 Switched nEntries to int, to avoid signed/unsigned comparison warnings fb4ec07119 Fixed warning C4701: potentially uninitialized local variable 'previous_context' used b674b715f5 fix integer overflow ub in testautomation_sdltest 1e1442ed4a README-migration.md: Note the GL/EGL library environment variable removals. d8c7006a42 README-migration.md: Removed obsolete documentation. 6473de59b7 SDL_keyboard.h: Note that SDL_GetKeyName() returns uppercase letters. c7584df999 Sync SDL3 wiki -> header 1f54b228ff video: Convert some EGL environment variables to SDL hints. 7c9f6c6313 Remove debug logging 19ddb29d2d Sync SDL3 wiki -> header d16f76e3d4 wasapi: Don't crash/hang if transitioning to/from a Remote Desktop Connection. 742f2a2fad SDL_render.h: Improve SDL_ConvertEventToRenderCoordinates documentation. 2b375d9704 wayland: Don't enable the text-input protocol when using Fcitx dcc645e413 Fix HTML examples template tabs ece6a6ed8f Sync SDL3 wiki -> header 7f9ee31024 include: Fill in more category documentation. 16ad3e5af6 cmake: consider X11 as not available when xext.h is not found 0ae57f1d90 tray: unix: Shutdown the GTK thread when not in use 6a0405b933 testautomation: Added a test to stdlib_swprintf that previously would fail. 9f2186ad52 Removed outdated comment in AndroidManifest.xml 181995b44f stdlib: Reworked SDL_vswprintf to be more efficient and return correct values. 8509041a09 video: Fix SDL_GL_GetAttribute depth/stencil size when 0 344e394bf4 camera: Favor v4l2 over pipewire, for now. d8c679416b Sync SDL3 wiki -> header b6dc44b133 Support dark theme for tray menus on Windows 7673b84f52 Make SDL_GetTrayEntires() NULL-terminated a58bc3eaf4 [GPU] Fix crash in nvidia user-mode win32 driver when game window is minimized during swapchain resize (#11848) 0a5d2f3da2 Handle pen eraser button as a second button 3519ef3b3b SDL_asyncio.h: Fixed various datatype's `\since` documentation. 56d7cc7a02 SDL_video.h: Added a note about platform quirks to SDL_DestroyWindow docs. 04f3bdb118 Sync SDL3 wiki -> header 18c6958cae SDL_vulkan.h: Improve SDL_Vulkan_LoadLibrary/SDL_Vulkan_UnloadLibrary docs. 522682cd6e Add detailed documentation on building with MinGW64 (#11780) a4cd17cce5 Fixed building on macOS with the dialog subsystem disabled efba42a67b tests: avoid undefined signed overflow 156b3b4a8c Fixed language detection on iOS 53aaf8c26b cmake: custom generate-XXX targets must depend on outputs 9b40d43b1f Sync SDL3 wiki -> header 85851459d6 docs: Note that using the Wayland display scaling mode can have imprecision when positioning due to unit conversion and rounding db97da4ccb ci: bump FreeBSD to 14.2 5579010b6a wayland: Adjust the scaled popup position even if the dimensions didn't change 2d37903323 pen: implement pen support for Windows. ef21ccf080 Create a separate metal shader for NV12 textures 49663bfb58 Make Windows dialogs DPI aware a8c41135aa Enable themed Windows dialogs when building with Visual Studio 8b83a57847 Check that dll's built by MinGW do not link to unwanted runtime libraries e484182765 testcamera: Log the camera backend in use. 011454b237 Sync SDL3 wiki -> header efc390d7e2 Don't log SDL errors by default c077b7a918 Fixed the version availability of SDL_HINT_JOYSTICK_ENHANCED_REPORTS 0b520cd4b4 Sync SDL3 wiki -> header 9f7b2c3595 Fixed incorrect error message when a joystick can't be opened 2c0a8363a5 Added SDL_HINT_JOYSTICK_ENHANCED_REPORTS 95d44f11c7 Sync SDL3 wiki -> header 16dfaca728 Sync SDL3 wiki -> header 32ab09ba21 Sync SDL3 wiki -> header 1461f893c3 video: Correct the window position property documentation a63052db96 Sync SDL3 wiki -> header dd6b484359 Document platform gamepad hotplug requirements ecf8dd054d Show the display content scale in SDLTest_CommonDrawWindowInfo() 4797970bfa Enable SDL_HINT_JOYSTICK_THREAD by default 6b4b9b5f2b Improved XInput controller detection 8ea4b326b3 video: Fix focus when non-focused popup windows are hidden 67ea67f191 Fix mip generation for 2x1 textures on D3D12 c6b5c21aaf clipboard: Ensure SDL_ClearClipboardData clears data even when no data has been set f8f8d87bfa ci: always create binary packages if build succeeded b713e7581b stdlib: fix SDL_strtol of "0" with base 0 54752f8d1c SDL_malloc.c: replace FORCEINLINE usage with SDL_FORCE_INLINE 3842384a38 dynapi: trigger a breakpoint on a fatal error when SDL is built in debug mode 6cf6b160cd SDL_hashtable: don't use assert from libc 62bc2c4c92 SDL_malloc: don't define FORCEINLINE 4fccfb142e cmake: avoid security cookies in SDL_uclibc when building with -DSDL_LIBC=ON 4fbf59ac3a Implement __chkstk for arm64 578ac0ef52 SDL_malloc: disable malloc stats 31a4c92ee5 When building with libc enabled, we don't need to provide __chkstk ourselves 02e85a153f Use the expected plane size when capturing Android camera frames 9955e1dc0d Updated the Android gradle plugin to version 8.7.3 0281071243 Lock joysticks when they are connected/disconnected on emscripten c68ed04a06 Sync SDL3 wiki -> header 2b1d809b21 video: Fix positioning and focusing popups parented to child toplevel windows 6d554a9ea3 Sync SDL3 wiki -> header 9fbc767d4f Fixed formatting of SDL_storage documentation e43aa12b49 Updated copyright for 2025 c0e5901c42 Reverted accidentally committed work in progress f2074d7af3 Updated copyright for 2025 3197e27b59 testcamera: fixed return codes f18e023317 Added testclipboard 54d4e48539 Get the initial clipboard state at startup 6575b8157b Synchronize clipboard mime types with external clipboard updates 30a22d3fed Allow a NULL size parameter to retrieve null terminated text d666c2d189 Use a consistent error message when video isn't initialized 196e2c6662 Fixed crash if num_mime_types is NULL b902b0527b Renamed n_mime_types to num_mime_types a767952617 Fixed spacing 54c555e394 Send supported mime types for external clipboard contents on Windows 8b155708ff Fixed clipboard memory leak on shutdown 1d417ab27f win32: Set the WS_THICKFRAME style on popup windows 643281d022 Revert "win32: Use the size in the WINDOWPOS data while handling popup windows in the WM_WINDOWPOSCHANGED message" 2be89f0dd1 Clarify migration for GetWindowData and SetWindowData a37f993a07 Sync SDL3 wiki -> header 65e0fed5b3 gpu: Document why VertexID/InstanceID builtins are unreliable dd83908109 keyboard: Check for both caps lock and shift when looking up a keycode by name 99ad53ec3f Sync SDL3 wiki -> header df97ccf283 win32: Return 0 from WM_WINDOWPOSCHANGING if a resize is expected 4f0a056b95 win32: Use the size in the WINDOWPOS data while handling popup windows in the WM_WINDOWPOSCHANGED message 18fc13c20d Sync SDL3 wiki -> header 6d20b65a9e Sync SDL3 wiki -> header 3cd3c9317e storage: Add error messages when ReadIO/WriteIO lengths mismatch 6ca2a48595 Sync SDL3 wiki -> header fa9c3331d5 main: Adjust how SDL_HINT_MAIN_CALLBACK_RATE works. cd1bd0ac2e storage: Remove an outdated FIXME. 0be5b8070d Update SDL_asyncio.c 1c04ebe423 Renamed SDL_ASYNCIO_CANCELLED to SDL_ASYNCIO_CANCELED d4d5faedab Added SDL_EVENT_FINGER_CANCELED 8704ab8422 Wait for a display resize event before sending orientation changes 60deaf5f0f Send display mode change events when the orientation changes 5340f2e3fe Updated to the latest version of gradle, with support for Android SDK 35 e91c37f4dd Added support for inset handling on Android 15 f3cbd04a81 Fix C99 trailing enum comma warning. 5f25691c85 Fix C23 empty initializer warning. 8cc4735d74 wayland: Don't override the min/max values when scaling to the screen 2d91f096ca Remove libc function from Windows tray 78c1dc3e2c Sync SDL3 wiki -> header 0410328b15 Fixed warning: ordered comparison of pointer with integer zero d5f08b8f4b stdinc: use __has_include to detect <stdbool.h> 543f244965 tests: include SDL_build_config.h when HAVE_BUILD_CONFIG is defined c2121dd9a2 testcamera: fix MSVC build failure due to C4244 warning. 5c84d38822 testcamera: don't pick a frame size larger than the maximum texture size 6e1177ac03 Include tray function prototypes c030e6f782 examples/pen/01-drawing-lines: Match render target size to renderer output. 0ad3a18937 uikit: reworked Apple Pencil code. f6143da617 uikit: Patched to compile, added to Xcode project. 774e38d073 uikit: Initial Apple Pencil support. 5acd7fe208 wayland: Prevent popup configure events from overwriting the current size with old data c714b1a38b Fixed public header inclusion in the Xcode project cf439d5c63 Fix dib-to-bmp logic in SDL_windowsclipboard.c ec29d3fd66 Define NDEBUG in release Xcode builds 92b7054870 Add SDL_tray.h to the public framework headers 1a466b5548 Sync SDL3 wiki -> header ec8a780ad4 tray, unix: fix -Wformat warnings cc723c9e4b ci: run emscripten on Ubuntu 22.04 0cb4a94c88 cmake: really disable xrandr by default on Solaris 4ffcb8ebab Sync SDL3 wiki -> header 49153ebfc4 audio: Add NULL check to SDL_UnbindAudioStreams 1b99467c71 audio: Make SDL_Bind/UnbindAudioStreams take const arrays 0be6dc5734 cmake: disable xrandr by default on Solaris 4fbd6cba60 cmake: Solaris' SunPro has alternative way to link to pthread libraries e25cc7a88f cmake: cocoa video backend needs IOKit framework 38dd6bcd32 docs: gradle needs package identifier + change example Activity class path f1232de3d2 cmake: add_dependencies must have at least 2 arguments 2664d36faf cmake: avoid parallel generation of headers through intermediate target 609b147432 Sync SDL3 wiki -> header cc24518c41 render: Update GPU backend to use the new present workflow a0e537b9c0 examples: Fix dead links in app metadata df1f1c2e12 cmake: don't create relocatable packages by default with non-MSVC toolchains af3d97dcac Update build-scripts/build-release.py bc448fa445 win32: Use the nearest monitor size for calculating maximized window dimensions 599b4ef254 win32: Fix maximizing borderless windows 1c52e290a3 video: Don't overwrite pending size values when setting the window min/max 9a4d29699d Don't use connection state from the Nintendo Switch Pro report 75a24116b5 testcontroller: show gamepad connection state 22f6eed1d9 Use the NVIDIA Shield home button as the guide button c148837546 Added a Bluetooth mapping for the NVIDIA Shield Controller on Linux 82a1e9f6df Fixed the guide button for the NVIDIA Shield Controller on Linux ba5cf2b152 x11: Don't overwrite popup window coordinates when changing the size 567b828e18 wayland: Use the proper popup coordinates if the position is set while the window is hidden 1701208f32 Sync SDL3 wiki -> header 622c3ebb94 Updated Xcode project with new tray files 0461180e25 SDL_EVENT_QUIT when no window nor tray ff139fe71b Sync SDL3 wiki -> header e9290eeedf Use `pthread_setname_np` also on Android 578509c326 windows/SDL_tray.c, video/windows/SDL_surface_utils.h: use SDL_windows.h 05932e05da tray, windows: replace ZeroMemory() with SDL_zero() e2323c1367 Refactor Android input handling and add pen support f5fbdf7ed5 Make onNativePen available for Android a5e8fc21b2 Add SDL_androidpen 80c39f2ff4 Expose SDL_GetPenStatus for Android pen buttons e3c99e3bd3 misc: Fixed typo in iOS error message. 1413bfb185 Don't overwrite non-CRC gamepad mapping with a new mapping that specifies a CRC 948b16533c testcamera: use the first available cameras cd1bb6247b video/windows/SDL_surface_utils.c: replace ZeroMemory() with SDL_zero() a773558517 Sync SDL3 wiki -> header 50fbae9302 tray, windows: define NOTIFYICON_VERSION_4 and NIF_SHOWTIP, if missing. c744c8fc0b Document how to check for gamepad capabilities a8d585aac3 Don't try to enumerate possible texture failure reasons. ca17d19f90 Updated iOS file path documentation 7bbe6025be misc: Make SDL_OpenURL work with VisionOS, tvOS, etc. ffed1c50c0 misc: Fix SDL_OpenURL on newer iOS releases. 1a6e139dde win32: Only recalculate the position on show for popup windows cf220ea4f1 win32: Fix popup positioning 17ef0c1237 SDL_video.c: replace strlcpy with memcpy in SDL_ShowMessageBox() 8fde28813e SDL_tray.h: Filled in doxygen for a few minor missing things. 17df3fe836 Sync SDL3 wiki -> header eb1be89e70 Cleaned up thread state handling and added thread object validation 7647f16ae1 Sync SDL3 wiki -> header eadc64973a Reset text field content on text input stop b2c2a483e8 GPU: Rename HDR10_ST2048 to HDR10_ST2084 fe39509b85 GPU: Doc touch ups b8036bdd41 Sync SDL3 wiki -> header ca4f5dd40d Added SDL_GetThreadState b7dac5072b correct termination of windows openfiledialog filters 0becdad392 Add missing includes to SDL_tray.h 5bf742daa6 Fix documentation for SDL_sinf bed16f77d1 cmake: define HAVE_MALLOC_H when malloc.h is found b2178857dc Corrected CoreAudio surround sound channel layouts f40a530fd9 subclass the builtin system message class instead cf946e32ba Fix memory management for Windows dialog title 4c70aa33ae Sync SDL3 wiki -> header 76920a230f Fixed Xcode build 01b9b0edb7 Add system tray support (#10873) 17a029502a Sync SDL3 wiki -> header a27c139b12 GPU: Explicitly check Metal hardware support on device creation aa817a67d1 GPU: Document system requirements for each driver 8653a5821b Fixed mingw64 Windows build 60dce94583 Fixed building with older Windows SDKs 440d5754f8 build_configs: remove unused symbols_to_check, added Windows ones 052cb5773e build_configs: remove `HAVE_LIBUNWIND_H` 42c67756cc build_configs: fix spacing 286cc2ebd0 build_config: change unnecessary replacement variables to 1 c2508d5d99 Fix various `#if defined`s f2b7495adc SDL_camera_pipewire: use `SDL_CAMERA_DRIVER_PIPEWIRE_DYNAMIC` ade829d7ca build_config: fix `SDL_DEFAULT_ASSERT_LEVEL` e73d98ad72 build_config: add missing macros 7f1c9c9053 build_config: move unconditionally defined macros 6f462e244f build_config: remove unused `SIZEOF_VOIDP` ddd7d0f927 build_configs: remove unused macros 483e79bf82 Fixed mouse click count for relative mode and multiple mice ed75d9d22a Document that the mouse ID is only valid in mouse relative mode 024e5da6fb Mouse events only get a mouse ID in relative mode 8a0f649363 windows: fix BITMAPINFOHEADER values when getting bitmap from Clipboard af2dbbcb53 Merge SDL_wasapi_win32 into SDL_wasapi 4d301b88d6 Sync SDL3 wiki -> header 5a2eb60389 Only save the pending flags we will restore when hiding a window 969f03d9f0 Added SDL_PROP_RENDERER_GPU_DEVICE_POINTER 7a22076a7c Sync SDL3 wiki -> header 3a1810f9a9 Fixed the Linux mapping for the NVIDIA Controller v1.03 49610fd1e8 Leave mouse relative mode when losing focus 62124e2c28 GPU: Enable Metal validation in debug mode (#11691) 18115ef6bd Sync SDL3 wiki -> header 8691408baf Clarify that you shouldn't make any assumptions about the an SDL_FingerID value. 37b87f79fb Fixed Bluetooth Steam Controller detection on iOS and Android 9a43c08146 Allow rendering during the modal resize loop on macOS 225c0e2ad9 Removed unused function declaration 4add7e2005 Round the window size values when using fixed aspect ratio 3ac28bae6a Removed references to non-existent method SDL_GetAsyncIOTaskResult da37e1541b Sync SDL3 wiki -> header ecea3471f6 Sync SDL3 wiki -> header f8d8bf8066 SDL_GetNumAllocations returns -1 when allocation counting is disabled a33144fbc9 SDL_test: disable memory tracking if SDL does not count allocations 2e4dc9c109 Disable tracking memory allocation counts by default 80c1b1e1a0 Fix testautomation pixels_saveLoadBMP big endian issue 478ac0b9bf Sync SDL3 wiki -> header 03d6e4b69e Sync SDL3 wiki -> header ca4ffc8a00 Fix missing parens in preprocessor defined op 8475c496b4 Fix typo 56cf8d8dc9 Sync SDL3 wiki -> header f0fad41f2c include: Filled in all remaining missing documentation! 4d8f5758cf Sync SDL3 wiki -> header c080bb8417 GPU: Fix non-triangle D3D12 primitive topology types 33442701ca Use the monitor as the client rect for maximized borderless windows 7e298f50fe Make windows resizable if we're about to maximize them programmatically 34974d4d2b Don't remove the resizable style for borderless windows cadeec9cc9 SDL_SoftStretch() doesn't handle large pixel formats f37eef948c Removed raw mouse events d07bb0e679 Removed raw key events c44fa5bb07 Updated raw input events to match SDL style 1025087c2e Sync SDL3 wiki -> header a47b62d1fe Removed PS2 compiler definition f3c194f39a Remove EXTRA_CFLAGS. 7e8576fd19 gpu: Xbox fixes for swapchain presentation f7580374a1 include: Always declare SDL_GDKSuspendComplete. 232c2970d3 Sync SDL3 wiki -> header 5ec5f23fff tests: Print accurate enabled/disabled relative mode status in testrelative b815123cf2 Sync SDL3 wiki -> header 819e1cc95b SDL_stdinc.h: A couple wikiheaders fixes. b2eb23a617 SDL_filesystem.h: Fill in missing documentation. 0b401137d2 SDL_stdinc.h: Document more stuff. b83dd793fd SDL_stdinc.h: Tons of documentation updates. a0864799f2 GDK: Fix compile_shaders_xbox.bat build events 5d9ccb6296 gpu: Add explicit casts to D3D12 staging descriptor changes e992522cb2 Xbox buildfixes for WarpCursor jitter fix, dark mode b2c15a8c2a Sync SDL3 wiki -> header 0f9e86fe1c tests: Fix GPU tests crashing when window is minimized c9e22d4672 Sync SDL3 wiki -> header ff366fba87 include: Move SDL_HAS_BUILTIN to SDL_begin_code.h, document it. e46d8756e5 tests: Update GPU tests to use new swapchain best practice 401c8f8e4e SDL_timer.h: Fixed doxygen typo. 2f9a45af60 Sync SDL3 wiki -> header 0c42891826 include: Filled in more documentation gaps. 3ce68f80bc wayland: Clean up the relative pointer if the seat capability is removed 7c8171da92 wayland: Handle the relative pointer manager appearing after the seat has been initialized 4bfc8f84f7 tests: Add a raw event mode to testrelative 8c849ecc6c wayland: Add support for the MOUSE_RAW_* events fce922b66c wayland: Add support for the SDL_MOUSE_RELATIVE_SYSTEM_SCALE hint d6a95ae198 Sync SDL3 wiki -> header 42de2ac6a9 Fixed typo e08f34c3be Removed SDL_HINT_MOUSE_RELATIVE_MODE_WARP 6e0df0af24 Reduce the possibility of SDL_LockMutex getting called on a destroyed mutex after SDL_StopEventLoop 519923ea80 Sync SDL3 wiki -> header 624a4d5f26 include: Documented important SDL_begin_code symbols. 5c0f8dc179 add alternate raw mouse motion events with windows implementation (#10042) 345cab1e36 streamline cursor clipping logic on windows (#11237) 35a9d156a6 render: convert tmotion vectors to render basis 3739749404 Improve Win32 darkmode and fix title bar's context menu (#11543) 10f868abf4 Sync SDL3 wiki -> header f81472d767 Document that you should read from processes before waiting for them to exit. 3001c61de0 x11: Use the master pointer device for absolute motion 835b6e0c1a Enable high refresh rates on iOS da80b9bce5 Fixed an inaccuracy in the documentation for SDL_ConvertPixelsAndColorspace 2ce21d1fed Fixed an inaccuracy in the documentation for SDL_CancelGPUCommandBuffer 0ca8027205 Fixed an inaccuracy in the documentation for SDL_PenProximityEvent and SDL_PenMotionEvent 4d9e7a2a68 Sync SDL3 wiki -> header b5eea03d1e GPU: Clarify presentation concerns in SDL_gpu.h 7dd523fbb1 Sync SDL3 wiki -> header 48a0adb2ac Sync SDL3 wiki -> header 4d4a2786bb render: Updates to format-string versions of SDL_RenderDebugText. 6abebca943 Fix format string in debug-text example 1d0e28a5b3 Add SDL_RenderDebugTextF & SDL_RenderDebugTextV 5608bf5866 Sync SDL3 wiki -> header 0fbcd0d586 GPU: Optimize usage of D3D12 staging descriptors (#11657) e957840d34 include: Filling in some more documentation gaps. 684098fac3 Fix possible bug with Windows dialogs bc9c86bcc2 Dialog: Add suffix to filters all the time b58e6d7274 .wikiheaders-options: Include CPU intrinsics macros in quick reference. c9ab8ad8d9 SDL_intrin.h: Added missing NEON and Altivec documentation. d38c09e5c4 Sync SDL3 wiki -> header 6730cf7bed SDL_intrin.h: Add documentation. 2f68efda83 wikiheaders: Add underscore to the "big ascii" character table. 19bdc01b8c Sync SDL3 wiki -> header eda0261c4e video: Drop size and position requests for windows in a fixed size/position state 6fa6297441 fix typo from commit b84f150d0669592f b84f150d06 fix macOS builds with hidapi disabled c52a96ca8e Sync SDL3 wiki -> header 080b3002c6 Fixed building with an older Windows SDK d0d1414836 messagebox: Copy title and message up front, to protect SDL_GetError() strings. a92eade183 Sync SDL3 wiki -> header 0bb42cb023 alsa: a few more minor formatting tweaks. 483ceb5355 alsa: Reenable SDL's internal channel map support when ALSA can't swizzle. 35360ec4d7 alsa: Use more hints for opening default devices. 576f13ac7c alsa: Put debug logging back into correct category and logging level. ff96c59df4 alsa: Add back in code to guess the correct ALSA device prefix. b108b54c6a alsa: Bring up to current SDL coding conventions and standards, other tweaks. 639855b7e5 alsa: Remove direct calls to memset a4a1dff219 alsa: remove `loop` macro b9c062c858 alsa: Pulled in latest changes from @sylware 76e7bc4c04 Added support for ALSA dmix audio output (thanks @sylware!) 3fa0537565 Sync SDL3 wiki -> header 79316ca36e Heavy work on improving category documentation. 9aca97f4e7 Sync SDL3 wiki -> header c0803f7683 SDL_dialog.h: Improvements and fixes to the documentation. a55686ce61 hints: Clarify when joystick hints should be set. eb3fc0684c wayland: Don't close an externally owned display on init failure 6cc9ce183d SDL_internal: remove `#undef SDL_LEAN_AND_MEAN` 8b6d3c88cf Fix `#ifdef`s to have config flags either defined as 1 or undefined 313d522f39 wayland: Only require fifo-v1 for Wayland by default ac2edad809 audio: Simplify and unify audio stream format updating when devices change. 9a9616894d wikiheaders: Fix uninitialized variable issue. 9628549c7c Xbox buildfixes 80b9986418 audio: Fixed potential NULL dereference. 1944bc7407 Fixed warning C4702: unreachable code 63a498c966 Fixed warning C4189: 'cqe': local variable is initialized but not referenced ce9dddfde2 Don't free properties while modifying the property hashtable 43a61fec91 Removed external hashtable locking functions 61511c48a4 SDL_HashTable is now optionally thread-safe e0cee83a3a emscriptenaudio: Removed comment about Firefox not supporting userActivation. 2635239bbc README-migration: some improvements to the audio section. ce7cb10541 dialog/unix: create zenity argv on the main thread cf59fc797f dialog/unix: deep copy args to avoid data race af6c641b8c dialog/unix: stricter typing 4c86511035 dialog/unix: reduce string allocations ff82238172 dialog/unix: remove /usr/bin/env indirection c5acbef3bf GPU: Fix D3D12_INTERNAL_StrToWStr returning incorrect length 6fe09e3aa4 dynapi: Minor optimization to SDL_SetError wrapper. a1e8d5c327 Sync SDL3 wiki -> header 3ee39f6c3f GPU: Revise swapchain acquisition (#11633) bbd4eeb287 examples/audio/04-multiple-streams: Note about web browser audio in README. f45ce45603 ngage: Remove Nokia N-Gage support. 3f425b6f20 examples/audio/04-multiple-streams: Patched to compile on Visual Studio. 1fbb8e1824 examples/audio/04-multiple-streams: Remove drag-and-drop support. e6e468d0c4 Sync SDL3 wiki -> header 962268ca21 Fixed Chinese locales on PSP (thanks @ccawley2011!) ac92af02ea wikiheaders: put a header on the quick reference pages. be5fba963a wikiheaders: optionally generate a Quick Reference page. 7c5c88a3ad cocoa: Fix conditional coding style d4225070ad cocoa: Toggle the fullscreen menu item to 'leave' when entering a fullscreen space 48b6b93fb6 cmake: make RelWithDebInfo the default configuration 5447cb6d38 video: Prefer the window manager supplied coordinates for selecting a fullscreen display e4215a04d9 gpu: make macro's function-like using do-while-0 fb71b44231 gpu: define EXPAND_ARRAY_IF_NEEDED macro once and make it function-like 0370b92d80 gpu: SDL_ClaimWindowForGPUDevice must set an error message on failure 5c020b9930 GPU: Enable VK_ERROR_NATIVE_WINDOW_IN_USE_KHR to print 279836d259 GPU: Swapchain image count respects number of allowed frames in flight 1d5d948ccf Fix building SDL3 without dialog support 19cc04a162 Add build-release.py updates from satellite libraries b5c05b6e29 wayland: pass actual empty strings to zenity 1e7c7c69c5 wayland: handle 0 extra buttons in message box 09428688b9 Added a reminder to sign the source archives when creating a release 972c6d0b82 Add `SetTextInputProperties` to video device API and fix iOS handling 5d09656afa Refactor iOS text input activation to better work with hardware keyboards 72895a6994 Remove unused `hardwareKeyboard` variable f64e9a52dc Sync SDL3 wiki -> header ddb1e66d90 Updated the release checklist documentation caf0348b26 Enable ApplePressAndHoldEnabled 900627f7fc Enable the SDL_HINT_MOUSE_DOUBLE_CLICK_TIME and SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS hints on macOS 6d1dac1404 Removed unused math code from the Visual Studio projects d25cdc0fef Sync SDL3 wiki -> header df48af22d4 Removed unused math code from the Xcode project 08de6656fc Document the pixel layout of YUV format surfaces 2ac62d8c67 Sync SDL3 wiki -> header 846eb9a886 Added SDL_RenderTextureAffine() to the exported API 7278399366 Sync SDL3 wiki -> header d0f1910918 add SDL_RenderTextureAffine 2c4fc2e549 Sync SDL3 wiki -> header 8d8578785c SDL_asyncio.h is a public header and should be included in the framework fa5f84fb6e GPU: Add SetGPUAllowedFramesInFlight (#11599) 47429227ab examples: Handle newlines in README.txt better. 0f228de48a examples: Add some metadata to the generated webpages. ffb9b30e84 The metal renderer doesn't actually support RGB texture formats 1a5b0796b4 examples: fix canvas size for small screens d1b8fcd692 work around type redefinition errors in SDL_immdevice.h 9b82d46259 GPU: Use correct logging category 5229b520af GPU: Log D3D12 driver version b79e3ac830 examples: Let the browser handle README.txt word wrapping. 90efb63e52 examples: Improve webpage generation in various ways, add thumbnails, etc. e50dc7265b examples: Fix some window titles in the demos. 7ddda4fe18 Add system theme support for Emscripten 3060105cfa Don't filter out controllers when launched by Steam under Proton 2e5208f353 kmsdrm: Fix Vulkan type redefinition errors from commit 24ed947cc35ebb9f50ac0685f1b88ec164d46c6c c49f4ceeb2 Sync SDL3 wiki -> header 23828b62d4 Added SDL_IsMainThread() and SDL_RunOnMainThread() bc4185c685 Document that video and input functions should be called on the main thread. fffa6c7a2b Add missing include of fcntl.h 235e5c6a6c Fixed crash if a device doesn't have a USB product or manufacturer string 9f8157f42c Sync SDL3 wiki -> header a0b8b57afe examples: add empty placeholder image 951ca96dc9 asyncio: Added more category documentation. 58f8e259d1 examples: fixup URLs for project subfolder 56da4e81d8 examples: added homepage + categories pages + added CSS (similar to wiki) 9784e10a75 audio: Let emscripten update device->sample_frames at device open time. 5bfece34f9 ran gendynapi.pl after PR/11170. 045e31178f Added SDL_dialog.c to the Xcode project a74693c9a5 Sync SDL3 wiki -> header a4852f3a10 SDL_ShowFileDialogWithProperties with more options dc5a2ddfd0 GPU: Forward D3D12 validation warnings to the SDL log efb59bd0bf GPU: Fix validation warning in D3D12 blit code 45869d6177 GPU: Vulkan requires drawIndirectFirstInstance feature (#11583) d8eb68a6c5 GPU: Clean up D3D12 blit shader compilation 24ed947cc3 kmsdrm: Fix an LTO type mismatch warning 31128b6cdd kmsdrm: Clean up GLES function definitions 123306b18c X11: support _NET_WM_SYNC_REQUEST d320d7143d Fix rawmouse wrong timestamp (#11553) 830b132cd4 SDL_asyncio_liburing.c: replace __kernel_time64_t use with SDL's Sint64 4ac78706bf SDL_asyncio_liburing.c: replace size_t casts on pointers with intptr_t 2ad5836d02 Sync SDL3 wiki -> header 31d09909b6 Sync SDL3 wiki -> header 1377cdb3f2 Fix the Indonesian language code on Android 46f43c2e6e asyncio: Remove `SDL_AsyncIOTask` from the public API. 4745aa3324 asyncio: Windows IoRing support, other tweaks and fixes. 3ca629ceb5 asyncio: Allow file closes to request a flush/fsyncdata. 022a6a9f97 asyncio: Added Linux io_uring support. e79ce2a200 asyncio: Added async i/o APIs. 7293c18314 Fixed an inaccuracy in the return parameter information in the SDL_ConvertPixels function 401187eb6c Removed extra sa in SDL_ConvertSurfaceAndColorspace b7a31ead08 added "gpu" to the list of possible values of SDL_HINT_RENDER_DRIVER in SDL_hints.h 9fb8661684 Fixed an inaccuracy in the return parameter information in the SDL_SurfaceHasAlternateImages function 6aab5a089d Fixed potential buffer overflow 65c9a58f5e audio: Make sure a few bitflag checks convert to bools correctly. ec2ef5f9b5 dynapi: order headers for reproducible behavior 2762644e96 video: Don't error when setting an unbounded max window size while a minimum is set 068d9cc7d6 Sync SDL3 wiki -> header 2f59a1ce44 SDL_audio.h: Fixed a documentation typo (thanks, @JBetz!). acf0f09320 SDL_migration.cocci: Fixed up some SDL3 symbols that had changed. 3a1d76d298 Sync SDL3 wiki -> header ce573b01f8 audio: Added SDL_IsAudioDevicePhysical and SDL_IsAudioDevicePlayback. d53241a299 docs/README-main-functions.md: reformatted Best Practices section. 5cd188bdbc Sync SDL3 wiki -> header 7099de4ae8 Update README-main-functions.md bf9fa38920 SDL_audio.h: Fixed two typos. f5ad66ef4b audio: Allow channel maps to specify -1 to mute a channel. 3303e9843f Sync SDL3 wiki -> header f852038384 filesystem: Added SDL_GetCurrentDirectory(). 16113374ff cmake: Enable POSIX fsops code for PS2 and PSP. c0f1fe8e7f Sync SDL3 wiki -> header f022501d52 fnsince.pl: Deal with post-3.1.3 releases before 3.2.0. b8233aff8e Vita: implement mousewheel and buttons 4/5 b8bbd29ce9 Sync SDL3 wiki -> header bbc9c75618 x11: Fix memory leaks in clipboard event handler 5c8bed3780 GPU: Fix D3D12 tearing query 03d15c031b Sync SDL3 wiki -> header d55e6dfc5e hint for which system cursor to use as default 3c13bae64f Sync SDL3 wiki -> header e0e61775b8 Add missing SDL_WindowFlags to SDL_test_common.c 6fab61b69d hidapi: check each usage on a device before ignoring it completely e9fdcf6c60 Sync SDL3 wiki -> header 1720fc77fe examples: Added input/02-joystick-events a07a88c1b4 examples: added input/01-joystick-polling c508396e33 Avoid usage of CreateEventEx in WASAPI code 7a3f5ef129 Speed up full-surface fills 10e2ce9ba4 examples: Added audio/04-multiple-streams 88926f2b73 emscripten: send drag and drop events e14d939ead Sync SDL3 wiki -> header bbe843fd80 Full configuration of SDL_INSTALL_CMAKEDIR_ROOT 79f6f766d4 Avoid usage of `CreateEventEx` in D3D12 GPU backend fdafa266d8 (doc): make cmake build parallel on linux 61ba8010d3 examples: Emscripten builds should allow memory growth. 212f0dcdb1 examples: Fix output name of demos. 41b0d36a6c fix MSVC projects after commit 51637495 f9ddb0bdea examples/demo/04-bytepusher: No need to check NULL before destroying things. 7bf3cae02e examples: fix cmake after commit 51637495 51637495e4 examples: Rename "game" to "demo". 566f3dc138 Add BytePusher example b02285d495 Sync SDL3 wiki -> header 97ddc9adf2 Fix outdated references to SDL symbols in docs. Fixes #11503 465881d560 android: patched to compile. c135386f58 events: Add render category to SDL_EventCategory. 615c935d11 events: Added SDL_RenderEvent. 848fd1eab4 ci: don't do 'brew install pkg-config' anymore II 0007451222 ci: don't do 'brew install pkg-config' anymore 3a2b595c4f PSP: Add locale support e94ba6e700 Sync SDL3 wiki -> header 631c30527b Sync SDL3 wiki -> header 2e70944c44 gpu: Added an initial FAQ to the category documentation. df73cae2b0 cocoa: Clear the pending flags on non-spaces fullscreen transitions a4006e654e Fixed typo in the name of the SDL_GetAppMetadataProperty function in the description of the SDL_SetAppMetadataProperty function 5ee4d176f1 Added support for the Razer Wolverine V3 Pro a0591ec4a3 README-documentation-rules.md: Mention not listing types in param/returns docs. fef001cb48 Sync SDL3 wiki -> header e770b4e266 dialog: Clean up filter param documentation. 795ceae520 Sync SDL3 wiki -> header ecae3789ab SDL_dialog.h: Remove verbose docs on callback param from several functions. 587384756f render: use nearest pixel scaling for debug text 2b744c7df3 cocoa: Refuse to SDL_Init(SDL_INIT_VIDEO) from background thread. 932bb968d7 Fixed infinite recursion when the microphone is unavailable 1413848f41 Fixed crash if a window ends up without a display 35e6c92c3c Added the ROG Ally X to the list of Xbox controllers 4fb955c80b cmake: fix sdlcpu.cmake for C89 compilers aa352837d5 cocoa: Don't sync on a pending fullscreen event if the window is miniaturized 18b7a2315c cocoa: Restore fullscreen state on the window regaining key status 014196d98d cocoa: Fix minimizing fullscreen windows on Sequoia 7a074f582e Steam Controller handling improvements d2dc0fa920 Sync SDL3 wiki -> header 0c53d9a1ee Implemented SendEffect for Steam Controllers d8f8cf3e99 Added SDL_HINT_JOYSTICK_HIDAPI_STEAM_HOME_LED 184da780f5 Fixed a crash when unplugging a Steam Controller dongle 70fe38bcb2 wayland: Rename some display related variables to better reflect their purpose e027b85cc4 Validate that pixel formats have the correct attributes bd57cfdb55 ci: pin MSVC ARM Windows SDK version to 10.0.22621.0 0f9e551d71 joystick/gdk/SDL_gameinputjoystick.c: fix build errors due to -Wformat af6ce629c4 Make sure pairing remains enabled for the entire time dongle pairing is active 2b10a040ff Fixed rare case of wireless Steam Controller not being detected at startup 572cc7af63 Sync SDL3 wiki -> header 7d7ee43ddb stdinc: document SDL_strnlen and SDL_strlen e9f7a1b359 fix relative system scale function on Windows 25390d6c21 fix relative warp emulation broken by #11460 e0166256ff joystick: Fix connection type for Steam Controller and Xbox 360 dongles 8657fa8b3b Improved reliability of the Steam Controller driver f8468d580d add brace for contitional eaef956a9a fix errenous delta when warping b54f6044a5 Removed Linux Steam Controller support b43b333d25 Moved the GPU renderer to the bottom of the list 7f14eb33c6 snake: improve comment b71151a697 Added support for pairing controllers to the Steam Controller dongle e4778d53d3 testautomation_video: Another Emscripten test to be skipped. d48d4c8c48 testautomation_video: Don't test window position on Emscripten. f0b61c69e7 Fixed duplicate controllers showing up on the Steam Controller wireless dongle fe3566ca46 Ignore Steam Controllers in the Linux driver if HIDAPI is handling them 7959b08a4d Fixed spacing 6ca8269b96 docs/README-raspberrypi.md: Corrected NEON information (thanks, @cmitu!). 0f9505256d Steam Controller support defaults off on mobile platforms 140aba9e5d Enable Steam Controller support by default 68c2cf84f6 hidapi: Add support for the Steam Controller wireless dongle 1a311bc638 hidapi: Add support for Steam controllers connected via USB e67ae274a5 hidapi: Fix bus type in HIDAPI_IGNORE_DEVICE() on Linux 7c5a2cd462 Sync SDL3 wiki -> header 95c8a1cf7c iostream: Update docs about return values and SDL_GetIOStatus(). 7007b4762b events: Fix a compiler warning. 6049ca4fb1 docs/README-raspberrypi.md: Initial updates. c021c75737 Sync SDL3 wiki -> header d20936b544 camera: Add some category docs about camera device warmup delays. 3877bf55a3 Sync SDL3 wiki -> header c26dda10e0 Sync SDL3 wiki -> header 9a4ae4b9ed Fixed crash if SDL_GetVideoDisplayForWindow() returns NULL 20cd4290d7 Sync SDL3 wiki -> header dcf6dd19c3 Sync SDL3 wiki -> header 6c99a4b783 Sync SDL3 wiki -> header a85f0b49f4 GPU: Remove D3D11 shaders from testgpu_spinning_cube 5a74aadac9 GPU: Null check shader inputs in CreateGPUGraphicsPipeline 32cc92dceb pipewire: i/o callbacks should avoid higher-level iteration during device open. 119b4fa5f5 GPU: Remove D3D11 backend and allow D3D12 to ingest DXBC (#11456) fc12cc6dfd ci: add linux-powerpc to test matrix 559223ff9d cmake: don't use uninitialized SDL_VERSION and use REVISION.txt 332fd824f0 GPU Vulkan: release submitted command buffer after defrag (#11430) 1ed1bc1d5d testautomation keyboard: use `space` instead of `a` 8a2cac7aaa Fix SDL_PRIs64 to use standard PRId64 54ff1f35bd Fixed audio dropouts when plenty of audio is queued on Android 37b49c98dc Fixed setting up surround sound on NVIDIA Shield TV dbe82e685d Sync SDL3 wiki -> header 3e2ef64c98 Add SDL_SaveFile and SDL_SaveFile_IO functions b0140fb1b4 Sync SDL3 wiki -> header 97dac37373 Added SDL_HINT_ANDROID_LOW_LATENCY_AUDIO 6836ef8fd2 Added logging for low latency audio state 908bd84c5e Fixed reopening a controller on Android 1ea4edddec Fixed Java exception if mConnection is null 588e32ea5a test: Change LoadContext() return value type from int to bool ecfd143a26 testcontroller: update the controller name when it's opened as a gamepad 908b42f2b9 Fixed 8BitDo M30 mapping to match fighting game conventions and the layout in XInput mode 028194286c Added mappings for the various firmware versions of the 8BitDo SN30 Pro controller 0ef7a1d901 Show the guid of gamepads that are opened ed943318e2 Support multiple joystick buttons bound to the same gamepad button 27b828754a Use HIDAPI to provide better names for DirectInput controllers 5a7b75607a Added the OpenVR license to openvr_capi.h c1246e31a4 Added support for the PowerA OPS v1 and v3 Pro wireless controllers d3b882b4f9 Added support for the PowerA Fusion Pro 4 and Fusion Pro Wireless controllers fb2145f731 Sync SDL3 wiki -> header 96729e745a SDL_GetClosestFullscreenDisplayMode(): Rename parameter `mode` to `closest` 683991ab71 Get the full display bounds if the window doesn't fit in the usable bounds. 6823e3f005 Fixed gaps in scaled 9-grid texture rendering 458f616c53 wayland: Send a display removed event when a display is disconnected 73e0e8cf5b SDL_GetDisplayForPoint(), SDL_GetDisplayForRect(): Check argument for NULL. 8026866994 wayland: fixed memory leak at shutdown cacfdc8cfa Sync SDL3 wiki -> header 7031b240df Added SDL_PROP_WINDOW_WAYLAND_VIEWPORT_POINTER c56a3f60fe xcode+cmake: use SDL3.framework folder as IMPORTED_LOCATION 615d2dcd5b .wikiheader-options: Treat SDL int types (Uint64, etc) as API prefixes. e001a309be create-release.py: use head of git ref as default commit 27f69c772c Updated the release checklist 87dade4421 Set SDL_PROP_RENDERER_MAX_TEXTURE_SIZE_NUMBER for the GPU renderer 0508f100e2 Sync SDL3 wiki -> header 927d297161 Updated to version 3.1.7 for development 78cc5c1734 Updated to version 3.1.6 for the preview release 19af3a2b34 Sync SDL3 wiki -> header e31e3caece PSP: Fix building examples in parallel c5f12b135d Fixed the D-pad on wireless Xbox 360 controllers 780578cd36 PSP: Allow building tests in parallel 8b48b70c6e Fixed return value setting state on combined Joy-Con controllers 77a0411dde Minor cleanup 68cc173d92 Sync SDL3 wiki -> header 7c968f1510 Update SDL_hints.h e2857fc5a2 Update SDL_mouse.c 5699ba799e Add return to CHECK_VULKAN_ERROR_AND_RETURN macro 6c10446a6c Add version info when building CI/CD for apple platforms d6b60bcc53 typo in player spawnpos, mov drawcall out of loop 09495059df Fixed the PS5 controller face buttons on Amazon Fire TV, Android 11 c099d0525e sort_controllers.py: fixed parsing SDL_PRIVATE_GAMEPAD_DEFINITIONS 24bdbb8bf4 Supress Metal warning when compiling against macOS 10.11-10.13 2a05b63580 Mark generate.py as executable 51628034d9 Don't offset the view if there's no text input rect c8a04eec06 Autorelease keys should go down when pressed. f543faf837 Allow in-tree build 6647345be0 Sync SDL3 wiki -> header b4dff42dcd GPU: Add SDL_CancelGPUCommandBuffer (#11316) 94d110edd5 Specify C source file in example VC projects 415abf2ea2 Rename variables for readability bdf16628fb Added 03-infinite-monkeys example game 2b92dc9baa Minor updates to woodeneye-008.c from template.c a93ec0c679 Added Visual Studio project for 02-woodeneye-008 9a77ee2008 Added instructions for creating Visual Studio projects for examples 014b473bcc GPU D3D12: Fix depth texture sampling ff14a1781f GPU D3D12: Fix indirect buffers not being refcounted 149ecffd6f SDL_vulkan.h: undefine VK_DEFINE_HANDLER and VK_DEFINE_NON_DISPATCHABLE_HANDLE 35e53f76a9 metal: check success of device creation (#11367) feb10434a1 Order by subsystem b2f216f9e2 Add GPU to iOS build config 54836050c9 metal: Add availability checks 8f9a562969 wayland: Remove vestigial struct member 152bcce85f Add examples to `SDL.sln` (#11255) 1e7c186461 Splitcreen FPS example with multiple mouse and keyboard (#11317) 5c5235fb51 ci: Add Steam Linux Runtime (Sniper) task 36c209080c wayland: Refactor some shell surface related names 2b7dc55364 wayland: Check the WM capabilities before sending a minimize event 1abbd13414 wayland: Throttle interactive user resize events e0d019c941 Sync SDL3 wiki -> header cb0c7c9680 SDL_CreateDirectory(): directory tree creation for absolute paths for non-Windows platforms a10578acbd SDL_SYS_RenamePath(): Fix error message. 3922bcec95 Sync SDL3 wiki -> header 04a478b6a9 SDL_Enumerate[Storage]Directory() comments: Use enum constant names instead of integers. 5c3d42aade Update README-linux.md for openSUSE Tumbleweed dependencies 8468c372b2 SDL_EnumerateDirectory(): (posix) Fix return value when directory is invalid 97b924f985 typo: maxOS -> macOS a851c5b648 create-release.py uses python3 47411d8007 build-release.py uses python3 4f160d69a6 Closes #10318 - implement Android prerotation in the Vulkan renderer 93471cf78d video/openvr: minor clean-up: 8bf1a84200 ci: add include headers of build directory to ci artifacts 590e1196d0 snake: check allocated memory before use 20e01c6fbe android: add (disabled) android.permission.INTERNET to AndroidManifest.xml 850158f83f testcontroller: fixed incorrect usage of memcpy() 344546b4ea cocoa: Make sure GL context destruction happens on the main thread. dcd4ddb043 Sync SDL3 wiki -> header 8d3bec99a7 audio: Make SDL_GetAudioStreamProperties() thread safe. 10e52e1899 docs: Added more '\threadsafety` tags. 731853077a Send drop complete events when the drop leaves the window on Cocoa, Wayland, and X11 db4e2ccbac Allow redefinition of only one macro SDL_SINT64_C SDL_UINT64_C c0bad724a7 README-ios.md: Add info about UIApplicationSupportsIndirectInputEvents on iOS 17 4ea26a7771 emscripten: scale mousewheel X coordinates correctly, not just Y coordinates. d0cf2c19d1 Allow defining custom SDL_SINT64_C and SDL_UINT64_C macros (#11315) 7108291d0b video: Change SDL_GLattr to SDL_GLAttr. c0e9205a92 video: Change capitalization on various OpenGL attribute typedefs. 3c506630c3 video: Turn several OpenGL attribute enums into integer typedefs. a04fda211c Sync SDL3 wiki -> header 4e33440c04 Sync SDL3 wiki -> header e8b69b03fe cmake: fail configuring when no X11 or wayland could be found (#11310) 540db0d164 Bumped version of macro 'main' to 3.1.3 370521363a Sync SDL3 wiki -> header 924f719b97 wayland: Get the window content scale from the backend 299587fa64 Sync SDL3 wiki -> header 5e855d82e3 Manually bump versions of non-function identifiers introduced after 3.1.3 to 3.2.0 22bc430bbb Set error using function hresult 6eca02a0e7 evdev: correctly handle composite devices ba1412cb9f evdev: fixed devices not being removed on disconnect 370c0426ce testspriteminimal: only quit when escape is pressed acfc223e15 Sync SDL3 wiki -> header 423337796c GPU Vulkan: Use dedicated allocation for download buffers (#11298) 24b376ef18 Sync SDL3 wiki -> header 1c1706a00b fnsince: update `\since` policy for documentation. 21c91d5535 examples now using SDL_ALPHA_OPAQUE(_FLOAT) for opaque alpha value 63ef5a2369 Sync SDL3 wiki -> header fd530d029f Fixed typo in SDL_clipboard.h 7b6416add0 Sync SDL3 wiki -> header af1c165352 Set version of new identifiers after 3.1.3 release to 3.1.6 45584ad73e Simplify get_channel_name() so it's easier for people to read and understand c134dd6e5e Fixed typo in the channel layout documentation 4a8eadf167 include: Fixed typo in SDL_CopyFile's documentation. d9e6fe0b7a Sync SDL3 wiki -> header f5c27a3a2c render: Corrected docs for SDL_SetRenderVSync(). 1f8b9a320c VITA: fix SDL_ShowMessageBox by using different memory type a42c9ec5f7 Sync SDL3 wiki -> header 2318961b6f docs: Add `\threadsafety` to some low-hanging fruit across a few headers. eed11ad6d6 docs: Fixed example code for SDL_qsort_r() and SDL_bsearch_r(). 0bec18245d android: fix android.content.Context:getCacheDir JNI prototype e9b5f6749e wikiheaders: add (disabled) code to check for missing `\threadsafety` tags. 19a1175c02 include: Updated docs on SDL_TouchFingerEvent. e61f0678ee x11: Remove the "safety net" error handler. f9bffa31b6 docs: fix window flags in README-migration.md b0982e8982 docs: Updated README-emscripten.md. c56af0d975 Removed unused code 35be8bb7f9 Fixed warning C4456: declaration of 'e' hides previous local declaration 8119568805 x11: Remove text-scaling-factor setting checks 1c51b8dc33 Only set the OpenGL flag if the OpenVR driver is active 82b3325978 Fixed memory leaks if Windows initialization fails d199586683 Fixed memory leaks if OpenVR initialization fails 7b492553c4 Allow the OpenVR driver to be enabled on Windows 0aea14cf45 Added logging for additional events 3d47877bb4 Added SDL_EVENT_RENDER_DEVICE_LOST 54e52d055f Sync SDL3 wiki -> header 9c848e08e4 docs: Explain events for already plugged in controllers (#11286) 26567df878 Don't treat mouse buttons as focus clicks if the window has mouse capture ef758d05c1 render: GetRenderViewportSize shouldn't use scale, just logical presentation. 92520c1d9b Improved D3D12 handling of unrecoverable device loss 315842cf71 Fixed crashes handling D3D11/12 device lost in testsprite e2254b1045 Added color scale info for the GPU renderer TODO item 4b54e32231 Tweak android path functions comment tag \sa a6536a9298 RI_KEY_BREAK indicates key is up 679dd4b181 SDL_RequestAndroidPermission() comment: Add link to android permissions website eb1451536e Sync SDL3 wiki -> header 5819d4b360 SDL_CreateRenderer() comment: Remove mention of flags e0321ca5b6 SDL3: SDL_render_gl(render name: opengl) dose not support transparent on Linux/X11 (Bug #11273) (#11274) dcbb2f11a8 Clamp the texture alpha and color modulation values to 0-255 541ba33714 Fix SDL_GetClosestFullscreenDisplayMode documentation 40070d899d Refactor Blit_RGB555_ARGB1555 to be more generic 3d2c8c510d add GLES3 headers from Khronos for OpenVR video driver. 2668558c5c Sync SDL3 wiki -> header 153f90a725 Revert "Use the correct return type for SDL_GetAndroidJNIEnv()" ffb1d9e4b4 Removed Blit2101010toN and BlitNto2101010 5c1ccaefae Fixed VULKAN_UpdateViewport judgment. 4c2d0c422b wayland: Remove kde_output_order_v1 support 5f874b60a8 Sync SDL3 wiki -> header 1647d36aec docs: document copying shared SDL3 a bit more + document sanitizer/libc incompatibility b6a6a4a7f8 audio: fix incorrect dynCall in Emscripten audio. 07bb8f1c4c openvr: added APIENTRY for OpenGL functions (thanks @cnlohr!) b40ad5428b Fixed assertion at quit when the debug text was the last texture used. a48fa675be Fix formatting 1d23d2c3c2 Renamed SDL_SANDBOX_UNKNOWN to SDL_SANDBOX_UNKNOWN_CONTAINER a7da3ad59b x11: Support sorting displays via the priority hint 0faf9dc4a4 kmsdrm: Support sorting displays via the priority hint a6e5ab437f video/openvr: Avoid type redefinition errors. 2654d5d48b Sync SDL3 wiki -> header e81e917c5e Added an OpenVR video driver (thanks @cnlohr!) 569691797d windows/SDL_systhread.c: fix permissions 186c6e5c9d windows: fix race condition with exception-based thread naming. faa404a652 If we get a newline character, treat it as SDLK_RETURN a432abf4cc Make sure that we quit if we get a terminating event c5e1ae4580 Only free debug_char_texture_atlas if it has been allocated 00f4cb308b Fixed crash if the Vulkan renderer changes swapchain image count 41366f73b2 Don't block in Android USB device open 60c3eaf5ee Use SDL_GetAndroidJNIEnv() in hid.cpp 2d3fa03d53 Use the correct return type for SDL_GetAndroidJNIEnv() 3d852da806 Requesting Bluetooth permission on Android is now asynchronous be3d961b47 Treat clicking the right pad as a thumbstick click on a Steam Controller 6da4d94abf VITA: implement camera subsystem f79f21217b VITA: fix yuv texture update 4612db21a3 SDL_utils.c: restrict gethostname() usage to non-windows 9a5420118a Define SDL_DIALOG_DUMMY in SDL_build_config_xbox.h dd955332a2 Removed SDL_build_config_emscripten.h 5492be23a1 ci: test Apple x64 on macos-13 runner c48fbbb067 Sync SDL3 wiki -> header c41b2bb855 SDL_ShouldIgnoreGamepad() should take product IDs rather than a guid. 8a30def5f2 Only use Steam Virtual Gamepads if we're running under Steam 28504f5791 Steam virtual gamepad info isn't available in the macOS sandbox d6981da5a4 Added SDL_GetSandbox() d7b1ba1bfc Added support for the Steam Virtual Gamepad on macOS Sequoia 3ebfdb04be SDL_stdinc.h: provide a prototype for strdup for __clang_analyzer__ case d9df87f19f Fix syntax of trailing doc comments 9cf388f260 Re-added HAVE_FDATASYNC and HAVE_GETHOSTNAME for platforms that have them. 6897385623 Add `void` to `run_colorspace_test()` function prototype 69433ee075 doc: explain build-scripts/create-release.py in the release checklist 18410c03ea cmake: fix checks for fdatasync() and gethostname() a027ec59ca Make the name of the Steam Deck Controller consistent. 09e3af58b5 Fixed bug #10954: software renderer: examples/renderer/10-geometry missing a triangle typo when changing return code from int to bool 860e38a3a2 VITA: fix shader color format ed1ec236c1 Removed fdatasync and gethostname definitions from platforms that don't have them cbbad4051b Treat a button press location as an implicit mouse move e5fa929245 Report win32 last error string windows_file_open (#11224) b4554a8a75 Sync SDL3 wiki -> header 97f1da73da Rename GPU properties for consistency 9af5ffcfbe Improve support for private platforms (#11220) 66d09a1cda wayland: Adjust primary display selection priority 638b50b69b CI, LoongArch64: disable clang-tidy dede2ab86f Sync SDL3 wiki -> header 553fc5fe0e wayland: Expose displays in a deterministic order, and attempt to better handle selecting a primary display. 075ae7db7d ci: update LoongArch toolchain to 2023.08.08 4162bddca7 cmake: fix configuration with -DCMAKE_DISABLE_FIND_PACKAGE_PkgConfig=ON cdaaabb978 GPU: Fix Metal sampler address mode order 104dabb9de PSVITA: enable posix fsops afee27a530 Make sure stdio handles are in blocking mode bb764e3106 Added support for full range BT.709 YUV conversion ce49465b13 Sync SDL3 wiki -> header 72bae5167e Updated documentation e254c99b38 examples/game/01-snake: Update game logic in AppIterate, don't use a timer. edb28e79b5 Make SDL_LoadBMP() use true instead of 1 f212cb5f92 Don't overwrite the SDL_IOFromConstMem() error in testshape 51dc978785 Don't overwrite the SDL_IOFromFile() error in SDL_LoadFile() fb43dc3097 Set error for NULL SDL_IOStream in SDL_LoadWAV_IO() 00bb81de76 GPU: Allow size queries on depth formats 817fa9a975 releases: don't add static library to MinGW binary release 45dfdfbb7b Add parametrized build script 57f2577c65 GPU Vulkan: Fix depth-only framebuffer leak 46835650db Added config.xcconfig to the Xcode build 9fac4b9f5f SDL_windowsmodes.c: Fix MSVC builds against SDKs older than 10.0.17134.0 b865708039 Sync SDL3 wiki -> header 0b6ad8bf62 Improved the documentation for SDL_SetWindowShape() f9d490045b Fixed uikit crash when GLES is disabled 3733b1d5d8 Sync SDL3 wiki -> header c20918b0fb render: Add SDL_RenderDebugText(). 44bc19b592 test: remove testaudio-art.txt (this info is in test/LICENSE.txt now). 1cc85c912b Check return value of SDL_small_alloc() d7be7fc168 Fixed Cohen-Sutherland out code computation for float line intersection db78c0f563 Sync SDL3 wiki -> header a8ca024495 Added SDL_GetDefaultLogOutputFunction() b766c824bd Don't overwrite the SDL_IOFromFile() error in SDL_LoadBMP() aed1f76248 Sync SDL3 wiki -> header a567786762 Added SDL_SetErrorV() d5e02474ac Fixed SDL_oldnames.h to use the correct new names 1a1e2e9892 Set size parameter in SDL_GetClipboardData() 82598e5ca9 GPU Vulkan: Fix frame counter timing (#11189) b641c2a0db Refactor gendynapi.py with the final goal to make it re-usable 173c168ff4 Default functions are already declared by the first SDL_dynapi_procs.h include fd9f2ae5b5 Sync SDL3 wiki -> header 01c9c1d0eb Document main callbacks API thread safety fd9e57b71e 3DS: Support simple message boxes 2bef8852fb testdrawchessboard: Allow using the standard render API 7556c44796 SDL3: Fixed Cocoa_GL_CreateContext() not returning a context on success (#11181) 94c8c170eb 3DS: Only bundle resources with tests that need them fec006a4f9 Allow for more fine tuning of Duff's device routines aebb64efa1 Remove leftover ARM SIMD code 9a81892447 Old env vars as fallback for SDL_VIDEO_DRIVER + SDL_AUDIO_DRIVER #11115 3e57d996fe Reduce the size of the SDL_blit_0 alpha code 05c53b5ab0 Add macro guards for OpenGL <=1.3 function prototypes 365dba6de8 Sync SDL3 wiki -> header 4898cbb6cf SDL_migration.cocci: Fix renaming SDL_bool 22566506d0 SDL3: opengles2 render not support window with transparent flag on Linux/X11 (#11167) c6c195ff88 Always use WaitForSingleObjectEx() as a fallback in SDL_SYS_DelayNS() c5904d8710 Improved implementation of SDL_DelayPrecise() (thanks @nightmareci!) 25251a9405 Fixed warning C4723: potential divide by 0 33366b0a4e Fix SDL_MAIN_USE_CALLBACKS with Android, introduce SDL_MAIN_EXPORTED 86ef790a23 explicit cast to int in SDL_bits 3cd7e22e8b Fixed converting full range YUV to RGB 3086b25c4e Set hint SDL_HINT_MAC_SCROLL_MOMENTUM version to SDL 3.1.4. b676413657 Sync SDL3 wiki -> header 48ff3efdb9 Clarify README-highdpi.md (#10083) e31c68427a Sync SDL3 wiki -> header 6ea4a66451 GPU: Add SDL_CalculateGPUTextureFormatSize (#11146) 6d85127560 Rename hint string literal SDL_HINT_MAC_SCROLL_MOMENTUM 3db10a6b2c GPU: ASTC block size fixes (#11157) 90a3a2359b thread: Rewrote generic Condition Variables. 41dfe2c246 test/testautomation_stdlib.c: fix gcc warning on 32 bit 73b995fbad Don't assume OpenGL on Android 8aaaeb7560 Sync SDL3 wiki -> header 2a9cb68b91 Sync SDL3 wiki -> header 0babb284dd fnsince.pl: Make fixes now that we've reached ABI lock. 40ff6a2785 test: Fix mouse focus test on X11 e4b1a9f382 Sync SDL3 wiki -> header 7ff819141d libm/e_exp.c: fix gcc warning on 32 bit: ac6b9e2d19 Sync SDL3 wiki -> header 8262072d91 Fixed possible memset(NULL) call in testautomation's SDL_aligned_alloc() check 4b7c5f561b Fixed warning: ‘new_item.probe_len’ may be used uninitialized in this function c8f5f6d47a Added SDL_DelayPrecise() 28a70a5b71 Use the correct version for the \since field bf351b0b0e Add more configChanges to Android Manifest (#11145) 9c322386bf gpu: vulkan: Fix an uninitialised structure in SDL_BlitGPUTexture() da5a1585cd GPU: Avoid calling SDL_GetWindowSizeInPixels when possible (#11139) 4707bb730e Sync SDL3 wiki -> header 9023a199dd Fixed crash in RLE colorkey blitting f946f87f30 Don't rely on event.buttonMask being set in touchesEnded ee9b6204cf Updated to version 3.1.5 for development 02f3a96476 Sync SDL3 wiki -> header f8eac30276 Added SDL_StepBackUTF8() 1f08a03794 Switched drag-n-drop logging to trace level 5b6342a00d Default SDL_HINT_JOYSTICK_GAMEINPUT to "1" on GDK platforms ed87e7e434 test: enable GameInput driver on GDK platforms acb18e05b5 GPU: fix swapchain buffer size not set on Xbox ff834f7733 Removed the restrict keyword 8e6ead2f7b [GPU] Added ASTC texture format support (#11116) 02434cd293 emscripten: Fixes for data addresses above 2gb c34790f9f1 Fixed spacing 312ecc4a52 SDL_main.h: Remove dead code for hypothetical C++ platforms 823b218051 Simplify code to include SDL_main_impl.h in SDL_main.h cba77834f2 init: Log '<unspecified>' not '(null)' if the app name isn't set. fb8244d6d9 init: Also log the SDL revision here c24f7d2453 Log app ID as SYSTEM/INFO during initialization e7ee92e822 Switched drag-n-drop logging to trace level d9f8474dd7 Sync SDL3 wiki -> header 95aaaa3232 Sync SDL3 wiki -> header 158ba93d61 Update some window function documentation 300daf308a Replace SDL_TRUE/FALSE with true/false in the coccinelle script 95ab38ba15 ci: actions/cache might return a boolean as string 7acfdfd3e7 Sync SDL3 wiki -> header 326ab439d7 Sync SDL3 wiki -> header fb07ab91c6 Improved SDL_main documentation and remove extern "C" comment. 03fa9ff0b0 Sync SDL3 wiki -> header 2000ccb541 Allow linear interpolation of the font textures f6fa617139 Define SDL_DIALOG_DUMMY in SDL_build_config.h as needed 4627283eca Allow building both Cocoa and dummy dialog implementations c8526532de Changed objectVersion to 54 so Xcode 12 can load the projects (thanks @Wohlstand!) 2fd12b2e8a keyboard: Note that enabling text input can also enable an IME 81b48de3f5 Fixed VID/PID list parsing of SDL_HINT_GAMECONTROLLER_SENSOR_FUSION 5db64300b8 Fixed SDL_GetStringInteger() for values starting with '0' and '1' (thanks @DanielGibson!) 7da728a642 Added support for wired XBox controllers on macOS 15.0 Sequoia 659f2f4b04 examples: add basic app metadata to all existing examples. aa534c3ac3 core: Fixed incorrect comment in core/windows/SDL_windows.h. ee7f61fd9a snake: Add extended app metadata ca82405d5a snake: Add basic app metadata 6ae5666acf Check for VK_SUBOPTIMAL_KHR also in vkQueuePresentKHR (#11113) 06bd214af6 Fixed warnings building on Android 596fcfa6c4 fix microphone permission and feature flags being spread out 54e622c2e6 Use the printf vararg verification macros when compiling with clang fca05fa754 examples: Use SDL_Log() instead of message boxes for errors. 9f170286ba test: Replace README with LICENSE.txt d0ef58b442 Sync SDL3 wiki -> header cbb9a16367 Sync SDL3 wiki -> header 65539bc4f7 Make sure trackpad state is updated when button presses are delivered 03b259893a Fixed return value of SDL_AddGamepadMapping() bf54eddba9 macOS: Clarify when macOS hints need to be set c2b98e21ba macOS: Add hint for smooth SDL_EVENT_MOUSE_WHEEL values 2fa8acb084 x11: Refresh the global cursor coordinates when confining the pointer e59078ac6f Sync SDL3 wiki -> header 9e74ada7b8 gpu: fixed formatting in docs. c358bf3f9b Removed test program list, it's better to just look at the code. f8dd73fdb9 Fixed build 0f47d3a77b Fixed use after free (thanks @meyraud705!) e159bcf5de test: Make blit_testExampleApplicationRender work on big endian c9ffa3f9e1 Remove vestiges of the TAKE_FOCUS window event 596ef1ba2e Moved the SDL_ttf IME demo to showfont in the SDL_ttf project e00b1fdd67 clipboard: include mime types in SDL_ClipboarUpdate 2880b40e33 fix pipewire prototype b6ab7d28f6 Replaced \r\n with \n in SDL root files b8e72b0969 Note that creating a renderer will fail if the preferred renderer isn't available. 1ca45c5891 Fix typo: DiretMedia->DirectMedia 8db3b47482 Just use normal stdio for the child process 8c3f88b495 docs: Wrote CategoryVulkan. 369b93771b Sync SDL3 wiki -> header deeffaa8d6 Sync SDL3 wiki -> header 84ecf7fd3e docs: Add CategorySurface text. e292d1f5ac Sync SDL3 wiki -> header d5af0c7e09 Added missing parentheses 5a60d073c0 Sync SDL3 wiki -> header a3413e050b Sync SDL3 wiki -> header c25423b94c docs: Filled in some category pages. a57ecad648 Fixed documentation typos 37315110c1 Sync SDL3 wiki -> header f26dd52090 SDL_GetProcessProperties is missing a SDLCALL d318a4a6b1 .wikiheaders-options: Declare SDL3 to be a stable API! 64cbf02dbf Sync SDL3 wiki -> header ffe4e571d1 wikiheaders: regex hack to make a URL not confuse wikilink genertion. a7e4e9219a Sync SDL3 wiki -> header e8c852d77c GPU: re-add parens to wiki intro 00385951a1 Use file descriptor I/O for process pipes f592a35439 Sync SDL3 wiki -> header 12d007038c GPU: wiki header link typo f275731e18 Sync SDL3 wiki -> header f3285b01c8 GPU: Intro fixes 93c7521dd5 Sync SDL3 wiki -> header c1084bfaa3 GPU Introduction (#11062) 21e7fa45e8 GPU: fix padding field typo bd4cd34a74 Add docs to mingw development archive f859d69c44 Sync SDL3 wiki -> header 6c64c62114 Rename SDL_BUTTON() to SDL_BUTTON_MASK() d529407ce7 Sync SDL3 wiki -> header fe2880fcda Rename SDL_SetThreadPriority() to SDL_SetCurrentThreadPriority() 69196ab30d Change evasive library handle to `SDL_SharedObject*` 3a6a3ab64f gpu: Fix memory leak in Vulkan backend. 43e7ce7dfc Updated to version 3.1.3 for the preview release ca0b1eaf5a Sync SDL3 wiki -> header 93c27a6675 Fixed the documentation for consistency. 3ae2af8aa1 Sync SDL3 wiki -> header 9a5d5a2839 video: Improve the EGL attribute callbacks. d4143e02d1 Always set checked_monotonic_time when calling CheckMonotonicTime() 020fb6889c Removed unnecessary const-qualifiers in src and test files b8e8dcaa9a Add void to openbsd function prototypes 0e909d2785 Removed redundant condition in src/events/SDL_pen.c 191f3ecbbc render: Restore previous policy for converting window/render coordinates. 3246df8bd3 Remove redundant SDL_Vulkan_GetResultString() declaration 07fd88d241 docs: Fix migration documentation for SDL_WINDOWEVENT_SIZE_CHANGED a0de6c4abf Add properties to SDL_IOStreams returned by IOFromMem 1bb7e2b1a8 SDL_migration.cocci: Removed obsolete SDL_CreateWindowWithPosition code. f4cea5e019 Removed const qualifiers from SDL_CreateHashTable() parameter types d287feaddf render: Remove non-pointer args' const qualifiers on SDL_RenderTextureRotated. e3757f072b Sync SDL3 wiki -> header 8b4f5f09c1 dynapi: It's a Python script now, not a perl script. 35b002be82 audio: Clarified SDL_GetAudioStreamQueued docs. 47450425fd Allow iterating just the keys or values in a hashtable d5fe6dd627 Don't use const for non-pointer API parameters d2b2a752ce SDL_migration.cocci: A few fixes. 91b074beb7 Removed SDL_IPHONE_MAX_GFORCE 34033d5838 Sync SDL3 wiki -> header eced9f58a9 Added a userdata parameter for EGL attribute callbacks 798c9574d0 Sync SDL3 wiki -> header 89e68aa801 Added missing return value documentation for bsearch() 4fa92d233d Include stdbool.h when using Visual Studio 2017+ 522321b7c9 test: Fix testcustomcursor on high-DPI displays 3b3c4a79b6 Don't close file descriptors already handled by AddFileDescriptorCloseActions() 5f5379dc99 Add `SDL_IsTV()` (#11004) 6bcf2f919a Sync SDL3 wiki -> header 0b5e01a305 loadso: library handles are now `SDL_SharedObject*` instead of `void*`. f351395c46 Sync SDL3 wiki -> header 3234a3b902 Simplified internal SDL_Surface structure 1f3a0d12e6 Made texture size and format public in the API 5136b30652 render: SDL_ConvertEventToRenderCoordinates() now handles pen events. b4fcd1f345 pen: Corrected some documentation. e3dbd74fe7 Improved documentation for SDL_Surface fields 13c5d1092f hidapi: update hid_write() for windows from mainstream. 3eab599977 just force the barrier on UpdateTexture actually e17741a6cb Render GPU: Only cycle on update if entire texture is replaced 45ad763de5 Disable backface culling and use a constant rectangle winding order. fa14b53273 GPU Vulkan: Clear up some swapchain edge cases c16d7c87d6 Sync SDL3 wiki -> header ab832f1be0 Added documentation for qsort and bsearch functions 818d7d892a x11: store all atoms in a specific struct 801870c8cf video: cache some more atoms under X11 dcc7560a5c Sync SDL3 wiki -> header afdf325fb4 GPU: Add swapchain dimension out params (#11003) b3388d5753 Haiku does not have fdatasync, but has fsync 396afa2117 ci: bump haiku to r1beta5 0b64520997 hashtable: fixed unused-parameter warnings 1787d6ca5c main: SDL_AppQuit() now reports the result value. 6a7f8b74f1 filesystem: SDL_GlobDirectory shouldn't strip final '/' if the path is "/". 7241dd9ec3 Add more SDL_Process tests f6055432c8 Fix null-pointer dereference on failing SDL_SYS_CreateProcess e9bfa5bf6a Mitigate BatBadBut vulnerability 06e122103c Fix window opacity update c84d825241 Added SDL_HashPointer() and SDL_KeyMatchPointer() d0c9c008e1 wayland: Use high-DPI system cursors on non-DPI aware windows 5f304b3a47 Fix builed error after commit 0e45b824e34 due to -Wunused-variable 0e45b824e3 renderer: always update the output pixel size at startup 2825a682f0 Fixed build errors ba7b346e52 hashtable: reimplement as open-addressed robin hood hashtable 62938837c2 Sync SDL3 wiki -> header fc242abbd2 GPU: recreate swapchain on window pixel size change event (#10985) 66f6b40c92 Render GPU: Don't call GetWindowSizeInPixels during RenderPreset (#10984) a923771978 Added SDL_murmur3_32() 039148fb0e Updated check for stdbool.h 7ca0e9ede1 wayland: Scale the pointer destination size relative to the theme size d2094bd0a2 wayland: Don't query the cursor info with DBus if the cursor shape protocol is present dee62e1b47 Remove trailing comma in enum 7d21a49c9c filesystem: SDL_EnumerateDirectoryCallback uses an enum now, not an int. 55bd9f5311 iostream: flush() should attempt to sync file data to physical media. 0852307b58 gpu: Check Vulkan device features for IsDeviceSuitable fb165a542b GPU Vulkan: add resolve info to framebuffer and render pass lookups 0542bbbf1a Sync SDL3 wiki -> header 4a296f1bde filesystem: Fixed memory leak on Windows. e944f0fb9d testfilesystem: Added test of creating parent dirs. 428f2f35be filesystem: SDL_CreateDirectory should make parent directories. 94030131de filesystem: Windows SDL_SYS_CreateDirectory should succeed if dir exists. 48c3ee2120 testcolorspace.c: Fix unreachable code warning 8d6b397cd8 Sync SDL3 wiki -> header 3f446d8fb5 Minor cleanup 1088ea55fa SDL_gpu_d3d11.c: define D3D11_FORMAT_SUPPORT2_UAV_TYPED_LOAD for old toolchains 8377cad974 Sync SDL3 wiki -> header c39e8298b7 GPU: Document swapchain dimensions de40d6bae0 GPU Metal: Set texture to NULL even if AcquireSwapchainTexture fails 0e5a49542d Sync SDL3 wiki -> header f32e96f5e2 clipboard: add SDL_ClipboardMimeTypes 0befa7d8e9 Sync SDL3 wiki -> header eedd2039f9 GPU: 32-bit component texture formats 769ff47461 Sync SDL3 wiki -> header 05d0656bd6 GPU: Simultaneous compute pass read-write (#10965) d39acc6d1e Fixed warning C4702: unreachable code 5ff6e8d522 GPU: Add enable_depth_clip to RasterizerState (#10964) 04bb105d09 Added header for SDL_ThreadID type e98cf3c870 Fix Xbox builds c7442b04f0 Sync SDL3 wiki -> header be401dd1e3 GPU: More robust error reporting (#10958) 48e213b4cd Fixed SDL_ShouldQuit() returning false during status transitions d8c76d2f34 filesystem: POSIX SDL_SYS_CopyFile shouldn't use a temp file. 0d593cf39a Sync SDL3 wiki -> header f267ec7681 filesystem: Improve docs, make some promises about overwrites and file caches. c1587b1eac Sync SDL3 wiki -> header 125e592844 Added SDL_ShouldInit() and SDL_ShouldQuit() 0e2c4e407a README-migration: note that logical presentation state is different from SDL2. 4e09e58f62 include: Small clarification on directory enumeration documentation. 38f971bac5 filesystem: SDL_SYS_EnumerateDirectory() now returns bool. 86ea283904 examples: No need to explicitly seed the RNG at startup. 671a33c2f7 wayland: Raise all touches on a cancel event 457d0edeaf Remove some extra semicolons 345cae361d Document mode parameter of SDL_GetRenderLogicalPresentation 345d9bfe19 A zero source rect is valid for blitting 1aea43846e Don't use BlitARGBto555PixelAlpha() for SDL_PIXELFORMAT_ARGB1555 59d69a3ba3 Sync SDL3 wiki -> header d9a7da4fac Optimized SDL_HasEvent() and SDL_HasEvents() 3abb213083 opengl: Fixed SDL_RENDERCMD_SETDRAWCOLOR code checking the wrong variable. 961cd51611 opengl: Removed a FIXME (this is documented as not-thread-safe now. 80cf3f7c38 ci: Fix check_stdlib_usage.py and run on ci 76f28ea120 Fix stdlib usage 80da805688 build: Fix testprocess invocation during "as-installed" tests 81644d260f Sync SDL3 wiki -> header 122cd4db2b include: Added `\threadsafety` notes to all SDL_render.h functions. 276969cd58 Sync SDL3 wiki -> header 4c48ff51f8 render: SDL_RenderPresent now behaves when a render target is currently set. 7a6a0becb8 render: Fixed a FIXME for SDL_SetRenderViewport with a negative size. 54459def69 render: Remove the logical presentation render target. bf7a48cdcc render/gpu: Change some memcpy calls to SDL_memcpy. b48f29dd9b examples: Fix name of renderer/17-read-pixels binary. 925e47a077 GPU: Fix backwards LogError and SetError calls 1561d7c089 Fix warnings in build-scripts/check_stdlib_usage.py 2070adb262 android: add python script checking Android JNI bindings cf4049cfde ci: check versioning on ci 557c6dfb18 GPU: call SDL_SetError where appropriate 6ec8b1a173 Throttle tickle reports to PS4/PS5 controllers 53bf2baac3 Change JNI calls to comply with recent Boolean changes fcab6c99fb examples: Fixed some window titles. 9881c4e582 examples: Added renderer/17-read-pixels 62389ada6f examples/renderer/02-primitives: seed the RNG. 95134f6d58 examples: Added renderer/15-cliprect ad3a4c677b wayland: Clean up cursor scaling e5d3a1b6f5 Remove casts from typed pointer to void * for printf %p in test projects 57418475ce kmsdrm: Keep fd around if we can drop master 13f88df190 kmsdrm: Fix KMSDRM_Vulkan_CreateSurface() return value 8f55f48337 kmsdrm: Move property initialization a bit further down 1ed3dac021 examples: Added renderer/14-viewport e00ea27d25 examples/renderer/01-clear: No longer needs vsync. 004ac40226 Fix warning: no function prototype 4a3faf20ac gpu: Replace high-level logs with SetError 043c876a15 Move default colorspace aliases into enum 0685b96469 GPU: fix build when SDL_GPU_DISABLED is set e973b687cd examples: Added renderer/11-color-mods 0478a6ee3b Move endian pixel format aliases into enum 1828bde49f examples/renderer/01-clear: Use the color-cycle code from testvulkan.c 3bc2bd790c build-web-examples.pl: Added a FIXME. git-subtree-dir: external/SDL git-subtree-split: 8ec576ddabdc7edfd68e7a8a3214e84e4026328d
3102 lines
124 KiB
C
3102 lines
124 KiB
C
/*
|
|
Simple DirectMedia Layer
|
|
Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
|
|
|
This software is provided 'as-is', without any express or implied
|
|
warranty. In no event will the authors be held liable for any damages
|
|
arising from the use of this software.
|
|
|
|
Permission is granted to anyone to use this software for any purpose,
|
|
including commercial applications, and to alter it and redistribute it
|
|
freely, subject to the following restrictions:
|
|
|
|
1. The origin of this software must not be misrepresented; you must not
|
|
claim that you wrote the original software. If you use this software
|
|
in a product, an acknowledgment in the product documentation would be
|
|
appreciated but is not required.
|
|
2. Altered source versions must be plainly marked as such, and must not be
|
|
misrepresented as being the original software.
|
|
3. This notice may not be removed or altered from any source distribution.
|
|
*/
|
|
|
|
/*
|
|
* This is a simple file to encapsulate the OpenGL API headers.
|
|
*
|
|
* Define NO_SDL_GLEXT if you have your own version of glext.h and want
|
|
* to disable the version included in SDL_opengl.h.
|
|
*/
|
|
|
|
#ifndef SDL_opengl_h_
|
|
#define SDL_opengl_h_
|
|
|
|
#include <SDL3/SDL_platform.h>
|
|
|
|
#ifndef SDL_PLATFORM_IOS /* No OpenGL on iOS. */
|
|
|
|
/*
|
|
* Mesa 3-D graphics library
|
|
*
|
|
* Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
|
|
* Copyright (C) 2009 VMware, Inc. All Rights Reserved.
|
|
*
|
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
|
* copy of this software and associated documentation files (the "Software"),
|
|
* to deal in the Software without restriction, including without limitation
|
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
* and/or sell copies of the Software, and to permit persons to whom the
|
|
* Software is furnished to do so, subject to the following conditions:
|
|
*
|
|
* The above copyright notice and this permission notice shall be included
|
|
* in all copies or substantial portions of the Software.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
|
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
|
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
* OTHER DEALINGS IN THE SOFTWARE.
|
|
*/
|
|
|
|
|
|
#ifndef __gl_h_
|
|
#define __gl_h_
|
|
|
|
#ifdef USE_MGL_NAMESPACE
|
|
#include <SDL3/gl_mangle.h>
|
|
#endif
|
|
|
|
|
|
/**********************************************************************
|
|
* Begin system-specific stuff.
|
|
*/
|
|
|
|
#if defined(_WIN32) && !defined(__CYGWIN__)
|
|
# if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */
|
|
# define GLAPI __declspec(dllexport)
|
|
# elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) /* tag specifying we're building for DLL runtime support */
|
|
# define GLAPI __declspec(dllimport)
|
|
# else /* for use with static link lib build of Win32 edition only */
|
|
# define GLAPI extern
|
|
# endif /* _STATIC_MESA support */
|
|
# if defined(__MINGW32__) && defined(GL_NO_STDCALL) || defined(UNDER_CE) /* The generated DLLs by MingW with STDCALL are not compatible with the ones done by Microsoft's compilers */
|
|
# define GLAPIENTRY
|
|
# else
|
|
# define GLAPIENTRY __stdcall
|
|
# endif
|
|
#elif defined(__CYGWIN__) && defined(USE_OPENGL32) /* use native windows opengl32 */
|
|
# define GLAPI extern
|
|
# define GLAPIENTRY __stdcall
|
|
#elif (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590))
|
|
# define GLAPI __attribute__((visibility("default")))
|
|
# define GLAPIENTRY
|
|
#endif /* WIN32 && !CYGWIN */
|
|
|
|
/*
|
|
* WINDOWS: Include windows.h here to define APIENTRY.
|
|
* It is also useful when applications include this file by
|
|
* including only glut.h, since glut.h depends on windows.h.
|
|
* Applications needing to include windows.h with parms other
|
|
* than "WIN32_LEAN_AND_MEAN" may include windows.h before
|
|
* glut.h or gl.h.
|
|
*/
|
|
#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__)
|
|
#ifndef WIN32_LEAN_AND_MEAN
|
|
#define WIN32_LEAN_AND_MEAN 1
|
|
#endif
|
|
#ifndef NOMINMAX /* don't define min() and max(). */
|
|
#define NOMINMAX
|
|
#endif
|
|
#include <windows.h>
|
|
#endif
|
|
|
|
#ifndef GLAPI
|
|
#define GLAPI extern
|
|
#endif
|
|
|
|
#ifndef GLAPIENTRY
|
|
#define GLAPIENTRY
|
|
#endif
|
|
|
|
#ifndef APIENTRY
|
|
#define APIENTRY GLAPIENTRY
|
|
#endif
|
|
|
|
/* "P" suffix to be used for a pointer to a function */
|
|
#ifndef APIENTRYP
|
|
#define APIENTRYP APIENTRY *
|
|
#endif
|
|
|
|
#ifndef GLAPIENTRYP
|
|
#define GLAPIENTRYP GLAPIENTRY *
|
|
#endif
|
|
|
|
#if defined(PRAGMA_EXPORT_SUPPORTED)
|
|
#pragma export on
|
|
#endif
|
|
|
|
/*
|
|
* End system-specific stuff.
|
|
**********************************************************************/
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
|
|
|
|
#define GL_VERSION_1_1 1
|
|
#define GL_VERSION_1_2 1
|
|
#define GL_VERSION_1_3 1
|
|
#define GL_ARB_imaging 1
|
|
|
|
|
|
/*
|
|
* Datatypes
|
|
*/
|
|
typedef unsigned int GLenum;
|
|
typedef unsigned char GLboolean;
|
|
typedef unsigned int GLbitfield;
|
|
typedef void GLvoid;
|
|
typedef signed char GLbyte; /* 1-byte signed */
|
|
typedef short GLshort; /* 2-byte signed */
|
|
typedef int GLint; /* 4-byte signed */
|
|
typedef unsigned char GLubyte; /* 1-byte unsigned */
|
|
typedef unsigned short GLushort; /* 2-byte unsigned */
|
|
typedef unsigned int GLuint; /* 4-byte unsigned */
|
|
typedef int GLsizei; /* 4-byte signed */
|
|
typedef float GLfloat; /* single precision float */
|
|
typedef float GLclampf; /* single precision float in [0,1] */
|
|
typedef double GLdouble; /* double precision float */
|
|
typedef double GLclampd; /* double precision float in [0,1] */
|
|
|
|
|
|
|
|
/*
|
|
* Constants
|
|
*/
|
|
|
|
/* Boolean values */
|
|
#define GL_FALSE 0
|
|
#define GL_TRUE 1
|
|
|
|
/* Data types */
|
|
#define GL_BYTE 0x1400
|
|
#define GL_UNSIGNED_BYTE 0x1401
|
|
#define GL_SHORT 0x1402
|
|
#define GL_UNSIGNED_SHORT 0x1403
|
|
#define GL_INT 0x1404
|
|
#define GL_UNSIGNED_INT 0x1405
|
|
#define GL_FLOAT 0x1406
|
|
#define GL_2_BYTES 0x1407
|
|
#define GL_3_BYTES 0x1408
|
|
#define GL_4_BYTES 0x1409
|
|
#define GL_DOUBLE 0x140A
|
|
|
|
/* Primitives */
|
|
#define GL_POINTS 0x0000
|
|
#define GL_LINES 0x0001
|
|
#define GL_LINE_LOOP 0x0002
|
|
#define GL_LINE_STRIP 0x0003
|
|
#define GL_TRIANGLES 0x0004
|
|
#define GL_TRIANGLE_STRIP 0x0005
|
|
#define GL_TRIANGLE_FAN 0x0006
|
|
#define GL_QUADS 0x0007
|
|
#define GL_QUAD_STRIP 0x0008
|
|
#define GL_POLYGON 0x0009
|
|
|
|
/* Vertex Arrays */
|
|
#define GL_VERTEX_ARRAY 0x8074
|
|
#define GL_NORMAL_ARRAY 0x8075
|
|
#define GL_COLOR_ARRAY 0x8076
|
|
#define GL_INDEX_ARRAY 0x8077
|
|
#define GL_TEXTURE_COORD_ARRAY 0x8078
|
|
#define GL_EDGE_FLAG_ARRAY 0x8079
|
|
#define GL_VERTEX_ARRAY_SIZE 0x807A
|
|
#define GL_VERTEX_ARRAY_TYPE 0x807B
|
|
#define GL_VERTEX_ARRAY_STRIDE 0x807C
|
|
#define GL_NORMAL_ARRAY_TYPE 0x807E
|
|
#define GL_NORMAL_ARRAY_STRIDE 0x807F
|
|
#define GL_COLOR_ARRAY_SIZE 0x8081
|
|
#define GL_COLOR_ARRAY_TYPE 0x8082
|
|
#define GL_COLOR_ARRAY_STRIDE 0x8083
|
|
#define GL_INDEX_ARRAY_TYPE 0x8085
|
|
#define GL_INDEX_ARRAY_STRIDE 0x8086
|
|
#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088
|
|
#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089
|
|
#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A
|
|
#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C
|
|
#define GL_VERTEX_ARRAY_POINTER 0x808E
|
|
#define GL_NORMAL_ARRAY_POINTER 0x808F
|
|
#define GL_COLOR_ARRAY_POINTER 0x8090
|
|
#define GL_INDEX_ARRAY_POINTER 0x8091
|
|
#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092
|
|
#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093
|
|
#define GL_V2F 0x2A20
|
|
#define GL_V3F 0x2A21
|
|
#define GL_C4UB_V2F 0x2A22
|
|
#define GL_C4UB_V3F 0x2A23
|
|
#define GL_C3F_V3F 0x2A24
|
|
#define GL_N3F_V3F 0x2A25
|
|
#define GL_C4F_N3F_V3F 0x2A26
|
|
#define GL_T2F_V3F 0x2A27
|
|
#define GL_T4F_V4F 0x2A28
|
|
#define GL_T2F_C4UB_V3F 0x2A29
|
|
#define GL_T2F_C3F_V3F 0x2A2A
|
|
#define GL_T2F_N3F_V3F 0x2A2B
|
|
#define GL_T2F_C4F_N3F_V3F 0x2A2C
|
|
#define GL_T4F_C4F_N3F_V4F 0x2A2D
|
|
|
|
/* Matrix Mode */
|
|
#define GL_MATRIX_MODE 0x0BA0
|
|
#define GL_MODELVIEW 0x1700
|
|
#define GL_PROJECTION 0x1701
|
|
#define GL_TEXTURE 0x1702
|
|
|
|
/* Points */
|
|
#define GL_POINT_SMOOTH 0x0B10
|
|
#define GL_POINT_SIZE 0x0B11
|
|
#define GL_POINT_SIZE_GRANULARITY 0x0B13
|
|
#define GL_POINT_SIZE_RANGE 0x0B12
|
|
|
|
/* Lines */
|
|
#define GL_LINE_SMOOTH 0x0B20
|
|
#define GL_LINE_STIPPLE 0x0B24
|
|
#define GL_LINE_STIPPLE_PATTERN 0x0B25
|
|
#define GL_LINE_STIPPLE_REPEAT 0x0B26
|
|
#define GL_LINE_WIDTH 0x0B21
|
|
#define GL_LINE_WIDTH_GRANULARITY 0x0B23
|
|
#define GL_LINE_WIDTH_RANGE 0x0B22
|
|
|
|
/* Polygons */
|
|
#define GL_POINT 0x1B00
|
|
#define GL_LINE 0x1B01
|
|
#define GL_FILL 0x1B02
|
|
#define GL_CW 0x0900
|
|
#define GL_CCW 0x0901
|
|
#define GL_FRONT 0x0404
|
|
#define GL_BACK 0x0405
|
|
#define GL_POLYGON_MODE 0x0B40
|
|
#define GL_POLYGON_SMOOTH 0x0B41
|
|
#define GL_POLYGON_STIPPLE 0x0B42
|
|
#define GL_EDGE_FLAG 0x0B43
|
|
#define GL_CULL_FACE 0x0B44
|
|
#define GL_CULL_FACE_MODE 0x0B45
|
|
#define GL_FRONT_FACE 0x0B46
|
|
#define GL_POLYGON_OFFSET_FACTOR 0x8038
|
|
#define GL_POLYGON_OFFSET_UNITS 0x2A00
|
|
#define GL_POLYGON_OFFSET_POINT 0x2A01
|
|
#define GL_POLYGON_OFFSET_LINE 0x2A02
|
|
#define GL_POLYGON_OFFSET_FILL 0x8037
|
|
|
|
/* Display Lists */
|
|
#define GL_COMPILE 0x1300
|
|
#define GL_COMPILE_AND_EXECUTE 0x1301
|
|
#define GL_LIST_BASE 0x0B32
|
|
#define GL_LIST_INDEX 0x0B33
|
|
#define GL_LIST_MODE 0x0B30
|
|
|
|
/* Depth buffer */
|
|
#define GL_NEVER 0x0200
|
|
#define GL_LESS 0x0201
|
|
#define GL_EQUAL 0x0202
|
|
#define GL_LEQUAL 0x0203
|
|
#define GL_GREATER 0x0204
|
|
#define GL_NOTEQUAL 0x0205
|
|
#define GL_GEQUAL 0x0206
|
|
#define GL_ALWAYS 0x0207
|
|
#define GL_DEPTH_TEST 0x0B71
|
|
#define GL_DEPTH_BITS 0x0D56
|
|
#define GL_DEPTH_CLEAR_VALUE 0x0B73
|
|
#define GL_DEPTH_FUNC 0x0B74
|
|
#define GL_DEPTH_RANGE 0x0B70
|
|
#define GL_DEPTH_WRITEMASK 0x0B72
|
|
#define GL_DEPTH_COMPONENT 0x1902
|
|
|
|
/* Lighting */
|
|
#define GL_LIGHTING 0x0B50
|
|
#define GL_LIGHT0 0x4000
|
|
#define GL_LIGHT1 0x4001
|
|
#define GL_LIGHT2 0x4002
|
|
#define GL_LIGHT3 0x4003
|
|
#define GL_LIGHT4 0x4004
|
|
#define GL_LIGHT5 0x4005
|
|
#define GL_LIGHT6 0x4006
|
|
#define GL_LIGHT7 0x4007
|
|
#define GL_SPOT_EXPONENT 0x1205
|
|
#define GL_SPOT_CUTOFF 0x1206
|
|
#define GL_CONSTANT_ATTENUATION 0x1207
|
|
#define GL_LINEAR_ATTENUATION 0x1208
|
|
#define GL_QUADRATIC_ATTENUATION 0x1209
|
|
#define GL_AMBIENT 0x1200
|
|
#define GL_DIFFUSE 0x1201
|
|
#define GL_SPECULAR 0x1202
|
|
#define GL_SHININESS 0x1601
|
|
#define GL_EMISSION 0x1600
|
|
#define GL_POSITION 0x1203
|
|
#define GL_SPOT_DIRECTION 0x1204
|
|
#define GL_AMBIENT_AND_DIFFUSE 0x1602
|
|
#define GL_COLOR_INDEXES 0x1603
|
|
#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52
|
|
#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51
|
|
#define GL_LIGHT_MODEL_AMBIENT 0x0B53
|
|
#define GL_FRONT_AND_BACK 0x0408
|
|
#define GL_SHADE_MODEL 0x0B54
|
|
#define GL_FLAT 0x1D00
|
|
#define GL_SMOOTH 0x1D01
|
|
#define GL_COLOR_MATERIAL 0x0B57
|
|
#define GL_COLOR_MATERIAL_FACE 0x0B55
|
|
#define GL_COLOR_MATERIAL_PARAMETER 0x0B56
|
|
#define GL_NORMALIZE 0x0BA1
|
|
|
|
/* User clipping planes */
|
|
#define GL_CLIP_PLANE0 0x3000
|
|
#define GL_CLIP_PLANE1 0x3001
|
|
#define GL_CLIP_PLANE2 0x3002
|
|
#define GL_CLIP_PLANE3 0x3003
|
|
#define GL_CLIP_PLANE4 0x3004
|
|
#define GL_CLIP_PLANE5 0x3005
|
|
|
|
/* Accumulation buffer */
|
|
#define GL_ACCUM_RED_BITS 0x0D58
|
|
#define GL_ACCUM_GREEN_BITS 0x0D59
|
|
#define GL_ACCUM_BLUE_BITS 0x0D5A
|
|
#define GL_ACCUM_ALPHA_BITS 0x0D5B
|
|
#define GL_ACCUM_CLEAR_VALUE 0x0B80
|
|
#define GL_ACCUM 0x0100
|
|
#define GL_ADD 0x0104
|
|
#define GL_LOAD 0x0101
|
|
#define GL_MULT 0x0103
|
|
#define GL_RETURN 0x0102
|
|
|
|
/* Alpha testing */
|
|
#define GL_ALPHA_TEST 0x0BC0
|
|
#define GL_ALPHA_TEST_REF 0x0BC2
|
|
#define GL_ALPHA_TEST_FUNC 0x0BC1
|
|
|
|
/* Blending */
|
|
#define GL_BLEND 0x0BE2
|
|
#define GL_BLEND_SRC 0x0BE1
|
|
#define GL_BLEND_DST 0x0BE0
|
|
#define GL_ZERO 0
|
|
#define GL_ONE 1
|
|
#define GL_SRC_COLOR 0x0300
|
|
#define GL_ONE_MINUS_SRC_COLOR 0x0301
|
|
#define GL_SRC_ALPHA 0x0302
|
|
#define GL_ONE_MINUS_SRC_ALPHA 0x0303
|
|
#define GL_DST_ALPHA 0x0304
|
|
#define GL_ONE_MINUS_DST_ALPHA 0x0305
|
|
#define GL_DST_COLOR 0x0306
|
|
#define GL_ONE_MINUS_DST_COLOR 0x0307
|
|
#define GL_SRC_ALPHA_SATURATE 0x0308
|
|
|
|
/* Render Mode */
|
|
#define GL_FEEDBACK 0x1C01
|
|
#define GL_RENDER 0x1C00
|
|
#define GL_SELECT 0x1C02
|
|
|
|
/* Feedback */
|
|
#define GL_2D 0x0600
|
|
#define GL_3D 0x0601
|
|
#define GL_3D_COLOR 0x0602
|
|
#define GL_3D_COLOR_TEXTURE 0x0603
|
|
#define GL_4D_COLOR_TEXTURE 0x0604
|
|
#define GL_POINT_TOKEN 0x0701
|
|
#define GL_LINE_TOKEN 0x0702
|
|
#define GL_LINE_RESET_TOKEN 0x0707
|
|
#define GL_POLYGON_TOKEN 0x0703
|
|
#define GL_BITMAP_TOKEN 0x0704
|
|
#define GL_DRAW_PIXEL_TOKEN 0x0705
|
|
#define GL_COPY_PIXEL_TOKEN 0x0706
|
|
#define GL_PASS_THROUGH_TOKEN 0x0700
|
|
#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0
|
|
#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1
|
|
#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2
|
|
|
|
/* Selection */
|
|
#define GL_SELECTION_BUFFER_POINTER 0x0DF3
|
|
#define GL_SELECTION_BUFFER_SIZE 0x0DF4
|
|
|
|
/* Fog */
|
|
#define GL_FOG 0x0B60
|
|
#define GL_FOG_MODE 0x0B65
|
|
#define GL_FOG_DENSITY 0x0B62
|
|
#define GL_FOG_COLOR 0x0B66
|
|
#define GL_FOG_INDEX 0x0B61
|
|
#define GL_FOG_START 0x0B63
|
|
#define GL_FOG_END 0x0B64
|
|
#define GL_LINEAR 0x2601
|
|
#define GL_EXP 0x0800
|
|
#define GL_EXP2 0x0801
|
|
|
|
/* Logic Ops */
|
|
#define GL_LOGIC_OP 0x0BF1
|
|
#define GL_INDEX_LOGIC_OP 0x0BF1
|
|
#define GL_COLOR_LOGIC_OP 0x0BF2
|
|
#define GL_LOGIC_OP_MODE 0x0BF0
|
|
#define GL_CLEAR 0x1500
|
|
#define GL_SET 0x150F
|
|
#define GL_COPY 0x1503
|
|
#define GL_COPY_INVERTED 0x150C
|
|
#define GL_NOOP 0x1505
|
|
#define GL_INVERT 0x150A
|
|
#define GL_AND 0x1501
|
|
#define GL_NAND 0x150E
|
|
#define GL_OR 0x1507
|
|
#define GL_NOR 0x1508
|
|
#define GL_XOR 0x1506
|
|
#define GL_EQUIV 0x1509
|
|
#define GL_AND_REVERSE 0x1502
|
|
#define GL_AND_INVERTED 0x1504
|
|
#define GL_OR_REVERSE 0x150B
|
|
#define GL_OR_INVERTED 0x150D
|
|
|
|
/* Stencil */
|
|
#define GL_STENCIL_BITS 0x0D57
|
|
#define GL_STENCIL_TEST 0x0B90
|
|
#define GL_STENCIL_CLEAR_VALUE 0x0B91
|
|
#define GL_STENCIL_FUNC 0x0B92
|
|
#define GL_STENCIL_VALUE_MASK 0x0B93
|
|
#define GL_STENCIL_FAIL 0x0B94
|
|
#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
|
|
#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
|
|
#define GL_STENCIL_REF 0x0B97
|
|
#define GL_STENCIL_WRITEMASK 0x0B98
|
|
#define GL_STENCIL_INDEX 0x1901
|
|
#define GL_KEEP 0x1E00
|
|
#define GL_REPLACE 0x1E01
|
|
#define GL_INCR 0x1E02
|
|
#define GL_DECR 0x1E03
|
|
|
|
/* Buffers, Pixel Drawing/Reading */
|
|
#define GL_NONE 0
|
|
#define GL_LEFT 0x0406
|
|
#define GL_RIGHT 0x0407
|
|
/*GL_FRONT 0x0404 */
|
|
/*GL_BACK 0x0405 */
|
|
/*GL_FRONT_AND_BACK 0x0408 */
|
|
#define GL_FRONT_LEFT 0x0400
|
|
#define GL_FRONT_RIGHT 0x0401
|
|
#define GL_BACK_LEFT 0x0402
|
|
#define GL_BACK_RIGHT 0x0403
|
|
#define GL_AUX0 0x0409
|
|
#define GL_AUX1 0x040A
|
|
#define GL_AUX2 0x040B
|
|
#define GL_AUX3 0x040C
|
|
#define GL_COLOR_INDEX 0x1900
|
|
#define GL_RED 0x1903
|
|
#define GL_GREEN 0x1904
|
|
#define GL_BLUE 0x1905
|
|
#define GL_ALPHA 0x1906
|
|
#define GL_LUMINANCE 0x1909
|
|
#define GL_LUMINANCE_ALPHA 0x190A
|
|
#define GL_ALPHA_BITS 0x0D55
|
|
#define GL_RED_BITS 0x0D52
|
|
#define GL_GREEN_BITS 0x0D53
|
|
#define GL_BLUE_BITS 0x0D54
|
|
#define GL_INDEX_BITS 0x0D51
|
|
#define GL_SUBPIXEL_BITS 0x0D50
|
|
#define GL_AUX_BUFFERS 0x0C00
|
|
#define GL_READ_BUFFER 0x0C02
|
|
#define GL_DRAW_BUFFER 0x0C01
|
|
#define GL_DOUBLEBUFFER 0x0C32
|
|
#define GL_STEREO 0x0C33
|
|
#define GL_BITMAP 0x1A00
|
|
#define GL_COLOR 0x1800
|
|
#define GL_DEPTH 0x1801
|
|
#define GL_STENCIL 0x1802
|
|
#define GL_DITHER 0x0BD0
|
|
#define GL_RGB 0x1907
|
|
#define GL_RGBA 0x1908
|
|
|
|
/* Implementation limits */
|
|
#define GL_MAX_LIST_NESTING 0x0B31
|
|
#define GL_MAX_EVAL_ORDER 0x0D30
|
|
#define GL_MAX_LIGHTS 0x0D31
|
|
#define GL_MAX_CLIP_PLANES 0x0D32
|
|
#define GL_MAX_TEXTURE_SIZE 0x0D33
|
|
#define GL_MAX_PIXEL_MAP_TABLE 0x0D34
|
|
#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
|
|
#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
|
|
#define GL_MAX_NAME_STACK_DEPTH 0x0D37
|
|
#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
|
|
#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
|
|
#define GL_MAX_VIEWPORT_DIMS 0x0D3A
|
|
#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
|
|
|
|
/* Gets */
|
|
#define GL_ATTRIB_STACK_DEPTH 0x0BB0
|
|
#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
|
|
#define GL_COLOR_CLEAR_VALUE 0x0C22
|
|
#define GL_COLOR_WRITEMASK 0x0C23
|
|
#define GL_CURRENT_INDEX 0x0B01
|
|
#define GL_CURRENT_COLOR 0x0B00
|
|
#define GL_CURRENT_NORMAL 0x0B02
|
|
#define GL_CURRENT_RASTER_COLOR 0x0B04
|
|
#define GL_CURRENT_RASTER_DISTANCE 0x0B09
|
|
#define GL_CURRENT_RASTER_INDEX 0x0B05
|
|
#define GL_CURRENT_RASTER_POSITION 0x0B07
|
|
#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
|
|
#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
|
|
#define GL_CURRENT_TEXTURE_COORDS 0x0B03
|
|
#define GL_INDEX_CLEAR_VALUE 0x0C20
|
|
#define GL_INDEX_MODE 0x0C30
|
|
#define GL_INDEX_WRITEMASK 0x0C21
|
|
#define GL_MODELVIEW_MATRIX 0x0BA6
|
|
#define GL_MODELVIEW_STACK_DEPTH 0x0BA3
|
|
#define GL_NAME_STACK_DEPTH 0x0D70
|
|
#define GL_PROJECTION_MATRIX 0x0BA7
|
|
#define GL_PROJECTION_STACK_DEPTH 0x0BA4
|
|
#define GL_RENDER_MODE 0x0C40
|
|
#define GL_RGBA_MODE 0x0C31
|
|
#define GL_TEXTURE_MATRIX 0x0BA8
|
|
#define GL_TEXTURE_STACK_DEPTH 0x0BA5
|
|
#define GL_VIEWPORT 0x0BA2
|
|
|
|
/* Evaluators */
|
|
#define GL_AUTO_NORMAL 0x0D80
|
|
#define GL_MAP1_COLOR_4 0x0D90
|
|
#define GL_MAP1_INDEX 0x0D91
|
|
#define GL_MAP1_NORMAL 0x0D92
|
|
#define GL_MAP1_TEXTURE_COORD_1 0x0D93
|
|
#define GL_MAP1_TEXTURE_COORD_2 0x0D94
|
|
#define GL_MAP1_TEXTURE_COORD_3 0x0D95
|
|
#define GL_MAP1_TEXTURE_COORD_4 0x0D96
|
|
#define GL_MAP1_VERTEX_3 0x0D97
|
|
#define GL_MAP1_VERTEX_4 0x0D98
|
|
#define GL_MAP2_COLOR_4 0x0DB0
|
|
#define GL_MAP2_INDEX 0x0DB1
|
|
#define GL_MAP2_NORMAL 0x0DB2
|
|
#define GL_MAP2_TEXTURE_COORD_1 0x0DB3
|
|
#define GL_MAP2_TEXTURE_COORD_2 0x0DB4
|
|
#define GL_MAP2_TEXTURE_COORD_3 0x0DB5
|
|
#define GL_MAP2_TEXTURE_COORD_4 0x0DB6
|
|
#define GL_MAP2_VERTEX_3 0x0DB7
|
|
#define GL_MAP2_VERTEX_4 0x0DB8
|
|
#define GL_MAP1_GRID_DOMAIN 0x0DD0
|
|
#define GL_MAP1_GRID_SEGMENTS 0x0DD1
|
|
#define GL_MAP2_GRID_DOMAIN 0x0DD2
|
|
#define GL_MAP2_GRID_SEGMENTS 0x0DD3
|
|
#define GL_COEFF 0x0A00
|
|
#define GL_ORDER 0x0A01
|
|
#define GL_DOMAIN 0x0A02
|
|
|
|
/* Hints */
|
|
#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
|
|
#define GL_POINT_SMOOTH_HINT 0x0C51
|
|
#define GL_LINE_SMOOTH_HINT 0x0C52
|
|
#define GL_POLYGON_SMOOTH_HINT 0x0C53
|
|
#define GL_FOG_HINT 0x0C54
|
|
#define GL_DONT_CARE 0x1100
|
|
#define GL_FASTEST 0x1101
|
|
#define GL_NICEST 0x1102
|
|
|
|
/* Scissor box */
|
|
#define GL_SCISSOR_BOX 0x0C10
|
|
#define GL_SCISSOR_TEST 0x0C11
|
|
|
|
/* Pixel Mode / Transfer */
|
|
#define GL_MAP_COLOR 0x0D10
|
|
#define GL_MAP_STENCIL 0x0D11
|
|
#define GL_INDEX_SHIFT 0x0D12
|
|
#define GL_INDEX_OFFSET 0x0D13
|
|
#define GL_RED_SCALE 0x0D14
|
|
#define GL_RED_BIAS 0x0D15
|
|
#define GL_GREEN_SCALE 0x0D18
|
|
#define GL_GREEN_BIAS 0x0D19
|
|
#define GL_BLUE_SCALE 0x0D1A
|
|
#define GL_BLUE_BIAS 0x0D1B
|
|
#define GL_ALPHA_SCALE 0x0D1C
|
|
#define GL_ALPHA_BIAS 0x0D1D
|
|
#define GL_DEPTH_SCALE 0x0D1E
|
|
#define GL_DEPTH_BIAS 0x0D1F
|
|
#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
|
|
#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
|
|
#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
|
|
#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
|
|
#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4
|
|
#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5
|
|
#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6
|
|
#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7
|
|
#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8
|
|
#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9
|
|
#define GL_PIXEL_MAP_S_TO_S 0x0C71
|
|
#define GL_PIXEL_MAP_I_TO_I 0x0C70
|
|
#define GL_PIXEL_MAP_I_TO_R 0x0C72
|
|
#define GL_PIXEL_MAP_I_TO_G 0x0C73
|
|
#define GL_PIXEL_MAP_I_TO_B 0x0C74
|
|
#define GL_PIXEL_MAP_I_TO_A 0x0C75
|
|
#define GL_PIXEL_MAP_R_TO_R 0x0C76
|
|
#define GL_PIXEL_MAP_G_TO_G 0x0C77
|
|
#define GL_PIXEL_MAP_B_TO_B 0x0C78
|
|
#define GL_PIXEL_MAP_A_TO_A 0x0C79
|
|
#define GL_PACK_ALIGNMENT 0x0D05
|
|
#define GL_PACK_LSB_FIRST 0x0D01
|
|
#define GL_PACK_ROW_LENGTH 0x0D02
|
|
#define GL_PACK_SKIP_PIXELS 0x0D04
|
|
#define GL_PACK_SKIP_ROWS 0x0D03
|
|
#define GL_PACK_SWAP_BYTES 0x0D00
|
|
#define GL_UNPACK_ALIGNMENT 0x0CF5
|
|
#define GL_UNPACK_LSB_FIRST 0x0CF1
|
|
#define GL_UNPACK_ROW_LENGTH 0x0CF2
|
|
#define GL_UNPACK_SKIP_PIXELS 0x0CF4
|
|
#define GL_UNPACK_SKIP_ROWS 0x0CF3
|
|
#define GL_UNPACK_SWAP_BYTES 0x0CF0
|
|
#define GL_ZOOM_X 0x0D16
|
|
#define GL_ZOOM_Y 0x0D17
|
|
|
|
/* Texture mapping */
|
|
#define GL_TEXTURE_ENV 0x2300
|
|
#define GL_TEXTURE_ENV_MODE 0x2200
|
|
#define GL_TEXTURE_1D 0x0DE0
|
|
#define GL_TEXTURE_2D 0x0DE1
|
|
#define GL_TEXTURE_WRAP_S 0x2802
|
|
#define GL_TEXTURE_WRAP_T 0x2803
|
|
#define GL_TEXTURE_MAG_FILTER 0x2800
|
|
#define GL_TEXTURE_MIN_FILTER 0x2801
|
|
#define GL_TEXTURE_ENV_COLOR 0x2201
|
|
#define GL_TEXTURE_GEN_S 0x0C60
|
|
#define GL_TEXTURE_GEN_T 0x0C61
|
|
#define GL_TEXTURE_GEN_R 0x0C62
|
|
#define GL_TEXTURE_GEN_Q 0x0C63
|
|
#define GL_TEXTURE_GEN_MODE 0x2500
|
|
#define GL_TEXTURE_BORDER_COLOR 0x1004
|
|
#define GL_TEXTURE_WIDTH 0x1000
|
|
#define GL_TEXTURE_HEIGHT 0x1001
|
|
#define GL_TEXTURE_BORDER 0x1005
|
|
#define GL_TEXTURE_COMPONENTS 0x1003
|
|
#define GL_TEXTURE_RED_SIZE 0x805C
|
|
#define GL_TEXTURE_GREEN_SIZE 0x805D
|
|
#define GL_TEXTURE_BLUE_SIZE 0x805E
|
|
#define GL_TEXTURE_ALPHA_SIZE 0x805F
|
|
#define GL_TEXTURE_LUMINANCE_SIZE 0x8060
|
|
#define GL_TEXTURE_INTENSITY_SIZE 0x8061
|
|
#define GL_NEAREST_MIPMAP_NEAREST 0x2700
|
|
#define GL_NEAREST_MIPMAP_LINEAR 0x2702
|
|
#define GL_LINEAR_MIPMAP_NEAREST 0x2701
|
|
#define GL_LINEAR_MIPMAP_LINEAR 0x2703
|
|
#define GL_OBJECT_LINEAR 0x2401
|
|
#define GL_OBJECT_PLANE 0x2501
|
|
#define GL_EYE_LINEAR 0x2400
|
|
#define GL_EYE_PLANE 0x2502
|
|
#define GL_SPHERE_MAP 0x2402
|
|
#define GL_DECAL 0x2101
|
|
#define GL_MODULATE 0x2100
|
|
#define GL_NEAREST 0x2600
|
|
#define GL_REPEAT 0x2901
|
|
#define GL_CLAMP 0x2900
|
|
#define GL_S 0x2000
|
|
#define GL_T 0x2001
|
|
#define GL_R 0x2002
|
|
#define GL_Q 0x2003
|
|
|
|
/* Utility */
|
|
#define GL_VENDOR 0x1F00
|
|
#define GL_RENDERER 0x1F01
|
|
#define GL_VERSION 0x1F02
|
|
#define GL_EXTENSIONS 0x1F03
|
|
|
|
/* Errors */
|
|
#define GL_NO_ERROR 0
|
|
#define GL_INVALID_ENUM 0x0500
|
|
#define GL_INVALID_VALUE 0x0501
|
|
#define GL_INVALID_OPERATION 0x0502
|
|
#define GL_STACK_OVERFLOW 0x0503
|
|
#define GL_STACK_UNDERFLOW 0x0504
|
|
#define GL_OUT_OF_MEMORY 0x0505
|
|
|
|
/* glPush/PopAttrib bits */
|
|
#define GL_CURRENT_BIT 0x00000001
|
|
#define GL_POINT_BIT 0x00000002
|
|
#define GL_LINE_BIT 0x00000004
|
|
#define GL_POLYGON_BIT 0x00000008
|
|
#define GL_POLYGON_STIPPLE_BIT 0x00000010
|
|
#define GL_PIXEL_MODE_BIT 0x00000020
|
|
#define GL_LIGHTING_BIT 0x00000040
|
|
#define GL_FOG_BIT 0x00000080
|
|
#define GL_DEPTH_BUFFER_BIT 0x00000100
|
|
#define GL_ACCUM_BUFFER_BIT 0x00000200
|
|
#define GL_STENCIL_BUFFER_BIT 0x00000400
|
|
#define GL_VIEWPORT_BIT 0x00000800
|
|
#define GL_TRANSFORM_BIT 0x00001000
|
|
#define GL_ENABLE_BIT 0x00002000
|
|
#define GL_COLOR_BUFFER_BIT 0x00004000
|
|
#define GL_HINT_BIT 0x00008000
|
|
#define GL_EVAL_BIT 0x00010000
|
|
#define GL_LIST_BIT 0x00020000
|
|
#define GL_TEXTURE_BIT 0x00040000
|
|
#define GL_SCISSOR_BIT 0x00080000
|
|
#define GL_ALL_ATTRIB_BITS 0x000FFFFF
|
|
|
|
|
|
/* OpenGL 1.1 */
|
|
#define GL_PROXY_TEXTURE_1D 0x8063
|
|
#define GL_PROXY_TEXTURE_2D 0x8064
|
|
#define GL_TEXTURE_PRIORITY 0x8066
|
|
#define GL_TEXTURE_RESIDENT 0x8067
|
|
#define GL_TEXTURE_BINDING_1D 0x8068
|
|
#define GL_TEXTURE_BINDING_2D 0x8069
|
|
#define GL_TEXTURE_INTERNAL_FORMAT 0x1003
|
|
#define GL_ALPHA4 0x803B
|
|
#define GL_ALPHA8 0x803C
|
|
#define GL_ALPHA12 0x803D
|
|
#define GL_ALPHA16 0x803E
|
|
#define GL_LUMINANCE4 0x803F
|
|
#define GL_LUMINANCE8 0x8040
|
|
#define GL_LUMINANCE12 0x8041
|
|
#define GL_LUMINANCE16 0x8042
|
|
#define GL_LUMINANCE4_ALPHA4 0x8043
|
|
#define GL_LUMINANCE6_ALPHA2 0x8044
|
|
#define GL_LUMINANCE8_ALPHA8 0x8045
|
|
#define GL_LUMINANCE12_ALPHA4 0x8046
|
|
#define GL_LUMINANCE12_ALPHA12 0x8047
|
|
#define GL_LUMINANCE16_ALPHA16 0x8048
|
|
#define GL_INTENSITY 0x8049
|
|
#define GL_INTENSITY4 0x804A
|
|
#define GL_INTENSITY8 0x804B
|
|
#define GL_INTENSITY12 0x804C
|
|
#define GL_INTENSITY16 0x804D
|
|
#define GL_R3_G3_B2 0x2A10
|
|
#define GL_RGB4 0x804F
|
|
#define GL_RGB5 0x8050
|
|
#define GL_RGB8 0x8051
|
|
#define GL_RGB10 0x8052
|
|
#define GL_RGB12 0x8053
|
|
#define GL_RGB16 0x8054
|
|
#define GL_RGBA2 0x8055
|
|
#define GL_RGBA4 0x8056
|
|
#define GL_RGB5_A1 0x8057
|
|
#define GL_RGBA8 0x8058
|
|
#define GL_RGB10_A2 0x8059
|
|
#define GL_RGBA12 0x805A
|
|
#define GL_RGBA16 0x805B
|
|
#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
|
|
#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
|
|
#define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF
|
|
#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF
|
|
|
|
|
|
|
|
/*
|
|
* Miscellaneous
|
|
*/
|
|
|
|
#ifndef SDL_OPENGL_1_NO_PROTOTYPES
|
|
GLAPI void GLAPIENTRY glClearIndex( GLfloat c );
|
|
|
|
GLAPI void GLAPIENTRY glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha );
|
|
|
|
GLAPI void GLAPIENTRY glClear( GLbitfield mask );
|
|
|
|
GLAPI void GLAPIENTRY glIndexMask( GLuint mask );
|
|
|
|
GLAPI void GLAPIENTRY glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha );
|
|
|
|
GLAPI void GLAPIENTRY glAlphaFunc( GLenum func, GLclampf ref );
|
|
|
|
GLAPI void GLAPIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor );
|
|
|
|
GLAPI void GLAPIENTRY glLogicOp( GLenum opcode );
|
|
|
|
GLAPI void GLAPIENTRY glCullFace( GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glFrontFace( GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glPointSize( GLfloat size );
|
|
|
|
GLAPI void GLAPIENTRY glLineWidth( GLfloat width );
|
|
|
|
GLAPI void GLAPIENTRY glLineStipple( GLint factor, GLushort pattern );
|
|
|
|
GLAPI void GLAPIENTRY glPolygonMode( GLenum face, GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glPolygonOffset( GLfloat factor, GLfloat units );
|
|
|
|
GLAPI void GLAPIENTRY glPolygonStipple( const GLubyte *mask );
|
|
|
|
GLAPI void GLAPIENTRY glGetPolygonStipple( GLubyte *mask );
|
|
|
|
GLAPI void GLAPIENTRY glEdgeFlag( GLboolean flag );
|
|
|
|
GLAPI void GLAPIENTRY glEdgeFlagv( const GLboolean *flag );
|
|
|
|
GLAPI void GLAPIENTRY glScissor( GLint x, GLint y, GLsizei width, GLsizei height);
|
|
|
|
GLAPI void GLAPIENTRY glClipPlane( GLenum plane, const GLdouble *equation );
|
|
|
|
GLAPI void GLAPIENTRY glGetClipPlane( GLenum plane, GLdouble *equation );
|
|
|
|
GLAPI void GLAPIENTRY glDrawBuffer( GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glReadBuffer( GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glEnable( GLenum cap );
|
|
|
|
GLAPI void GLAPIENTRY glDisable( GLenum cap );
|
|
|
|
GLAPI GLboolean GLAPIENTRY glIsEnabled( GLenum cap );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glEnableClientState( GLenum cap ); /* 1.1 */
|
|
|
|
GLAPI void GLAPIENTRY glDisableClientState( GLenum cap ); /* 1.1 */
|
|
|
|
|
|
GLAPI void GLAPIENTRY glGetBooleanv( GLenum pname, GLboolean *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetDoublev( GLenum pname, GLdouble *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask );
|
|
|
|
GLAPI void GLAPIENTRY glPopAttrib( void );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */
|
|
|
|
GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */
|
|
|
|
|
|
GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode );
|
|
|
|
GLAPI GLenum GLAPIENTRY glGetError( void );
|
|
|
|
GLAPI const GLubyte * GLAPIENTRY glGetString( GLenum name );
|
|
|
|
GLAPI void GLAPIENTRY glFinish( void );
|
|
|
|
GLAPI void GLAPIENTRY glFlush( void );
|
|
|
|
GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode );
|
|
|
|
|
|
/*
|
|
* Depth Buffer
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glClearDepth( GLclampd depth );
|
|
|
|
GLAPI void GLAPIENTRY glDepthFunc( GLenum func );
|
|
|
|
GLAPI void GLAPIENTRY glDepthMask( GLboolean flag );
|
|
|
|
GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val );
|
|
|
|
|
|
/*
|
|
* Accumulation Buffer
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha );
|
|
|
|
GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value );
|
|
|
|
|
|
/*
|
|
* Transformation
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glMatrixMode( GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glOrtho( GLdouble left, GLdouble right,
|
|
GLdouble bottom, GLdouble top,
|
|
GLdouble near_val, GLdouble far_val );
|
|
|
|
GLAPI void GLAPIENTRY glFrustum( GLdouble left, GLdouble right,
|
|
GLdouble bottom, GLdouble top,
|
|
GLdouble near_val, GLdouble far_val );
|
|
|
|
GLAPI void GLAPIENTRY glViewport( GLint x, GLint y,
|
|
GLsizei width, GLsizei height );
|
|
|
|
GLAPI void GLAPIENTRY glPushMatrix( void );
|
|
|
|
GLAPI void GLAPIENTRY glPopMatrix( void );
|
|
|
|
GLAPI void GLAPIENTRY glLoadIdentity( void );
|
|
|
|
GLAPI void GLAPIENTRY glLoadMatrixd( const GLdouble *m );
|
|
GLAPI void GLAPIENTRY glLoadMatrixf( const GLfloat *m );
|
|
|
|
GLAPI void GLAPIENTRY glMultMatrixd( const GLdouble *m );
|
|
GLAPI void GLAPIENTRY glMultMatrixf( const GLfloat *m );
|
|
|
|
GLAPI void GLAPIENTRY glRotated( GLdouble angle,
|
|
GLdouble x, GLdouble y, GLdouble z );
|
|
GLAPI void GLAPIENTRY glRotatef( GLfloat angle,
|
|
GLfloat x, GLfloat y, GLfloat z );
|
|
|
|
GLAPI void GLAPIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z );
|
|
GLAPI void GLAPIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z );
|
|
|
|
GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z );
|
|
GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z );
|
|
|
|
|
|
/*
|
|
* Display Lists
|
|
*/
|
|
|
|
GLAPI GLboolean GLAPIENTRY glIsList( GLuint list );
|
|
|
|
GLAPI void GLAPIENTRY glDeleteLists( GLuint list, GLsizei range );
|
|
|
|
GLAPI GLuint GLAPIENTRY glGenLists( GLsizei range );
|
|
|
|
GLAPI void GLAPIENTRY glNewList( GLuint list, GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glEndList( void );
|
|
|
|
GLAPI void GLAPIENTRY glCallList( GLuint list );
|
|
|
|
GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type,
|
|
const GLvoid *lists );
|
|
|
|
GLAPI void GLAPIENTRY glListBase( GLuint base );
|
|
|
|
|
|
/*
|
|
* Drawing Functions
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glBegin( GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glEnd( void );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glVertex2d( GLdouble x, GLdouble y );
|
|
GLAPI void GLAPIENTRY glVertex2f( GLfloat x, GLfloat y );
|
|
GLAPI void GLAPIENTRY glVertex2i( GLint x, GLint y );
|
|
GLAPI void GLAPIENTRY glVertex2s( GLshort x, GLshort y );
|
|
|
|
GLAPI void GLAPIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z );
|
|
GLAPI void GLAPIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z );
|
|
GLAPI void GLAPIENTRY glVertex3i( GLint x, GLint y, GLint z );
|
|
GLAPI void GLAPIENTRY glVertex3s( GLshort x, GLshort y, GLshort z );
|
|
|
|
GLAPI void GLAPIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
|
|
GLAPI void GLAPIENTRY glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
|
|
GLAPI void GLAPIENTRY glVertex4i( GLint x, GLint y, GLint z, GLint w );
|
|
GLAPI void GLAPIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w );
|
|
|
|
GLAPI void GLAPIENTRY glVertex2dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glVertex2fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glVertex2iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glVertex2sv( const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glVertex3dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glVertex3fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glVertex3iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glVertex3sv( const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glVertex4dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glVertex4fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glVertex4iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glVertex4sv( const GLshort *v );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz );
|
|
GLAPI void GLAPIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz );
|
|
GLAPI void GLAPIENTRY glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz );
|
|
GLAPI void GLAPIENTRY glNormal3i( GLint nx, GLint ny, GLint nz );
|
|
GLAPI void GLAPIENTRY glNormal3s( GLshort nx, GLshort ny, GLshort nz );
|
|
|
|
GLAPI void GLAPIENTRY glNormal3bv( const GLbyte *v );
|
|
GLAPI void GLAPIENTRY glNormal3dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glNormal3fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glNormal3iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glNormal3sv( const GLshort *v );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glIndexd( GLdouble c );
|
|
GLAPI void GLAPIENTRY glIndexf( GLfloat c );
|
|
GLAPI void GLAPIENTRY glIndexi( GLint c );
|
|
GLAPI void GLAPIENTRY glIndexs( GLshort c );
|
|
GLAPI void GLAPIENTRY glIndexub( GLubyte c ); /* 1.1 */
|
|
|
|
GLAPI void GLAPIENTRY glIndexdv( const GLdouble *c );
|
|
GLAPI void GLAPIENTRY glIndexfv( const GLfloat *c );
|
|
GLAPI void GLAPIENTRY glIndexiv( const GLint *c );
|
|
GLAPI void GLAPIENTRY glIndexsv( const GLshort *c );
|
|
GLAPI void GLAPIENTRY glIndexubv( const GLubyte *c ); /* 1.1 */
|
|
|
|
GLAPI void GLAPIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte blue );
|
|
GLAPI void GLAPIENTRY glColor3d( GLdouble red, GLdouble green, GLdouble blue );
|
|
GLAPI void GLAPIENTRY glColor3f( GLfloat red, GLfloat green, GLfloat blue );
|
|
GLAPI void GLAPIENTRY glColor3i( GLint red, GLint green, GLint blue );
|
|
GLAPI void GLAPIENTRY glColor3s( GLshort red, GLshort green, GLshort blue );
|
|
GLAPI void GLAPIENTRY glColor3ub( GLubyte red, GLubyte green, GLubyte blue );
|
|
GLAPI void GLAPIENTRY glColor3ui( GLuint red, GLuint green, GLuint blue );
|
|
GLAPI void GLAPIENTRY glColor3us( GLushort red, GLushort green, GLushort blue );
|
|
|
|
GLAPI void GLAPIENTRY glColor4b( GLbyte red, GLbyte green,
|
|
GLbyte blue, GLbyte alpha );
|
|
GLAPI void GLAPIENTRY glColor4d( GLdouble red, GLdouble green,
|
|
GLdouble blue, GLdouble alpha );
|
|
GLAPI void GLAPIENTRY glColor4f( GLfloat red, GLfloat green,
|
|
GLfloat blue, GLfloat alpha );
|
|
GLAPI void GLAPIENTRY glColor4i( GLint red, GLint green,
|
|
GLint blue, GLint alpha );
|
|
GLAPI void GLAPIENTRY glColor4s( GLshort red, GLshort green,
|
|
GLshort blue, GLshort alpha );
|
|
GLAPI void GLAPIENTRY glColor4ub( GLubyte red, GLubyte green,
|
|
GLubyte blue, GLubyte alpha );
|
|
GLAPI void GLAPIENTRY glColor4ui( GLuint red, GLuint green,
|
|
GLuint blue, GLuint alpha );
|
|
GLAPI void GLAPIENTRY glColor4us( GLushort red, GLushort green,
|
|
GLushort blue, GLushort alpha );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glColor3bv( const GLbyte *v );
|
|
GLAPI void GLAPIENTRY glColor3dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glColor3fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glColor3iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glColor3sv( const GLshort *v );
|
|
GLAPI void GLAPIENTRY glColor3ubv( const GLubyte *v );
|
|
GLAPI void GLAPIENTRY glColor3uiv( const GLuint *v );
|
|
GLAPI void GLAPIENTRY glColor3usv( const GLushort *v );
|
|
|
|
GLAPI void GLAPIENTRY glColor4bv( const GLbyte *v );
|
|
GLAPI void GLAPIENTRY glColor4dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glColor4fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glColor4iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glColor4sv( const GLshort *v );
|
|
GLAPI void GLAPIENTRY glColor4ubv( const GLubyte *v );
|
|
GLAPI void GLAPIENTRY glColor4uiv( const GLuint *v );
|
|
GLAPI void GLAPIENTRY glColor4usv( const GLushort *v );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glTexCoord1d( GLdouble s );
|
|
GLAPI void GLAPIENTRY glTexCoord1f( GLfloat s );
|
|
GLAPI void GLAPIENTRY glTexCoord1i( GLint s );
|
|
GLAPI void GLAPIENTRY glTexCoord1s( GLshort s );
|
|
|
|
GLAPI void GLAPIENTRY glTexCoord2d( GLdouble s, GLdouble t );
|
|
GLAPI void GLAPIENTRY glTexCoord2f( GLfloat s, GLfloat t );
|
|
GLAPI void GLAPIENTRY glTexCoord2i( GLint s, GLint t );
|
|
GLAPI void GLAPIENTRY glTexCoord2s( GLshort s, GLshort t );
|
|
|
|
GLAPI void GLAPIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble r );
|
|
GLAPI void GLAPIENTRY glTexCoord3f( GLfloat s, GLfloat t, GLfloat r );
|
|
GLAPI void GLAPIENTRY glTexCoord3i( GLint s, GLint t, GLint r );
|
|
GLAPI void GLAPIENTRY glTexCoord3s( GLshort s, GLshort t, GLshort r );
|
|
|
|
GLAPI void GLAPIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q );
|
|
GLAPI void GLAPIENTRY glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q );
|
|
GLAPI void GLAPIENTRY glTexCoord4i( GLint s, GLint t, GLint r, GLint q );
|
|
GLAPI void GLAPIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q );
|
|
|
|
GLAPI void GLAPIENTRY glTexCoord1dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glTexCoord1fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glTexCoord1iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glTexCoord1sv( const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glTexCoord2dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glTexCoord2fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glTexCoord2iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glTexCoord2sv( const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glTexCoord3dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glTexCoord3fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glTexCoord3iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glTexCoord3sv( const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glTexCoord4dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glTexCoord4fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glTexCoord4iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glTexCoord4sv( const GLshort *v );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glRasterPos2d( GLdouble x, GLdouble y );
|
|
GLAPI void GLAPIENTRY glRasterPos2f( GLfloat x, GLfloat y );
|
|
GLAPI void GLAPIENTRY glRasterPos2i( GLint x, GLint y );
|
|
GLAPI void GLAPIENTRY glRasterPos2s( GLshort x, GLshort y );
|
|
|
|
GLAPI void GLAPIENTRY glRasterPos3d( GLdouble x, GLdouble y, GLdouble z );
|
|
GLAPI void GLAPIENTRY glRasterPos3f( GLfloat x, GLfloat y, GLfloat z );
|
|
GLAPI void GLAPIENTRY glRasterPos3i( GLint x, GLint y, GLint z );
|
|
GLAPI void GLAPIENTRY glRasterPos3s( GLshort x, GLshort y, GLshort z );
|
|
|
|
GLAPI void GLAPIENTRY glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
|
|
GLAPI void GLAPIENTRY glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
|
|
GLAPI void GLAPIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w );
|
|
GLAPI void GLAPIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w );
|
|
|
|
GLAPI void GLAPIENTRY glRasterPos2dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glRasterPos2fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glRasterPos2iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glRasterPos2sv( const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glRasterPos3dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glRasterPos3fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glRasterPos3iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glRasterPos3sv( const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glRasterPos4dv( const GLdouble *v );
|
|
GLAPI void GLAPIENTRY glRasterPos4fv( const GLfloat *v );
|
|
GLAPI void GLAPIENTRY glRasterPos4iv( const GLint *v );
|
|
GLAPI void GLAPIENTRY glRasterPos4sv( const GLshort *v );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 );
|
|
GLAPI void GLAPIENTRY glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 );
|
|
GLAPI void GLAPIENTRY glRecti( GLint x1, GLint y1, GLint x2, GLint y2 );
|
|
GLAPI void GLAPIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glRectdv( const GLdouble *v1, const GLdouble *v2 );
|
|
GLAPI void GLAPIENTRY glRectfv( const GLfloat *v1, const GLfloat *v2 );
|
|
GLAPI void GLAPIENTRY glRectiv( const GLint *v1, const GLint *v2 );
|
|
GLAPI void GLAPIENTRY glRectsv( const GLshort *v1, const GLshort *v2 );
|
|
|
|
|
|
/*
|
|
* Vertex Arrays (1.1)
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glVertexPointer( GLint size, GLenum type,
|
|
GLsizei stride, const GLvoid *ptr );
|
|
|
|
GLAPI void GLAPIENTRY glNormalPointer( GLenum type, GLsizei stride,
|
|
const GLvoid *ptr );
|
|
|
|
GLAPI void GLAPIENTRY glColorPointer( GLint size, GLenum type,
|
|
GLsizei stride, const GLvoid *ptr );
|
|
|
|
GLAPI void GLAPIENTRY glIndexPointer( GLenum type, GLsizei stride,
|
|
const GLvoid *ptr );
|
|
|
|
GLAPI void GLAPIENTRY glTexCoordPointer( GLint size, GLenum type,
|
|
GLsizei stride, const GLvoid *ptr );
|
|
|
|
GLAPI void GLAPIENTRY glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr );
|
|
|
|
GLAPI void GLAPIENTRY glGetPointerv( GLenum pname, GLvoid **params );
|
|
|
|
GLAPI void GLAPIENTRY glArrayElement( GLint i );
|
|
|
|
GLAPI void GLAPIENTRY glDrawArrays( GLenum mode, GLint first, GLsizei count );
|
|
|
|
GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count,
|
|
GLenum type, const GLvoid *indices );
|
|
|
|
GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei stride,
|
|
const GLvoid *pointer );
|
|
|
|
/*
|
|
* Lighting
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glShadeModel( GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glLightf( GLenum light, GLenum pname, GLfloat param );
|
|
GLAPI void GLAPIENTRY glLighti( GLenum light, GLenum pname, GLint param );
|
|
GLAPI void GLAPIENTRY glLightfv( GLenum light, GLenum pname,
|
|
const GLfloat *params );
|
|
GLAPI void GLAPIENTRY glLightiv( GLenum light, GLenum pname,
|
|
const GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetLightfv( GLenum light, GLenum pname,
|
|
GLfloat *params );
|
|
GLAPI void GLAPIENTRY glGetLightiv( GLenum light, GLenum pname,
|
|
GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glLightModelf( GLenum pname, GLfloat param );
|
|
GLAPI void GLAPIENTRY glLightModeli( GLenum pname, GLint param );
|
|
GLAPI void GLAPIENTRY glLightModelfv( GLenum pname, const GLfloat *params );
|
|
GLAPI void GLAPIENTRY glLightModeliv( GLenum pname, const GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glMaterialf( GLenum face, GLenum pname, GLfloat param );
|
|
GLAPI void GLAPIENTRY glMateriali( GLenum face, GLenum pname, GLint param );
|
|
GLAPI void GLAPIENTRY glMaterialfv( GLenum face, GLenum pname, const GLfloat *params );
|
|
GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params );
|
|
GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode );
|
|
|
|
|
|
/*
|
|
* Raster functions
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor );
|
|
|
|
GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param );
|
|
GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param );
|
|
|
|
GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param );
|
|
GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param );
|
|
|
|
GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLsizei mapsize,
|
|
const GLfloat *values );
|
|
GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLsizei mapsize,
|
|
const GLuint *values );
|
|
GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLsizei mapsize,
|
|
const GLushort *values );
|
|
|
|
GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values );
|
|
GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values );
|
|
GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values );
|
|
|
|
GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height,
|
|
GLfloat xorig, GLfloat yorig,
|
|
GLfloat xmove, GLfloat ymove,
|
|
const GLubyte *bitmap );
|
|
|
|
GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y,
|
|
GLsizei width, GLsizei height,
|
|
GLenum format, GLenum type,
|
|
GLvoid *pixels );
|
|
|
|
GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y,
|
|
GLsizei width, GLsizei height,
|
|
GLenum type );
|
|
|
|
/*
|
|
* Stenciling
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glStencilFunc( GLenum func, GLint ref, GLuint mask );
|
|
|
|
GLAPI void GLAPIENTRY glStencilMask( GLuint mask );
|
|
|
|
GLAPI void GLAPIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum zpass );
|
|
|
|
GLAPI void GLAPIENTRY glClearStencil( GLint s );
|
|
|
|
|
|
|
|
/*
|
|
* Texture mapping
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glTexGend( GLenum coord, GLenum pname, GLdouble param );
|
|
GLAPI void GLAPIENTRY glTexGenf( GLenum coord, GLenum pname, GLfloat param );
|
|
GLAPI void GLAPIENTRY glTexGeni( GLenum coord, GLenum pname, GLint param );
|
|
|
|
GLAPI void GLAPIENTRY glTexGendv( GLenum coord, GLenum pname, const GLdouble *params );
|
|
GLAPI void GLAPIENTRY glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params );
|
|
GLAPI void GLAPIENTRY glTexGeniv( GLenum coord, GLenum pname, const GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params );
|
|
GLAPI void GLAPIENTRY glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params );
|
|
GLAPI void GLAPIENTRY glGetTexGeniv( GLenum coord, GLenum pname, GLint *params );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glTexEnvf( GLenum target, GLenum pname, GLfloat param );
|
|
GLAPI void GLAPIENTRY glTexEnvi( GLenum target, GLenum pname, GLint param );
|
|
|
|
GLAPI void GLAPIENTRY glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params );
|
|
GLAPI void GLAPIENTRY glTexEnviv( GLenum target, GLenum pname, const GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params );
|
|
GLAPI void GLAPIENTRY glGetTexEnviv( GLenum target, GLenum pname, GLint *params );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glTexParameterf( GLenum target, GLenum pname, GLfloat param );
|
|
GLAPI void GLAPIENTRY glTexParameteri( GLenum target, GLenum pname, GLint param );
|
|
|
|
GLAPI void GLAPIENTRY glTexParameterfv( GLenum target, GLenum pname,
|
|
const GLfloat *params );
|
|
GLAPI void GLAPIENTRY glTexParameteriv( GLenum target, GLenum pname,
|
|
const GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetTexParameterfv( GLenum target,
|
|
GLenum pname, GLfloat *params);
|
|
GLAPI void GLAPIENTRY glGetTexParameteriv( GLenum target,
|
|
GLenum pname, GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetTexLevelParameterfv( GLenum target, GLint level,
|
|
GLenum pname, GLfloat *params );
|
|
GLAPI void GLAPIENTRY glGetTexLevelParameteriv( GLenum target, GLint level,
|
|
GLenum pname, GLint *params );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glTexImage1D( GLenum target, GLint level,
|
|
GLint internalFormat,
|
|
GLsizei width, GLint border,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
GLAPI void GLAPIENTRY glTexImage2D( GLenum target, GLint level,
|
|
GLint internalFormat,
|
|
GLsizei width, GLsizei height,
|
|
GLint border, GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level,
|
|
GLenum format, GLenum type,
|
|
GLvoid *pixels );
|
|
|
|
|
|
/* 1.1 functions */
|
|
|
|
GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures );
|
|
|
|
GLAPI void GLAPIENTRY glDeleteTextures( GLsizei n, const GLuint *textures);
|
|
|
|
GLAPI void GLAPIENTRY glBindTexture( GLenum target, GLuint texture );
|
|
|
|
GLAPI void GLAPIENTRY glPrioritizeTextures( GLsizei n,
|
|
const GLuint *textures,
|
|
const GLclampf *priorities );
|
|
|
|
GLAPI GLboolean GLAPIENTRY glAreTexturesResident( GLsizei n,
|
|
const GLuint *textures,
|
|
GLboolean *residences );
|
|
|
|
GLAPI GLboolean GLAPIENTRY glIsTexture( GLuint texture );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glTexSubImage1D( GLenum target, GLint level,
|
|
GLint xoffset,
|
|
GLsizei width, GLenum format,
|
|
GLenum type, const GLvoid *pixels );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glTexSubImage2D( GLenum target, GLint level,
|
|
GLint xoffset, GLint yoffset,
|
|
GLsizei width, GLsizei height,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glCopyTexImage1D( GLenum target, GLint level,
|
|
GLenum internalformat,
|
|
GLint x, GLint y,
|
|
GLsizei width, GLint border );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glCopyTexImage2D( GLenum target, GLint level,
|
|
GLenum internalformat,
|
|
GLint x, GLint y,
|
|
GLsizei width, GLsizei height,
|
|
GLint border );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glCopyTexSubImage1D( GLenum target, GLint level,
|
|
GLint xoffset, GLint x, GLint y,
|
|
GLsizei width );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint level,
|
|
GLint xoffset, GLint yoffset,
|
|
GLint x, GLint y,
|
|
GLsizei width, GLsizei height );
|
|
|
|
|
|
/*
|
|
* Evaluators
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble u2,
|
|
GLint stride,
|
|
GLint order, const GLdouble *points );
|
|
GLAPI void GLAPIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2,
|
|
GLint stride,
|
|
GLint order, const GLfloat *points );
|
|
|
|
GLAPI void GLAPIENTRY glMap2d( GLenum target,
|
|
GLdouble u1, GLdouble u2, GLint ustride, GLint uorder,
|
|
GLdouble v1, GLdouble v2, GLint vstride, GLint vorder,
|
|
const GLdouble *points );
|
|
GLAPI void GLAPIENTRY glMap2f( GLenum target,
|
|
GLfloat u1, GLfloat u2, GLint ustride, GLint uorder,
|
|
GLfloat v1, GLfloat v2, GLint vstride, GLint vorder,
|
|
const GLfloat *points );
|
|
|
|
GLAPI void GLAPIENTRY glGetMapdv( GLenum target, GLenum query, GLdouble *v );
|
|
GLAPI void GLAPIENTRY glGetMapfv( GLenum target, GLenum query, GLfloat *v );
|
|
GLAPI void GLAPIENTRY glGetMapiv( GLenum target, GLenum query, GLint *v );
|
|
|
|
GLAPI void GLAPIENTRY glEvalCoord1d( GLdouble u );
|
|
GLAPI void GLAPIENTRY glEvalCoord1f( GLfloat u );
|
|
|
|
GLAPI void GLAPIENTRY glEvalCoord1dv( const GLdouble *u );
|
|
GLAPI void GLAPIENTRY glEvalCoord1fv( const GLfloat *u );
|
|
|
|
GLAPI void GLAPIENTRY glEvalCoord2d( GLdouble u, GLdouble v );
|
|
GLAPI void GLAPIENTRY glEvalCoord2f( GLfloat u, GLfloat v );
|
|
|
|
GLAPI void GLAPIENTRY glEvalCoord2dv( const GLdouble *u );
|
|
GLAPI void GLAPIENTRY glEvalCoord2fv( const GLfloat *u );
|
|
|
|
GLAPI void GLAPIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 );
|
|
GLAPI void GLAPIENTRY glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 );
|
|
|
|
GLAPI void GLAPIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble u2,
|
|
GLint vn, GLdouble v1, GLdouble v2 );
|
|
GLAPI void GLAPIENTRY glMapGrid2f( GLint un, GLfloat u1, GLfloat u2,
|
|
GLint vn, GLfloat v1, GLfloat v2 );
|
|
|
|
GLAPI void GLAPIENTRY glEvalPoint1( GLint i );
|
|
|
|
GLAPI void GLAPIENTRY glEvalPoint2( GLint i, GLint j );
|
|
|
|
GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 );
|
|
|
|
GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 );
|
|
|
|
|
|
/*
|
|
* Fog
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glFogf( GLenum pname, GLfloat param );
|
|
|
|
GLAPI void GLAPIENTRY glFogi( GLenum pname, GLint param );
|
|
|
|
GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params );
|
|
|
|
GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params );
|
|
|
|
|
|
/*
|
|
* Selection and Feedback
|
|
*/
|
|
|
|
GLAPI void GLAPIENTRY glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer );
|
|
|
|
GLAPI void GLAPIENTRY glPassThrough( GLfloat token );
|
|
|
|
GLAPI void GLAPIENTRY glSelectBuffer( GLsizei size, GLuint *buffer );
|
|
|
|
GLAPI void GLAPIENTRY glInitNames( void );
|
|
|
|
GLAPI void GLAPIENTRY glLoadName( GLuint name );
|
|
|
|
GLAPI void GLAPIENTRY glPushName( GLuint name );
|
|
|
|
GLAPI void GLAPIENTRY glPopName( void );
|
|
|
|
#endif
|
|
#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS
|
|
|
|
typedef void (APIENTRYP PFNGLCLEARINDEXPROC) ( GLfloat c );
|
|
|
|
typedef void (APIENTRYP PFNGLCLEARCOLORPROC) ( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha );
|
|
|
|
typedef void (APIENTRYP PFNGLCLEARPROC) ( GLbitfield mask );
|
|
|
|
typedef void (APIENTRYP PFNGLINDEXMASKPROC) ( GLuint mask );
|
|
|
|
typedef void (APIENTRYP PFNGLCOLORMASKPROC) ( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha );
|
|
|
|
typedef void (APIENTRYP PFNGLALPHAFUNCPROC) ( GLenum func, GLclampf ref );
|
|
|
|
typedef void (APIENTRYP PFNGLBLENDFUNCPROC) ( GLenum sfactor, GLenum dfactor );
|
|
|
|
typedef void (APIENTRYP PFNGLLOGICOPPROC) ( GLenum opcode );
|
|
|
|
typedef void (APIENTRYP PFNGLCULLFACEPROC) ( GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLFRONTFACEPROC) ( GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLPOINTSIZEPROC) ( GLfloat size );
|
|
|
|
typedef void (APIENTRYP PFNGLLINEWIDTHPROC) ( GLfloat width );
|
|
|
|
typedef void (APIENTRYP PFNGLLINESTIPPLEPROC) ( GLint factor, GLushort pattern );
|
|
|
|
typedef void (APIENTRYP PFNGLPOLYGONMODEPROC) ( GLenum face, GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLPOLYGONOFFSETPROC) ( GLfloat factor, GLfloat units );
|
|
|
|
typedef void (APIENTRYP PFNGLPOLYGONSTIPPLEPROC) ( const GLubyte *mask );
|
|
|
|
typedef void (APIENTRYP PFNGLGETPOLYGONSTIPPLEPROC) ( GLubyte *mask );
|
|
|
|
typedef void (APIENTRYP PFNGLEDGEFLAGPROC) ( GLboolean flag );
|
|
|
|
typedef void (APIENTRYP PFNGLEDGEFLAGVPROC) ( const GLboolean *flag );
|
|
|
|
typedef void (APIENTRYP PFNGLSCISSORPROC) ( GLint x, GLint y, GLsizei width, GLsizei height);
|
|
|
|
typedef void (APIENTRYP PFNGLCLIPPLANEPROC) ( GLenum plane, const GLdouble *equation );
|
|
|
|
typedef void (APIENTRYP PFNGLGETCLIPPLANEPROC) ( GLenum plane, GLdouble *equation );
|
|
|
|
typedef void (APIENTRYP PFNGLDRAWBUFFERPROC) ( GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLREADBUFFERPROC) ( GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLENABLEPROC) ( GLenum cap );
|
|
|
|
typedef void (APIENTRYP PFNGLDISABLEPROC) ( GLenum cap );
|
|
|
|
typedef GLboolean (APIENTRYP PFNGLISENABLEDPROC) ( GLenum cap );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLENABLECLIENTSTATEPROC) ( GLenum cap ); /* 1.1 */
|
|
|
|
typedef void (APIENTRYP PFNGLDISABLECLIENTSTATEPROC) ( GLenum cap ); /* 1.1 */
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLGETBOOLEANVPROC) ( GLenum pname, GLboolean *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETDOUBLEVPROC) ( GLenum pname, GLdouble *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETFLOATVPROC) ( GLenum pname, GLfloat *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETINTEGERVPROC) ( GLenum pname, GLint *params );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLPUSHATTRIBPROC) ( GLbitfield mask );
|
|
|
|
typedef void (APIENTRYP PFNGLPOPATTRIBPROC) ( void );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLPUSHCLIENTATTRIBPROC) ( GLbitfield mask ); /* 1.1 */
|
|
|
|
typedef void (APIENTRYP PFNGLPOPCLIENTATTRIBPROC) ( void ); /* 1.1 */
|
|
|
|
|
|
typedef GLint (APIENTRYP PFNGLRENDERMODEPROC) ( GLenum mode );
|
|
|
|
typedef GLenum (APIENTRYP PFNGLGETERRORPROC) ( void );
|
|
|
|
typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGPROC) ( GLenum name );
|
|
|
|
typedef void (APIENTRYP PFNGLFINISHPROC) ( void );
|
|
|
|
typedef void (APIENTRYP PFNGLFLUSHPROC) ( void );
|
|
|
|
typedef void (APIENTRYP PFNGLHINTPROC) ( GLenum target, GLenum mode );
|
|
|
|
|
|
/*
|
|
* Depth Buffer
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLCLEARDEPTHPROC) ( GLclampd depth );
|
|
|
|
typedef void (APIENTRYP PFNGLDEPTHFUNCPROC) ( GLenum func );
|
|
|
|
typedef void (APIENTRYP PFNGLDEPTHMASKPROC) ( GLboolean flag );
|
|
|
|
typedef void (APIENTRYP PFNGLDEPTHRANGEPROC) ( GLclampd near_val, GLclampd far_val );
|
|
|
|
|
|
/*
|
|
* Accumulation Buffer
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLCLEARACCUMPROC) ( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha );
|
|
|
|
typedef void (APIENTRYP PFNGLACCUMPROC) ( GLenum op, GLfloat value );
|
|
|
|
|
|
/*
|
|
* Transformation
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLMATRIXMODEPROC) ( GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLORTHOPROC) ( GLdouble left, GLdouble right,
|
|
GLdouble bottom, GLdouble top,
|
|
GLdouble near_val, GLdouble far_val );
|
|
|
|
typedef void (APIENTRYP PFNGLFRUSTUMPROC) ( GLdouble left, GLdouble right,
|
|
GLdouble bottom, GLdouble top,
|
|
GLdouble near_val, GLdouble far_val );
|
|
|
|
typedef void (APIENTRYP PFNGLVIEWPORTPROC) ( GLint x, GLint y,
|
|
GLsizei width, GLsizei height );
|
|
|
|
typedef void (APIENTRYP PFNGLPUSHMATRIXPROC) ( void );
|
|
|
|
typedef void (APIENTRYP PFNGLPOPMATRIXPROC) ( void );
|
|
|
|
typedef void (APIENTRYP PFNGLLOADIDENTITYPROC) ( void );
|
|
|
|
typedef void (APIENTRYP PFNGLLOADMATRIXDPROC) ( const GLdouble *m );
|
|
typedef void (APIENTRYP PFNGLLOADMATRIXFPROC) ( const GLfloat *m );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTMATRIXDPROC) ( const GLdouble *m );
|
|
typedef void (APIENTRYP PFNGLMULTMATRIXFPROC) ( const GLfloat *m );
|
|
|
|
typedef void (APIENTRYP PFNGLROTATEDPROC) ( GLdouble angle,
|
|
GLdouble x, GLdouble y, GLdouble z );
|
|
typedef void (APIENTRYP PFNGLROTATEFPROC) ( GLfloat angle,
|
|
GLfloat x, GLfloat y, GLfloat z );
|
|
|
|
typedef void (APIENTRYP PFNGLSCALEDPROC) ( GLdouble x, GLdouble y, GLdouble z );
|
|
typedef void (APIENTRYP PFNGLSCALEFPROC) ( GLfloat x, GLfloat y, GLfloat z );
|
|
|
|
typedef void (APIENTRYP PFNGLTRANSLATEDPROC) ( GLdouble x, GLdouble y, GLdouble z );
|
|
typedef void (APIENTRYP PFNGLTRANSLATEFPROC) ( GLfloat x, GLfloat y, GLfloat z );
|
|
|
|
|
|
/*
|
|
* Display Lists
|
|
*/
|
|
|
|
typedef GLboolean (APIENTRYP PFNGLISLISTPROC) ( GLuint list );
|
|
|
|
typedef void (APIENTRYP PFNGLDELETELISTSPROC) ( GLuint list, GLsizei range );
|
|
|
|
typedef GLuint (APIENTRYP PFNGLGENLISTSPROC) ( GLsizei range );
|
|
|
|
typedef void (APIENTRYP PFNGLNEWLISTPROC) ( GLuint list, GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLENDLISTPROC) ( void );
|
|
|
|
typedef void (APIENTRYP PFNGLCALLLISTPROC) ( GLuint list );
|
|
|
|
typedef void (APIENTRYP PFNGLCALLLISTSPROC) ( GLsizei n, GLenum type,
|
|
const GLvoid *lists );
|
|
|
|
typedef void (APIENTRYP PFNGLLISTBASEPROC) ( GLuint base );
|
|
|
|
|
|
/*
|
|
* Drawing Functions
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLBEGINPROC) ( GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLENDPROC) ( void );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLVERTEX2DPROC) ( GLdouble x, GLdouble y );
|
|
typedef void (APIENTRYP PFNGLVERTEX2FPROC) ( GLfloat x, GLfloat y );
|
|
typedef void (APIENTRYP PFNGLVERTEX2IPROC) ( GLint x, GLint y );
|
|
typedef void (APIENTRYP PFNGLVERTEX2SPROC) ( GLshort x, GLshort y );
|
|
|
|
typedef void (APIENTRYP PFNGLVERTEX3DPROC) ( GLdouble x, GLdouble y, GLdouble z );
|
|
typedef void (APIENTRYP PFNGLVERTEX3FPROC) ( GLfloat x, GLfloat y, GLfloat z );
|
|
typedef void (APIENTRYP PFNGLVERTEX3IPROC) ( GLint x, GLint y, GLint z );
|
|
typedef void (APIENTRYP PFNGLVERTEX3SPROC) ( GLshort x, GLshort y, GLshort z );
|
|
|
|
typedef void (APIENTRYP PFNGLVERTEX4DPROC) ( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
|
|
typedef void (APIENTRYP PFNGLVERTEX4FPROC) ( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
|
|
typedef void (APIENTRYP PFNGLVERTEX4IPROC) ( GLint x, GLint y, GLint z, GLint w );
|
|
typedef void (APIENTRYP PFNGLVERTEX4SPROC) ( GLshort x, GLshort y, GLshort z, GLshort w );
|
|
|
|
typedef void (APIENTRYP PFNGLVERTEX2DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLVERTEX2FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLVERTEX2IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLVERTEX2SVPROC) ( const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLVERTEX3DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLVERTEX3FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLVERTEX3IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLVERTEX3SVPROC) ( const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLVERTEX4DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLVERTEX4FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLVERTEX4IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLVERTEX4SVPROC) ( const GLshort *v );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLNORMAL3BPROC) ( GLbyte nx, GLbyte ny, GLbyte nz );
|
|
typedef void (APIENTRYP PFNGLNORMAL3DPROC) ( GLdouble nx, GLdouble ny, GLdouble nz );
|
|
typedef void (APIENTRYP PFNGLNORMAL3FPROC) ( GLfloat nx, GLfloat ny, GLfloat nz );
|
|
typedef void (APIENTRYP PFNGLNORMAL3IPROC) ( GLint nx, GLint ny, GLint nz );
|
|
typedef void (APIENTRYP PFNGLNORMAL3SPROC) ( GLshort nx, GLshort ny, GLshort nz );
|
|
|
|
typedef void (APIENTRYP PFNGLNORMAL3BVPROC) ( const GLbyte *v );
|
|
typedef void (APIENTRYP PFNGLNORMAL3DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLNORMAL3FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLNORMAL3IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLNORMAL3SVPROC) ( const GLshort *v );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLINDEXDPROC) ( GLdouble c );
|
|
typedef void (APIENTRYP PFNGLINDEXFPROC) ( GLfloat c );
|
|
typedef void (APIENTRYP PFNGLINDEXIPROC) ( GLint c );
|
|
typedef void (APIENTRYP PFNGLINDEXSPROC) ( GLshort c );
|
|
typedef void (APIENTRYP PFNGLINDEXUBPROC) ( GLubyte c ); /* 1.1 */
|
|
|
|
typedef void (APIENTRYP PFNGLINDEXDVPROC) ( const GLdouble *c );
|
|
typedef void (APIENTRYP PFNGLINDEXFVPROC) ( const GLfloat *c );
|
|
typedef void (APIENTRYP PFNGLINDEXIVPROC) ( const GLint *c );
|
|
typedef void (APIENTRYP PFNGLINDEXSVPROC) ( const GLshort *c );
|
|
typedef void (APIENTRYP PFNGLINDEXUBVPROC) ( const GLubyte *c ); /* 1.1 */
|
|
|
|
typedef void (APIENTRYP PFNGLCOLOR3BPROC) ( GLbyte red, GLbyte green, GLbyte blue );
|
|
typedef void (APIENTRYP PFNGLCOLOR3DPROC) ( GLdouble red, GLdouble green, GLdouble blue );
|
|
typedef void (APIENTRYP PFNGLCOLOR3FPROC) ( GLfloat red, GLfloat green, GLfloat blue );
|
|
typedef void (APIENTRYP PFNGLCOLOR3IPROC) ( GLint red, GLint green, GLint blue );
|
|
typedef void (APIENTRYP PFNGLCOLOR3SPROC) ( GLshort red, GLshort green, GLshort blue );
|
|
typedef void (APIENTRYP PFNGLCOLOR3UBPROC) ( GLubyte red, GLubyte green, GLubyte blue );
|
|
typedef void (APIENTRYP PFNGLCOLOR3UIPROC) ( GLuint red, GLuint green, GLuint blue );
|
|
typedef void (APIENTRYP PFNGLCOLOR3USPROC) ( GLushort red, GLushort green, GLushort blue );
|
|
|
|
typedef void (APIENTRYP PFNGLCOLOR4BPROC) ( GLbyte red, GLbyte green,
|
|
GLbyte blue, GLbyte alpha );
|
|
typedef void (APIENTRYP PFNGLCOLOR4DPROC) ( GLdouble red, GLdouble green,
|
|
GLdouble blue, GLdouble alpha );
|
|
typedef void (APIENTRYP PFNGLCOLOR4FPROC) ( GLfloat red, GLfloat green,
|
|
GLfloat blue, GLfloat alpha );
|
|
typedef void (APIENTRYP PFNGLCOLOR4IPROC) ( GLint red, GLint green,
|
|
GLint blue, GLint alpha );
|
|
typedef void (APIENTRYP PFNGLCOLOR4SPROC) ( GLshort red, GLshort green,
|
|
GLshort blue, GLshort alpha );
|
|
typedef void (APIENTRYP PFNGLCOLOR4UBPROC) ( GLubyte red, GLubyte green,
|
|
GLubyte blue, GLubyte alpha );
|
|
typedef void (APIENTRYP PFNGLCOLOR4UIPROC) ( GLuint red, GLuint green,
|
|
GLuint blue, GLuint alpha );
|
|
typedef void (APIENTRYP PFNGLCOLOR4USPROC) ( GLushort red, GLushort green,
|
|
GLushort blue, GLushort alpha );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLCOLOR3BVPROC) ( const GLbyte *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR3DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR3FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR3IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR3SVPROC) ( const GLshort *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR3UBVPROC) ( const GLubyte *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR3UIVPROC) ( const GLuint *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR3USVPROC) ( const GLushort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLCOLOR4BVPROC) ( const GLbyte *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR4DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR4FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR4IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR4SVPROC) ( const GLshort *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR4UBVPROC) ( const GLubyte *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR4UIVPROC) ( const GLuint *v );
|
|
typedef void (APIENTRYP PFNGLCOLOR4USVPROC) ( const GLushort *v );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLTEXCOORD1DPROC) ( GLdouble s );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD1FPROC) ( GLfloat s );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD1IPROC) ( GLint s );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD1SPROC) ( GLshort s );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXCOORD2DPROC) ( GLdouble s, GLdouble t );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD2FPROC) ( GLfloat s, GLfloat t );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD2IPROC) ( GLint s, GLint t );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD2SPROC) ( GLshort s, GLshort t );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXCOORD3DPROC) ( GLdouble s, GLdouble t, GLdouble r );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD3FPROC) ( GLfloat s, GLfloat t, GLfloat r );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD3IPROC) ( GLint s, GLint t, GLint r );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD3SPROC) ( GLshort s, GLshort t, GLshort r );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXCOORD4DPROC) ( GLdouble s, GLdouble t, GLdouble r, GLdouble q );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD4FPROC) ( GLfloat s, GLfloat t, GLfloat r, GLfloat q );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD4IPROC) ( GLint s, GLint t, GLint r, GLint q );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD4SPROC) ( GLshort s, GLshort t, GLshort r, GLshort q );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXCOORD1DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD1FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD1IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD1SVPROC) ( const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXCOORD2DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD2FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD2IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD2SVPROC) ( const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXCOORD3DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD3FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD3IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD3SVPROC) ( const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXCOORD4DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD4FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD4IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLTEXCOORD4SVPROC) ( const GLshort *v );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLRASTERPOS2DPROC) ( GLdouble x, GLdouble y );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS2FPROC) ( GLfloat x, GLfloat y );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS2IPROC) ( GLint x, GLint y );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS2SPROC) ( GLshort x, GLshort y );
|
|
|
|
typedef void (APIENTRYP PFNGLRASTERPOS3DPROC) ( GLdouble x, GLdouble y, GLdouble z );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS3FPROC) ( GLfloat x, GLfloat y, GLfloat z );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS3IPROC) ( GLint x, GLint y, GLint z );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS3SPROC) ( GLshort x, GLshort y, GLshort z );
|
|
|
|
typedef void (APIENTRYP PFNGLRASTERPOS4DPROC) ( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS4FPROC) ( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS4IPROC) ( GLint x, GLint y, GLint z, GLint w );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS4SPROC) ( GLshort x, GLshort y, GLshort z, GLshort w );
|
|
|
|
typedef void (APIENTRYP PFNGLRASTERPOS2DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS2FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS2IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS2SVPROC) ( const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLRASTERPOS3DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS3FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS3IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS3SVPROC) ( const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLRASTERPOS4DVPROC) ( const GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS4FVPROC) ( const GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS4IVPROC) ( const GLint *v );
|
|
typedef void (APIENTRYP PFNGLRASTERPOS4SVPROC) ( const GLshort *v );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLRECTDPROC) ( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 );
|
|
typedef void (APIENTRYP PFNGLRECTFPROC) ( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 );
|
|
typedef void (APIENTRYP PFNGLRECTIPROC) ( GLint x1, GLint y1, GLint x2, GLint y2 );
|
|
typedef void (APIENTRYP PFNGLRECTSPROC) ( GLshort x1, GLshort y1, GLshort x2, GLshort y2 );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLRECTDVPROC) ( const GLdouble *v1, const GLdouble *v2 );
|
|
typedef void (APIENTRYP PFNGLRECTFVPROC) ( const GLfloat *v1, const GLfloat *v2 );
|
|
typedef void (APIENTRYP PFNGLRECTIVPROC) ( const GLint *v1, const GLint *v2 );
|
|
typedef void (APIENTRYP PFNGLRECTSVPROC) ( const GLshort *v1, const GLshort *v2 );
|
|
|
|
|
|
/*
|
|
* Vertex Arrays (1.1)
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLVERTEXPOINTERPROC) ( GLint size, GLenum type,
|
|
GLsizei stride, const GLvoid *ptr );
|
|
|
|
typedef void (APIENTRYP PFNGLNORMALPOINTERPROC) ( GLenum type, GLsizei stride,
|
|
const GLvoid *ptr );
|
|
|
|
typedef void (APIENTRYP PFNGLCOLORPOINTERPROC) ( GLint size, GLenum type,
|
|
GLsizei stride, const GLvoid *ptr );
|
|
|
|
typedef void (APIENTRYP PFNGLINDEXPOINTERPROC) ( GLenum type, GLsizei stride,
|
|
const GLvoid *ptr );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXCOORDPOINTERPROC) ( GLint size, GLenum type,
|
|
GLsizei stride, const GLvoid *ptr );
|
|
|
|
typedef void (APIENTRYP PFNGLEDGEFLAGPOINTERPROC) ( GLsizei stride, const GLvoid *ptr );
|
|
|
|
typedef void (APIENTRYP PFNGLGETPOINTERVPROC) ( GLenum pname, GLvoid **params );
|
|
|
|
typedef void (APIENTRYP PFNGLARRAYELEMENTPROC) ( GLint i );
|
|
|
|
typedef void (APIENTRYP PFNGLDRAWARRAYSPROC) ( GLenum mode, GLint first, GLsizei count );
|
|
|
|
typedef void (APIENTRYP PFNGLDRAWELEMENTSPROC) ( GLenum mode, GLsizei count,
|
|
GLenum type, const GLvoid *indices );
|
|
|
|
typedef void (APIENTRYP PFNGLINTERLEAVEDARRAYSPROC) ( GLenum format, GLsizei stride,
|
|
const GLvoid *pointer );
|
|
|
|
/*
|
|
* Lighting
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLSHADEMODELPROC) ( GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLLIGHTFPROC) ( GLenum light, GLenum pname, GLfloat param );
|
|
typedef void (APIENTRYP PFNGLLIGHTIPROC) ( GLenum light, GLenum pname, GLint param );
|
|
typedef void (APIENTRYP PFNGLLIGHTFVPROC) ( GLenum light, GLenum pname,
|
|
const GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLLIGHTIVPROC) ( GLenum light, GLenum pname,
|
|
const GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETLIGHTFVPROC) ( GLenum light, GLenum pname,
|
|
GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLGETLIGHTIVPROC) ( GLenum light, GLenum pname,
|
|
GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLLIGHTMODELFPROC) ( GLenum pname, GLfloat param );
|
|
typedef void (APIENTRYP PFNGLLIGHTMODELIPROC) ( GLenum pname, GLint param );
|
|
typedef void (APIENTRYP PFNGLLIGHTMODELFVPROC) ( GLenum pname, const GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLLIGHTMODELIVPROC) ( GLenum pname, const GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLMATERIALFPROC) ( GLenum face, GLenum pname, GLfloat param );
|
|
typedef void (APIENTRYP PFNGLMATERIALIPROC) ( GLenum face, GLenum pname, GLint param );
|
|
typedef void (APIENTRYP PFNGLMATERIALFVPROC) ( GLenum face, GLenum pname, const GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLMATERIALIVPROC) ( GLenum face, GLenum pname, const GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETMATERIALFVPROC) ( GLenum face, GLenum pname, GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLGETMATERIALIVPROC) ( GLenum face, GLenum pname, GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLCOLORMATERIALPROC) ( GLenum face, GLenum mode );
|
|
|
|
|
|
/*
|
|
* Raster functions
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLPIXELZOOMPROC) ( GLfloat xfactor, GLfloat yfactor );
|
|
|
|
typedef void (APIENTRYP PFNGLPIXELSTOREFPROC) ( GLenum pname, GLfloat param );
|
|
typedef void (APIENTRYP PFNGLPIXELSTOREIPROC) ( GLenum pname, GLint param );
|
|
|
|
typedef void (APIENTRYP PFNGLPIXELTRANSFERFPROC) ( GLenum pname, GLfloat param );
|
|
typedef void (APIENTRYP PFNGLPIXELTRANSFERIPROC) ( GLenum pname, GLint param );
|
|
|
|
typedef void (APIENTRYP PFNGLPIXELMAPFVPROC) ( GLenum map, GLsizei mapsize,
|
|
const GLfloat *values );
|
|
typedef void (APIENTRYP PFNGLPIXELMAPUIVPROC) ( GLenum map, GLsizei mapsize,
|
|
const GLuint *values );
|
|
typedef void (APIENTRYP PFNGLPIXELMAPUSVPROC) ( GLenum map, GLsizei mapsize,
|
|
const GLushort *values );
|
|
|
|
typedef void (APIENTRYP PFNGLGETPIXELMAPFVPROC) ( GLenum map, GLfloat *values );
|
|
typedef void (APIENTRYP PFNGLGETPIXELMAPUIVPROC) ( GLenum map, GLuint *values );
|
|
typedef void (APIENTRYP PFNGLGETPIXELMAPUSVPROC) ( GLenum map, GLushort *values );
|
|
|
|
typedef void (APIENTRYP PFNGLBITMAPPROC) ( GLsizei width, GLsizei height,
|
|
GLfloat xorig, GLfloat yorig,
|
|
GLfloat xmove, GLfloat ymove,
|
|
const GLubyte *bitmap );
|
|
|
|
typedef void (APIENTRYP PFNGLREADPIXELSPROC) ( GLint x, GLint y,
|
|
GLsizei width, GLsizei height,
|
|
GLenum format, GLenum type,
|
|
GLvoid *pixels );
|
|
|
|
typedef void (APIENTRYP PFNGLDRAWPIXELSPROC) ( GLsizei width, GLsizei height,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYPIXELSPROC) ( GLint x, GLint y,
|
|
GLsizei width, GLsizei height,
|
|
GLenum type );
|
|
|
|
/*
|
|
* Stenciling
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLSTENCILFUNCPROC) ( GLenum func, GLint ref, GLuint mask );
|
|
|
|
typedef void (APIENTRYP PFNGLSTENCILMASKPROC) ( GLuint mask );
|
|
|
|
typedef void (APIENTRYP PFNGLSTENCILOPPROC) ( GLenum fail, GLenum zfail, GLenum zpass );
|
|
|
|
typedef void (APIENTRYP PFNGLCLEARSTENCILPROC) ( GLint s );
|
|
|
|
|
|
|
|
/*
|
|
* Texture mapping
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLTEXGENDPROC) ( GLenum coord, GLenum pname, GLdouble param );
|
|
typedef void (APIENTRYP PFNGLTEXGENFPROC) ( GLenum coord, GLenum pname, GLfloat param );
|
|
typedef void (APIENTRYP PFNGLTEXGENIPROC) ( GLenum coord, GLenum pname, GLint param );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXGENDVPROC) ( GLenum coord, GLenum pname, const GLdouble *params );
|
|
typedef void (APIENTRYP PFNGLTEXGENFVPROC) ( GLenum coord, GLenum pname, const GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLTEXGENIVPROC) ( GLenum coord, GLenum pname, const GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETTEXGENDVPROC) ( GLenum coord, GLenum pname, GLdouble *params );
|
|
typedef void (APIENTRYP PFNGLGETTEXGENFVPROC) ( GLenum coord, GLenum pname, GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLGETTEXGENIVPROC) ( GLenum coord, GLenum pname, GLint *params );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLTEXENVFPROC) ( GLenum target, GLenum pname, GLfloat param );
|
|
typedef void (APIENTRYP PFNGLTEXENVIPROC) ( GLenum target, GLenum pname, GLint param );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXENVFVPROC) ( GLenum target, GLenum pname, const GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLTEXENVIVPROC) ( GLenum target, GLenum pname, const GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETTEXENVFVPROC) ( GLenum target, GLenum pname, GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLGETTEXENVIVPROC) ( GLenum target, GLenum pname, GLint *params );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLTEXPARAMETERFPROC) ( GLenum target, GLenum pname, GLfloat param );
|
|
typedef void (APIENTRYP PFNGLTEXPARAMETERIPROC) ( GLenum target, GLenum pname, GLint param );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXPARAMETERFVPROC) ( GLenum target, GLenum pname,
|
|
const GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLTEXPARAMETERIVPROC) ( GLenum target, GLenum pname,
|
|
const GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETTEXPARAMETERFVPROC) ( GLenum target,
|
|
GLenum pname, GLfloat *params);
|
|
typedef void (APIENTRYP PFNGLGETTEXPARAMETERIVPROC) ( GLenum target,
|
|
GLenum pname, GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERFVPROC) ( GLenum target, GLint level,
|
|
GLenum pname, GLfloat *params );
|
|
typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERIVPROC) ( GLenum target, GLint level,
|
|
GLenum pname, GLint *params );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLTEXIMAGE1DPROC) ( GLenum target, GLint level,
|
|
GLint internalFormat,
|
|
GLsizei width, GLint border,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXIMAGE2DPROC) ( GLenum target, GLint level,
|
|
GLint internalFormat,
|
|
GLsizei width, GLsizei height,
|
|
GLint border, GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
typedef void (APIENTRYP PFNGLGETTEXIMAGEPROC) ( GLenum target, GLint level,
|
|
GLenum format, GLenum type,
|
|
GLvoid *pixels );
|
|
|
|
|
|
/* 1.1 functions */
|
|
|
|
typedef void (APIENTRYP PFNGLGENTEXTURESPROC) ( GLsizei n, GLuint *textures );
|
|
|
|
typedef void (APIENTRYP PFNGLDELETETEXTURESPROC) ( GLsizei n, const GLuint *textures);
|
|
|
|
typedef void (APIENTRYP PFNGLBINDTEXTUREPROC) ( GLenum target, GLuint texture );
|
|
|
|
typedef void (APIENTRYP PFNGLPRIORITIZETEXTURESPROC) ( GLsizei n,
|
|
const GLuint *textures,
|
|
const GLclampf *priorities );
|
|
|
|
typedef GLboolean (APIENTRYP PFNGLARETEXTURESRESIDENTPROC) ( GLsizei n,
|
|
const GLuint *textures,
|
|
GLboolean *residences );
|
|
|
|
typedef GLboolean (APIENTRYP PFNGLISTEXTUREPROC) ( GLuint texture );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLTEXSUBIMAGE1DPROC) ( GLenum target, GLint level,
|
|
GLint xoffset,
|
|
GLsizei width, GLenum format,
|
|
GLenum type, const GLvoid *pixels );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLTEXSUBIMAGE2DPROC) ( GLenum target, GLint level,
|
|
GLint xoffset, GLint yoffset,
|
|
GLsizei width, GLsizei height,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYTEXIMAGE1DPROC) ( GLenum target, GLint level,
|
|
GLenum internalformat,
|
|
GLint x, GLint y,
|
|
GLsizei width, GLint border );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYTEXIMAGE2DPROC) ( GLenum target, GLint level,
|
|
GLenum internalformat,
|
|
GLint x, GLint y,
|
|
GLsizei width, GLsizei height,
|
|
GLint border );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE1DPROC) ( GLenum target, GLint level,
|
|
GLint xoffset, GLint x, GLint y,
|
|
GLsizei width );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE2DPROC) ( GLenum target, GLint level,
|
|
GLint xoffset, GLint yoffset,
|
|
GLint x, GLint y,
|
|
GLsizei width, GLsizei height );
|
|
|
|
|
|
/*
|
|
* Evaluators
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLMAP1DPROC) ( GLenum target, GLdouble u1, GLdouble u2,
|
|
GLint stride,
|
|
GLint order, const GLdouble *points );
|
|
typedef void (APIENTRYP PFNGLMAP1FPROC) ( GLenum target, GLfloat u1, GLfloat u2,
|
|
GLint stride,
|
|
GLint order, const GLfloat *points );
|
|
|
|
typedef void (APIENTRYP PFNGLMAP2DPROC) ( GLenum target,
|
|
GLdouble u1, GLdouble u2, GLint ustride, GLint uorder,
|
|
GLdouble v1, GLdouble v2, GLint vstride, GLint vorder,
|
|
const GLdouble *points );
|
|
typedef void (APIENTRYP PFNGLMAP2FPROC) ( GLenum target,
|
|
GLfloat u1, GLfloat u2, GLint ustride, GLint uorder,
|
|
GLfloat v1, GLfloat v2, GLint vstride, GLint vorder,
|
|
const GLfloat *points );
|
|
|
|
typedef void (APIENTRYP PFNGLGETMAPDVPROC) ( GLenum target, GLenum query, GLdouble *v );
|
|
typedef void (APIENTRYP PFNGLGETMAPFVPROC) ( GLenum target, GLenum query, GLfloat *v );
|
|
typedef void (APIENTRYP PFNGLGETMAPIVPROC) ( GLenum target, GLenum query, GLint *v );
|
|
|
|
typedef void (APIENTRYP PFNGLEVALCOORD1DPROC) ( GLdouble u );
|
|
typedef void (APIENTRYP PFNGLEVALCOORD1FPROC) ( GLfloat u );
|
|
|
|
typedef void (APIENTRYP PFNGLEVALCOORD1DVPROC) ( const GLdouble *u );
|
|
typedef void (APIENTRYP PFNGLEVALCOORD1FVPROC) ( const GLfloat *u );
|
|
|
|
typedef void (APIENTRYP PFNGLEVALCOORD2DPROC) ( GLdouble u, GLdouble v );
|
|
typedef void (APIENTRYP PFNGLEVALCOORD2FPROC) ( GLfloat u, GLfloat v );
|
|
|
|
typedef void (APIENTRYP PFNGLEVALCOORD2DVPROC) ( const GLdouble *u );
|
|
typedef void (APIENTRYP PFNGLEVALCOORD2FVPROC) ( const GLfloat *u );
|
|
|
|
typedef void (APIENTRYP PFNGLMAPGRID1DPROC) ( GLint un, GLdouble u1, GLdouble u2 );
|
|
typedef void (APIENTRYP PFNGLMAPGRID1FPROC) ( GLint un, GLfloat u1, GLfloat u2 );
|
|
|
|
typedef void (APIENTRYP PFNGLMAPGRID2DPROC) ( GLint un, GLdouble u1, GLdouble u2,
|
|
GLint vn, GLdouble v1, GLdouble v2 );
|
|
typedef void (APIENTRYP PFNGLMAPGRID2FPROC) ( GLint un, GLfloat u1, GLfloat u2,
|
|
GLint vn, GLfloat v1, GLfloat v2 );
|
|
|
|
typedef void (APIENTRYP PFNGLEVALPOINT1PROC) ( GLint i );
|
|
|
|
typedef void (APIENTRYP PFNGLEVALPOINT2PROC) ( GLint i, GLint j );
|
|
|
|
typedef void (APIENTRYP PFNGLEVALMESH1PROC) ( GLenum mode, GLint i1, GLint i2 );
|
|
|
|
typedef void (APIENTRYP PFNGLEVALMESH2PROC) ( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 );
|
|
|
|
|
|
/*
|
|
* Fog
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLFOGFPROC) ( GLenum pname, GLfloat param );
|
|
|
|
typedef void (APIENTRYP PFNGLFOGIPROC) ( GLenum pname, GLint param );
|
|
|
|
typedef void (APIENTRYP PFNGLFOGFVPROC) ( GLenum pname, const GLfloat *params );
|
|
|
|
typedef void (APIENTRYP PFNGLFOGIVPROC) ( GLenum pname, const GLint *params );
|
|
|
|
|
|
/*
|
|
* Selection and Feedback
|
|
*/
|
|
|
|
typedef void (APIENTRYP PFNGLFEEDBACKBUFFERPROC) ( GLsizei size, GLenum type, GLfloat *buffer );
|
|
|
|
typedef void (APIENTRYP PFNGLPASSTHROUGHPROC) ( GLfloat token );
|
|
|
|
typedef void (APIENTRYP PFNGLSELECTBUFFERPROC) ( GLsizei size, GLuint *buffer );
|
|
|
|
typedef void (APIENTRYP PFNGLINITNAMESPROC) ( void );
|
|
|
|
typedef void (APIENTRYP PFNGLLOADNAMEPROC) ( GLuint name );
|
|
|
|
typedef void (APIENTRYP PFNGLPUSHNAMEPROC) ( GLuint name );
|
|
|
|
typedef void (APIENTRYP PFNGLPOPNAMEPROC) ( void );
|
|
#endif
|
|
|
|
|
|
/*
|
|
* OpenGL 1.2
|
|
*/
|
|
|
|
#define GL_RESCALE_NORMAL 0x803A
|
|
#define GL_CLAMP_TO_EDGE 0x812F
|
|
#define GL_MAX_ELEMENTS_VERTICES 0x80E8
|
|
#define GL_MAX_ELEMENTS_INDICES 0x80E9
|
|
#define GL_BGR 0x80E0
|
|
#define GL_BGRA 0x80E1
|
|
#define GL_UNSIGNED_BYTE_3_3_2 0x8032
|
|
#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
|
|
#define GL_UNSIGNED_SHORT_5_6_5 0x8363
|
|
#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
|
|
#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
|
|
#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
|
|
#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
|
|
#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
|
|
#define GL_UNSIGNED_INT_8_8_8_8 0x8035
|
|
#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
|
|
#define GL_UNSIGNED_INT_10_10_10_2 0x8036
|
|
#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
|
|
#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
|
|
#define GL_SINGLE_COLOR 0x81F9
|
|
#define GL_SEPARATE_SPECULAR_COLOR 0x81FA
|
|
#define GL_TEXTURE_MIN_LOD 0x813A
|
|
#define GL_TEXTURE_MAX_LOD 0x813B
|
|
#define GL_TEXTURE_BASE_LEVEL 0x813C
|
|
#define GL_TEXTURE_MAX_LEVEL 0x813D
|
|
#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
|
|
#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
|
|
#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
|
|
#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
|
|
#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
|
|
#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
|
|
#define GL_PACK_SKIP_IMAGES 0x806B
|
|
#define GL_PACK_IMAGE_HEIGHT 0x806C
|
|
#define GL_UNPACK_SKIP_IMAGES 0x806D
|
|
#define GL_UNPACK_IMAGE_HEIGHT 0x806E
|
|
#define GL_TEXTURE_3D 0x806F
|
|
#define GL_PROXY_TEXTURE_3D 0x8070
|
|
#define GL_TEXTURE_DEPTH 0x8071
|
|
#define GL_TEXTURE_WRAP_R 0x8072
|
|
#define GL_MAX_3D_TEXTURE_SIZE 0x8073
|
|
#define GL_TEXTURE_BINDING_3D 0x806A
|
|
|
|
#ifndef SDL_OPENGL_1_NO_PROTOTYPES
|
|
|
|
GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start,
|
|
GLuint end, GLsizei count, GLenum type, const GLvoid *indices );
|
|
|
|
GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level,
|
|
GLint internalFormat,
|
|
GLsizei width, GLsizei height,
|
|
GLsizei depth, GLint border,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level,
|
|
GLint xoffset, GLint yoffset,
|
|
GLint zoffset, GLsizei width,
|
|
GLsizei height, GLsizei depth,
|
|
GLenum format,
|
|
GLenum type, const GLvoid *pixels);
|
|
|
|
GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level,
|
|
GLint xoffset, GLint yoffset,
|
|
GLint zoffset, GLint x,
|
|
GLint y, GLsizei width,
|
|
GLsizei height );
|
|
|
|
#endif
|
|
#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS
|
|
|
|
typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) ( GLenum mode, GLuint start,
|
|
GLuint end, GLsizei count, GLenum type, const GLvoid *indices );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) ( GLenum target, GLint level,
|
|
GLint internalFormat,
|
|
GLsizei width, GLsizei height,
|
|
GLsizei depth, GLint border,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *pixels );
|
|
|
|
typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) ( GLenum target, GLint level,
|
|
GLint xoffset, GLint yoffset,
|
|
GLint zoffset, GLsizei width,
|
|
GLsizei height, GLsizei depth,
|
|
GLenum format,
|
|
GLenum type, const GLvoid *pixels);
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) ( GLenum target, GLint level,
|
|
GLint xoffset, GLint yoffset,
|
|
GLint zoffset, GLint x,
|
|
GLint y, GLsizei width,
|
|
GLsizei height );
|
|
|
|
#endif
|
|
|
|
typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
|
|
typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
|
|
typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
|
|
typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
|
|
|
|
|
|
/*
|
|
* GL_ARB_imaging
|
|
*/
|
|
|
|
#define GL_CONSTANT_COLOR 0x8001
|
|
#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
|
|
#define GL_CONSTANT_ALPHA 0x8003
|
|
#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
|
|
#define GL_COLOR_TABLE 0x80D0
|
|
#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1
|
|
#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2
|
|
#define GL_PROXY_COLOR_TABLE 0x80D3
|
|
#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4
|
|
#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5
|
|
#define GL_COLOR_TABLE_SCALE 0x80D6
|
|
#define GL_COLOR_TABLE_BIAS 0x80D7
|
|
#define GL_COLOR_TABLE_FORMAT 0x80D8
|
|
#define GL_COLOR_TABLE_WIDTH 0x80D9
|
|
#define GL_COLOR_TABLE_RED_SIZE 0x80DA
|
|
#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB
|
|
#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC
|
|
#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD
|
|
#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE
|
|
#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF
|
|
#define GL_CONVOLUTION_1D 0x8010
|
|
#define GL_CONVOLUTION_2D 0x8011
|
|
#define GL_SEPARABLE_2D 0x8012
|
|
#define GL_CONVOLUTION_BORDER_MODE 0x8013
|
|
#define GL_CONVOLUTION_FILTER_SCALE 0x8014
|
|
#define GL_CONVOLUTION_FILTER_BIAS 0x8015
|
|
#define GL_REDUCE 0x8016
|
|
#define GL_CONVOLUTION_FORMAT 0x8017
|
|
#define GL_CONVOLUTION_WIDTH 0x8018
|
|
#define GL_CONVOLUTION_HEIGHT 0x8019
|
|
#define GL_MAX_CONVOLUTION_WIDTH 0x801A
|
|
#define GL_MAX_CONVOLUTION_HEIGHT 0x801B
|
|
#define GL_POST_CONVOLUTION_RED_SCALE 0x801C
|
|
#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D
|
|
#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E
|
|
#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F
|
|
#define GL_POST_CONVOLUTION_RED_BIAS 0x8020
|
|
#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021
|
|
#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022
|
|
#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023
|
|
#define GL_CONSTANT_BORDER 0x8151
|
|
#define GL_REPLICATE_BORDER 0x8153
|
|
#define GL_CONVOLUTION_BORDER_COLOR 0x8154
|
|
#define GL_COLOR_MATRIX 0x80B1
|
|
#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2
|
|
#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3
|
|
#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4
|
|
#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5
|
|
#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6
|
|
#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7
|
|
#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8
|
|
#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9
|
|
#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA
|
|
#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB
|
|
#define GL_HISTOGRAM 0x8024
|
|
#define GL_PROXY_HISTOGRAM 0x8025
|
|
#define GL_HISTOGRAM_WIDTH 0x8026
|
|
#define GL_HISTOGRAM_FORMAT 0x8027
|
|
#define GL_HISTOGRAM_RED_SIZE 0x8028
|
|
#define GL_HISTOGRAM_GREEN_SIZE 0x8029
|
|
#define GL_HISTOGRAM_BLUE_SIZE 0x802A
|
|
#define GL_HISTOGRAM_ALPHA_SIZE 0x802B
|
|
#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C
|
|
#define GL_HISTOGRAM_SINK 0x802D
|
|
#define GL_MINMAX 0x802E
|
|
#define GL_MINMAX_FORMAT 0x802F
|
|
#define GL_MINMAX_SINK 0x8030
|
|
#define GL_TABLE_TOO_LARGE 0x8031
|
|
#define GL_BLEND_EQUATION 0x8009
|
|
#define GL_MIN 0x8007
|
|
#define GL_MAX 0x8008
|
|
#define GL_FUNC_ADD 0x8006
|
|
#define GL_FUNC_SUBTRACT 0x800A
|
|
#define GL_FUNC_REVERSE_SUBTRACT 0x800B
|
|
#define GL_BLEND_COLOR 0x8005
|
|
|
|
|
|
#ifndef SDL_OPENGL_1_NO_PROTOTYPES
|
|
|
|
GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum internalformat,
|
|
GLsizei width, GLenum format,
|
|
GLenum type, const GLvoid *table );
|
|
|
|
GLAPI void GLAPIENTRY glColorSubTable( GLenum target,
|
|
GLsizei start, GLsizei count,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *data );
|
|
|
|
GLAPI void GLAPIENTRY glColorTableParameteriv(GLenum target, GLenum pname,
|
|
const GLint *params);
|
|
|
|
GLAPI void GLAPIENTRY glColorTableParameterfv(GLenum target, GLenum pname,
|
|
const GLfloat *params);
|
|
|
|
GLAPI void GLAPIENTRY glCopyColorSubTable( GLenum target, GLsizei start,
|
|
GLint x, GLint y, GLsizei width );
|
|
|
|
GLAPI void GLAPIENTRY glCopyColorTable( GLenum target, GLenum internalformat,
|
|
GLint x, GLint y, GLsizei width );
|
|
|
|
GLAPI void GLAPIENTRY glGetColorTable( GLenum target, GLenum format,
|
|
GLenum type, GLvoid *table );
|
|
|
|
GLAPI void GLAPIENTRY glGetColorTableParameterfv( GLenum target, GLenum pname,
|
|
GLfloat *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetColorTableParameteriv( GLenum target, GLenum pname,
|
|
GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glBlendEquation( GLenum mode );
|
|
|
|
GLAPI void GLAPIENTRY glBlendColor( GLclampf red, GLclampf green,
|
|
GLclampf blue, GLclampf alpha );
|
|
|
|
GLAPI void GLAPIENTRY glHistogram( GLenum target, GLsizei width,
|
|
GLenum internalformat, GLboolean sink );
|
|
|
|
GLAPI void GLAPIENTRY glResetHistogram( GLenum target );
|
|
|
|
GLAPI void GLAPIENTRY glGetHistogram( GLenum target, GLboolean reset,
|
|
GLenum format, GLenum type,
|
|
GLvoid *values );
|
|
|
|
GLAPI void GLAPIENTRY glGetHistogramParameterfv( GLenum target, GLenum pname,
|
|
GLfloat *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetHistogramParameteriv( GLenum target, GLenum pname,
|
|
GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glMinmax( GLenum target, GLenum internalformat,
|
|
GLboolean sink );
|
|
|
|
GLAPI void GLAPIENTRY glResetMinmax( GLenum target );
|
|
|
|
GLAPI void GLAPIENTRY glGetMinmax( GLenum target, GLboolean reset,
|
|
GLenum format, GLenum types,
|
|
GLvoid *values );
|
|
|
|
GLAPI void GLAPIENTRY glGetMinmaxParameterfv( GLenum target, GLenum pname,
|
|
GLfloat *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetMinmaxParameteriv( GLenum target, GLenum pname,
|
|
GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glConvolutionFilter1D( GLenum target,
|
|
GLenum internalformat, GLsizei width, GLenum format, GLenum type,
|
|
const GLvoid *image );
|
|
|
|
GLAPI void GLAPIENTRY glConvolutionFilter2D( GLenum target,
|
|
GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
|
|
GLenum type, const GLvoid *image );
|
|
|
|
GLAPI void GLAPIENTRY glConvolutionParameterf( GLenum target, GLenum pname,
|
|
GLfloat params );
|
|
|
|
GLAPI void GLAPIENTRY glConvolutionParameterfv( GLenum target, GLenum pname,
|
|
const GLfloat *params );
|
|
|
|
GLAPI void GLAPIENTRY glConvolutionParameteri( GLenum target, GLenum pname,
|
|
GLint params );
|
|
|
|
GLAPI void GLAPIENTRY glConvolutionParameteriv( GLenum target, GLenum pname,
|
|
const GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glCopyConvolutionFilter1D( GLenum target,
|
|
GLenum internalformat, GLint x, GLint y, GLsizei width );
|
|
|
|
GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target,
|
|
GLenum internalformat, GLint x, GLint y, GLsizei width,
|
|
GLsizei height);
|
|
|
|
GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format,
|
|
GLenum type, GLvoid *image );
|
|
|
|
GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname,
|
|
GLfloat *params );
|
|
|
|
GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname,
|
|
GLint *params );
|
|
|
|
GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target,
|
|
GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
|
|
GLenum type, const GLvoid *row, const GLvoid *column );
|
|
|
|
GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format,
|
|
GLenum type, GLvoid *row, GLvoid *column, GLvoid *span );
|
|
|
|
#endif
|
|
#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS
|
|
|
|
typedef void (APIENTRYP PFNGLCOLORTABLEPROC) ( GLenum target, GLenum internalformat,
|
|
GLsizei width, GLenum format,
|
|
GLenum type, const GLvoid *table );
|
|
|
|
typedef void (APIENTRYP PFNGLCOLORSUBTABLEPROC) ( GLenum target,
|
|
GLsizei start, GLsizei count,
|
|
GLenum format, GLenum type,
|
|
const GLvoid *data );
|
|
|
|
typedef void (APIENTRYP PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname,
|
|
const GLint *params);
|
|
|
|
typedef void (APIENTRYP PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname,
|
|
const GLfloat *params);
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYCOLORSUBTABLEPROC) ( GLenum target, GLsizei start,
|
|
GLint x, GLint y, GLsizei width );
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYCOLORTABLEPROC) ( GLenum target, GLenum internalformat,
|
|
GLint x, GLint y, GLsizei width );
|
|
|
|
typedef void (APIENTRYP PFNGLGETCOLORTABLEPROC) ( GLenum target, GLenum format,
|
|
GLenum type, GLvoid *table );
|
|
|
|
typedef void (APIENTRYP PFNGLGETCOLORTABLEPARAMETERFVPROC) ( GLenum target, GLenum pname,
|
|
GLfloat *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETCOLORTABLEPARAMETERIVPROC) ( GLenum target, GLenum pname,
|
|
GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) ( GLenum mode );
|
|
|
|
typedef void (APIENTRYP PFNGLBLENDCOLORPROC) ( GLclampf red, GLclampf green,
|
|
GLclampf blue, GLclampf alpha );
|
|
|
|
typedef void (APIENTRYP PFNGLHISTOGRAMPROC) ( GLenum target, GLsizei width,
|
|
GLenum internalformat, GLboolean sink );
|
|
|
|
typedef void (APIENTRYP PFNGLRESETHISTOGRAMPROC) ( GLenum target );
|
|
|
|
typedef void (APIENTRYP PFNGLGETHISTOGRAMPROC) ( GLenum target, GLboolean reset,
|
|
GLenum format, GLenum type,
|
|
GLvoid *values );
|
|
|
|
typedef void (APIENTRYP PFNGLGETHISTOGRAMPARAMETERFVPROC) ( GLenum target, GLenum pname,
|
|
GLfloat *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETHISTOGRAMPARAMETERIVPROC) ( GLenum target, GLenum pname,
|
|
GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLMINMAXPROC) ( GLenum target, GLenum internalformat,
|
|
GLboolean sink );
|
|
|
|
typedef void (APIENTRYP PFNGLRESETMINMAXPROC) ( GLenum target );
|
|
|
|
typedef void (APIENTRYP PFNGLGETMINMAXPROC) ( GLenum target, GLboolean reset,
|
|
GLenum format, GLenum types,
|
|
GLvoid *values );
|
|
|
|
typedef void (APIENTRYP PFNGLGETMINMAXPARAMETERFVPROC) ( GLenum target, GLenum pname,
|
|
GLfloat *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETMINMAXPARAMETERIVPROC) ( GLenum target, GLenum pname,
|
|
GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLCONVOLUTIONFILTER1DPROC) ( GLenum target,
|
|
GLenum internalformat, GLsizei width, GLenum format, GLenum type,
|
|
const GLvoid *image );
|
|
|
|
typedef void (APIENTRYP PFNGLCONVOLUTIONFILTER2DPROC) ( GLenum target,
|
|
GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
|
|
GLenum type, const GLvoid *image );
|
|
|
|
typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERFPROC) ( GLenum target, GLenum pname,
|
|
GLfloat params );
|
|
|
|
typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERFVPROC) ( GLenum target, GLenum pname,
|
|
const GLfloat *params );
|
|
|
|
typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERIPROC) ( GLenum target, GLenum pname,
|
|
GLint params );
|
|
|
|
typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERIVPROC) ( GLenum target, GLenum pname,
|
|
const GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYCONVOLUTIONFILTER1DPROC) ( GLenum target,
|
|
GLenum internalformat, GLint x, GLint y, GLsizei width );
|
|
|
|
typedef void (APIENTRYP PFNGLCOPYCONVOLUTIONFILTER2DPROC) ( GLenum target,
|
|
GLenum internalformat, GLint x, GLint y, GLsizei width,
|
|
GLsizei height);
|
|
|
|
typedef void (APIENTRYP PFNGLGETCONVOLUTIONFILTERPROC) ( GLenum target, GLenum format,
|
|
GLenum type, GLvoid *image );
|
|
|
|
typedef void (APIENTRYP PFNGLGETCONVOLUTIONPARAMETERFVPROC) ( GLenum target, GLenum pname,
|
|
GLfloat *params );
|
|
|
|
typedef void (APIENTRYP PFNGLGETCONVOLUTIONPARAMETERIVPROC) ( GLenum target, GLenum pname,
|
|
GLint *params );
|
|
|
|
typedef void (APIENTRYP PFNGLSEPARABLEFILTER2DPROC) ( GLenum target,
|
|
GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
|
|
GLenum type, const GLvoid *row, const GLvoid *column );
|
|
|
|
typedef void (APIENTRYP PFNGLGETSEPARABLEFILTERPROC) ( GLenum target, GLenum format,
|
|
GLenum type, GLvoid *row, GLvoid *column, GLvoid *span );
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/*
|
|
* OpenGL 1.3
|
|
*/
|
|
|
|
/* multitexture */
|
|
#define GL_TEXTURE0 0x84C0
|
|
#define GL_TEXTURE1 0x84C1
|
|
#define GL_TEXTURE2 0x84C2
|
|
#define GL_TEXTURE3 0x84C3
|
|
#define GL_TEXTURE4 0x84C4
|
|
#define GL_TEXTURE5 0x84C5
|
|
#define GL_TEXTURE6 0x84C6
|
|
#define GL_TEXTURE7 0x84C7
|
|
#define GL_TEXTURE8 0x84C8
|
|
#define GL_TEXTURE9 0x84C9
|
|
#define GL_TEXTURE10 0x84CA
|
|
#define GL_TEXTURE11 0x84CB
|
|
#define GL_TEXTURE12 0x84CC
|
|
#define GL_TEXTURE13 0x84CD
|
|
#define GL_TEXTURE14 0x84CE
|
|
#define GL_TEXTURE15 0x84CF
|
|
#define GL_TEXTURE16 0x84D0
|
|
#define GL_TEXTURE17 0x84D1
|
|
#define GL_TEXTURE18 0x84D2
|
|
#define GL_TEXTURE19 0x84D3
|
|
#define GL_TEXTURE20 0x84D4
|
|
#define GL_TEXTURE21 0x84D5
|
|
#define GL_TEXTURE22 0x84D6
|
|
#define GL_TEXTURE23 0x84D7
|
|
#define GL_TEXTURE24 0x84D8
|
|
#define GL_TEXTURE25 0x84D9
|
|
#define GL_TEXTURE26 0x84DA
|
|
#define GL_TEXTURE27 0x84DB
|
|
#define GL_TEXTURE28 0x84DC
|
|
#define GL_TEXTURE29 0x84DD
|
|
#define GL_TEXTURE30 0x84DE
|
|
#define GL_TEXTURE31 0x84DF
|
|
#define GL_ACTIVE_TEXTURE 0x84E0
|
|
#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
|
|
#define GL_MAX_TEXTURE_UNITS 0x84E2
|
|
/* texture_cube_map */
|
|
#define GL_NORMAL_MAP 0x8511
|
|
#define GL_REFLECTION_MAP 0x8512
|
|
#define GL_TEXTURE_CUBE_MAP 0x8513
|
|
#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
|
|
#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
|
|
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
|
|
#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
|
|
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
|
|
#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
|
|
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
|
|
#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B
|
|
#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
|
|
/* texture_compression */
|
|
#define GL_COMPRESSED_ALPHA 0x84E9
|
|
#define GL_COMPRESSED_LUMINANCE 0x84EA
|
|
#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
|
|
#define GL_COMPRESSED_INTENSITY 0x84EC
|
|
#define GL_COMPRESSED_RGB 0x84ED
|
|
#define GL_COMPRESSED_RGBA 0x84EE
|
|
#define GL_TEXTURE_COMPRESSION_HINT 0x84EF
|
|
#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
|
|
#define GL_TEXTURE_COMPRESSED 0x86A1
|
|
#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
|
|
#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
|
|
/* multisample */
|
|
#define GL_MULTISAMPLE 0x809D
|
|
#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
|
|
#define GL_SAMPLE_ALPHA_TO_ONE 0x809F
|
|
#define GL_SAMPLE_COVERAGE 0x80A0
|
|
#define GL_SAMPLE_BUFFERS 0x80A8
|
|
#define GL_SAMPLES 0x80A9
|
|
#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
|
|
#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
|
|
#define GL_MULTISAMPLE_BIT 0x20000000
|
|
/* transpose_matrix */
|
|
#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
|
|
#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
|
|
#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5
|
|
#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6
|
|
/* texture_env_combine */
|
|
#define GL_COMBINE 0x8570
|
|
#define GL_COMBINE_RGB 0x8571
|
|
#define GL_COMBINE_ALPHA 0x8572
|
|
#define GL_SOURCE0_RGB 0x8580
|
|
#define GL_SOURCE1_RGB 0x8581
|
|
#define GL_SOURCE2_RGB 0x8582
|
|
#define GL_SOURCE0_ALPHA 0x8588
|
|
#define GL_SOURCE1_ALPHA 0x8589
|
|
#define GL_SOURCE2_ALPHA 0x858A
|
|
#define GL_OPERAND0_RGB 0x8590
|
|
#define GL_OPERAND1_RGB 0x8591
|
|
#define GL_OPERAND2_RGB 0x8592
|
|
#define GL_OPERAND0_ALPHA 0x8598
|
|
#define GL_OPERAND1_ALPHA 0x8599
|
|
#define GL_OPERAND2_ALPHA 0x859A
|
|
#define GL_RGB_SCALE 0x8573
|
|
#define GL_ADD_SIGNED 0x8574
|
|
#define GL_INTERPOLATE 0x8575
|
|
#define GL_SUBTRACT 0x84E7
|
|
#define GL_CONSTANT 0x8576
|
|
#define GL_PRIMARY_COLOR 0x8577
|
|
#define GL_PREVIOUS 0x8578
|
|
/* texture_env_dot3 */
|
|
#define GL_DOT3_RGB 0x86AE
|
|
#define GL_DOT3_RGBA 0x86AF
|
|
/* texture_border_clamp */
|
|
#define GL_CLAMP_TO_BORDER 0x812D
|
|
|
|
#ifndef SDL_OPENGL_1_NO_PROTOTYPES
|
|
|
|
GLAPI void GLAPIENTRY glActiveTexture( GLenum texture );
|
|
|
|
GLAPI void GLAPIENTRY glClientActiveTexture( GLenum texture );
|
|
|
|
GLAPI void GLAPIENTRY glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data );
|
|
|
|
GLAPI void GLAPIENTRY glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data );
|
|
|
|
GLAPI void GLAPIENTRY glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data );
|
|
|
|
GLAPI void GLAPIENTRY glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data );
|
|
|
|
GLAPI void GLAPIENTRY glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data );
|
|
|
|
GLAPI void GLAPIENTRY glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data );
|
|
|
|
GLAPI void GLAPIENTRY glGetCompressedTexImage( GLenum target, GLint lod, GLvoid *img );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1d( GLenum target, GLdouble s );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1dv( GLenum target, const GLdouble *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1f( GLenum target, GLfloat s );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1fv( GLenum target, const GLfloat *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1i( GLenum target, GLint s );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1iv( GLenum target, const GLint *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1s( GLenum target, GLshort s );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1sv( GLenum target, const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2dv( GLenum target, const GLdouble *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2fv( GLenum target, const GLfloat *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2i( GLenum target, GLint s, GLint t );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2iv( GLenum target, const GLint *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2s( GLenum target, GLshort s, GLshort t );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2sv( GLenum target, const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3dv( GLenum target, const GLdouble *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3fv( GLenum target, const GLfloat *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3iv( GLenum target, const GLint *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3sv( GLenum target, const GLshort *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4dv( GLenum target, const GLdouble *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4fv( GLenum target, const GLfloat *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4iv( GLenum target, const GLint *v );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q );
|
|
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4sv( GLenum target, const GLshort *v );
|
|
|
|
|
|
GLAPI void GLAPIENTRY glLoadTransposeMatrixd( const GLdouble m[16] );
|
|
|
|
GLAPI void GLAPIENTRY glLoadTransposeMatrixf( const GLfloat m[16] );
|
|
|
|
GLAPI void GLAPIENTRY glMultTransposeMatrixd( const GLdouble m[16] );
|
|
|
|
GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] );
|
|
|
|
GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean invert );
|
|
|
|
#endif
|
|
#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS
|
|
|
|
typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) ( GLenum texture );
|
|
|
|
typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREPROC) ( GLenum texture );
|
|
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) ( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data );
|
|
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) ( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data );
|
|
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) ( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data );
|
|
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) ( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data );
|
|
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data );
|
|
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data );
|
|
|
|
typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) ( GLenum target, GLint lod, GLvoid *img );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DPROC) ( GLenum target, GLdouble s );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVPROC) ( GLenum target, const GLdouble *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1FPROC) ( GLenum target, GLfloat s );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVPROC) ( GLenum target, const GLfloat *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1IPROC) ( GLenum target, GLint s );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVPROC) ( GLenum target, const GLint *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1SPROC) ( GLenum target, GLshort s );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVPROC) ( GLenum target, const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2DPROC) ( GLenum target, GLdouble s, GLdouble t );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVPROC) ( GLenum target, const GLdouble *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2FPROC) ( GLenum target, GLfloat s, GLfloat t );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVPROC) ( GLenum target, const GLfloat *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2IPROC) ( GLenum target, GLint s, GLint t );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVPROC) ( GLenum target, const GLint *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2SPROC) ( GLenum target, GLshort s, GLshort t );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVPROC) ( GLenum target, const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3DPROC) ( GLenum target, GLdouble s, GLdouble t, GLdouble r );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVPROC) ( GLenum target, const GLdouble *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3FPROC) ( GLenum target, GLfloat s, GLfloat t, GLfloat r );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVPROC) ( GLenum target, const GLfloat *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3IPROC) ( GLenum target, GLint s, GLint t, GLint r );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVPROC) ( GLenum target, const GLint *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3SPROC) ( GLenum target, GLshort s, GLshort t, GLshort r );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVPROC) ( GLenum target, const GLshort *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4DPROC) ( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVPROC) ( GLenum target, const GLdouble *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4FPROC) ( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVPROC) ( GLenum target, const GLfloat *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4IPROC) ( GLenum target, GLint s, GLint t, GLint r, GLint q );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVPROC) ( GLenum target, const GLint *v );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4SPROC) ( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVPROC) ( GLenum target, const GLshort *v );
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXDPROC) ( const GLdouble m[16] );
|
|
|
|
typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXFPROC) ( const GLfloat m[16] );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXDPROC) ( const GLdouble m[16] );
|
|
|
|
typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXFPROC) ( const GLfloat m[16] );
|
|
|
|
typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) ( GLclampf value, GLboolean invert );
|
|
|
|
#endif
|
|
|
|
|
|
typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture);
|
|
typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert);
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
|
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
|
|
typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img);
|
|
|
|
|
|
|
|
/*
|
|
* GL_ARB_multitexture (ARB extension 1 and OpenGL 1.2.1)
|
|
*/
|
|
#ifndef GL_ARB_multitexture
|
|
#define GL_ARB_multitexture 1
|
|
|
|
#define GL_TEXTURE0_ARB 0x84C0
|
|
#define GL_TEXTURE1_ARB 0x84C1
|
|
#define GL_TEXTURE2_ARB 0x84C2
|
|
#define GL_TEXTURE3_ARB 0x84C3
|
|
#define GL_TEXTURE4_ARB 0x84C4
|
|
#define GL_TEXTURE5_ARB 0x84C5
|
|
#define GL_TEXTURE6_ARB 0x84C6
|
|
#define GL_TEXTURE7_ARB 0x84C7
|
|
#define GL_TEXTURE8_ARB 0x84C8
|
|
#define GL_TEXTURE9_ARB 0x84C9
|
|
#define GL_TEXTURE10_ARB 0x84CA
|
|
#define GL_TEXTURE11_ARB 0x84CB
|
|
#define GL_TEXTURE12_ARB 0x84CC
|
|
#define GL_TEXTURE13_ARB 0x84CD
|
|
#define GL_TEXTURE14_ARB 0x84CE
|
|
#define GL_TEXTURE15_ARB 0x84CF
|
|
#define GL_TEXTURE16_ARB 0x84D0
|
|
#define GL_TEXTURE17_ARB 0x84D1
|
|
#define GL_TEXTURE18_ARB 0x84D2
|
|
#define GL_TEXTURE19_ARB 0x84D3
|
|
#define GL_TEXTURE20_ARB 0x84D4
|
|
#define GL_TEXTURE21_ARB 0x84D5
|
|
#define GL_TEXTURE22_ARB 0x84D6
|
|
#define GL_TEXTURE23_ARB 0x84D7
|
|
#define GL_TEXTURE24_ARB 0x84D8
|
|
#define GL_TEXTURE25_ARB 0x84D9
|
|
#define GL_TEXTURE26_ARB 0x84DA
|
|
#define GL_TEXTURE27_ARB 0x84DB
|
|
#define GL_TEXTURE28_ARB 0x84DC
|
|
#define GL_TEXTURE29_ARB 0x84DD
|
|
#define GL_TEXTURE30_ARB 0x84DE
|
|
#define GL_TEXTURE31_ARB 0x84DF
|
|
#define GL_ACTIVE_TEXTURE_ARB 0x84E0
|
|
#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1
|
|
#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2
|
|
|
|
#ifndef SDL_OPENGL_1_NO_PROTOTYPES
|
|
|
|
GLAPI void GLAPIENTRY glActiveTextureARB(GLenum texture);
|
|
GLAPI void GLAPIENTRY glClientActiveTextureARB(GLenum texture);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1dARB(GLenum target, GLdouble s);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1dvARB(GLenum target, const GLdouble *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1fARB(GLenum target, GLfloat s);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1fvARB(GLenum target, const GLfloat *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1iARB(GLenum target, GLint s);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1ivARB(GLenum target, const GLint *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1sARB(GLenum target, GLshort s);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord1svARB(GLenum target, const GLshort *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2dvARB(GLenum target, const GLdouble *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2fvARB(GLenum target, const GLfloat *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2iARB(GLenum target, GLint s, GLint t);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
|
|
GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v);
|
|
|
|
#endif
|
|
#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS
|
|
|
|
typedef void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture);
|
|
typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v);
|
|
|
|
#endif
|
|
|
|
typedef void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture);
|
|
typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
|
|
typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v);
|
|
|
|
#endif /* GL_ARB_multitexture */
|
|
|
|
|
|
|
|
/*
|
|
* Define this token if you want "old-style" header file behaviour (extensions
|
|
* defined in gl.h). Otherwise, extensions will be included from glext.h.
|
|
*/
|
|
#if !defined(NO_SDL_GLEXT) && !defined(GL_GLEXT_LEGACY)
|
|
#include <SDL3/SDL_opengl_glext.h>
|
|
#endif /* GL_GLEXT_LEGACY */
|
|
|
|
|
|
|
|
/**********************************************************************
|
|
* Begin system-specific stuff
|
|
*/
|
|
#if defined(PRAGMA_EXPORT_SUPPORTED)
|
|
#pragma export off
|
|
#endif
|
|
|
|
/*
|
|
* End system-specific stuff
|
|
**********************************************************************/
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* __gl_h_ */
|
|
|
|
#endif /* !SDL_PLATFORM_IOS */
|
|
|
|
#endif /* SDL_opengl_h_ */
|