summaryrefslogtreecommitdiff
path: root/src/SFML/Graphics/GLExtensions.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/SFML/Graphics/GLExtensions.hpp')
-rw-r--r--src/SFML/Graphics/GLExtensions.hpp67
1 files changed, 66 insertions, 1 deletions
diff --git a/src/SFML/Graphics/GLExtensions.hpp b/src/SFML/Graphics/GLExtensions.hpp
index 2110bd9..687cf37 100644
--- a/src/SFML/Graphics/GLExtensions.hpp
+++ b/src/SFML/Graphics/GLExtensions.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2017 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2018 Laurent Gomila (laurent@sfml-dev.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.
@@ -53,6 +53,19 @@
#define GLEXT_GL_CLAMP GL_CLAMP_TO_EDGE
#define GLEXT_GL_CLAMP_TO_EDGE GL_CLAMP_TO_EDGE
+ // Core since 1.1
+ // 1.1 does not support GL_STREAM_DRAW so we just define it to GL_DYNAMIC_DRAW
+ #define GLEXT_vertex_buffer_object true
+ #define GLEXT_GL_ARRAY_BUFFER GL_ARRAY_BUFFER
+ #define GLEXT_GL_DYNAMIC_DRAW GL_DYNAMIC_DRAW
+ #define GLEXT_GL_STATIC_DRAW GL_STATIC_DRAW
+ #define GLEXT_GL_STREAM_DRAW GL_DYNAMIC_DRAW
+ #define GLEXT_glBindBuffer glBindBuffer
+ #define GLEXT_glBufferData glBufferData
+ #define GLEXT_glBufferSubData glBufferSubData
+ #define GLEXT_glDeleteBuffers glDeleteBuffers
+ #define GLEXT_glGenBuffers glGenBuffers
+
// The following extensions are listed chronologically
// Extension macro first, followed by tokens then
// functions according to the corresponding specification
@@ -111,6 +124,18 @@
#define GLEXT_GL_FRAMEBUFFER_BINDING GL_FRAMEBUFFER_BINDING_OES
#define GLEXT_GL_INVALID_FRAMEBUFFER_OPERATION GL_INVALID_FRAMEBUFFER_OPERATION_OES
+ // Core since 3.0
+ #define GLEXT_packed_depth_stencil false
+
+ // Core since 3.0
+ #define GLEXT_framebuffer_blit false
+
+ // Core since 3.0
+ #define GLEXT_framebuffer_multisample false
+
+ // Core since 3.0 - NV_copy_buffer
+ #define GLEXT_copy_buffer false
+
// Core since 3.0 - EXT_sRGB
#ifdef GL_EXT_sRGB
#define GLEXT_texture_sRGB GL_EXT_sRGB
@@ -165,6 +190,22 @@
#define GLEXT_blend_func_separate sfogl_ext_EXT_blend_func_separate
#define GLEXT_glBlendFuncSeparate glBlendFuncSeparateEXT
+ // Core since 1.5 - ARB_vertex_buffer_object
+ #define GLEXT_vertex_buffer_object sfogl_ext_ARB_vertex_buffer_object
+ #define GLEXT_GL_ARRAY_BUFFER GL_ARRAY_BUFFER_ARB
+ #define GLEXT_GL_DYNAMIC_DRAW GL_DYNAMIC_DRAW_ARB
+ #define GLEXT_GL_READ_ONLY GL_READ_ONLY_ARB
+ #define GLEXT_GL_STATIC_DRAW GL_STATIC_DRAW_ARB
+ #define GLEXT_GL_STREAM_DRAW GL_STREAM_DRAW_ARB
+ #define GLEXT_GL_WRITE_ONLY GL_WRITE_ONLY_ARB
+ #define GLEXT_glBindBuffer glBindBufferARB
+ #define GLEXT_glBufferData glBufferDataARB
+ #define GLEXT_glBufferSubData glBufferSubDataARB
+ #define GLEXT_glDeleteBuffers glDeleteBuffersARB
+ #define GLEXT_glGenBuffers glGenBuffersARB
+ #define GLEXT_glMapBuffer glMapBufferARB
+ #define GLEXT_glUnmapBuffer glUnmapBufferARB
+
// Core since 2.0 - ARB_shading_language_100
#define GLEXT_shading_language_100 sfogl_ext_ARB_shading_language_100
@@ -242,6 +283,30 @@
#define GLEXT_GL_FRAMEBUFFER_COMPLETE GL_FRAMEBUFFER_COMPLETE_EXT
#define GLEXT_GL_FRAMEBUFFER_BINDING GL_FRAMEBUFFER_BINDING_EXT
#define GLEXT_GL_INVALID_FRAMEBUFFER_OPERATION GL_INVALID_FRAMEBUFFER_OPERATION_EXT
+ #define GLEXT_GL_STENCIL_ATTACHMENT GL_STENCIL_ATTACHMENT_EXT
+
+ // Core since 3.0 - EXT_packed_depth_stencil
+ #define GLEXT_packed_depth_stencil sfogl_ext_EXT_packed_depth_stencil
+ #define GLEXT_GL_DEPTH24_STENCIL8 GL_DEPTH24_STENCIL8_EXT
+
+ // Core since 3.0 - EXT_framebuffer_blit
+ #define GLEXT_framebuffer_blit sfogl_ext_EXT_framebuffer_blit
+ #define GLEXT_glBlitFramebuffer glBlitFramebufferEXT
+ #define GLEXT_GL_READ_FRAMEBUFFER GL_READ_FRAMEBUFFER_EXT
+ #define GLEXT_GL_DRAW_FRAMEBUFFER GL_DRAW_FRAMEBUFFER_EXT
+ #define GLEXT_GL_DRAW_FRAMEBUFFER_BINDING GL_DRAW_FRAMEBUFFER_BINDING_EXT
+ #define GLEXT_GL_READ_FRAMEBUFFER_BINDING GL_READ_FRAMEBUFFER_BINDING_EXT
+
+ // Core since 3.0 - EXT_framebuffer_multisample
+ #define GLEXT_framebuffer_multisample sfogl_ext_EXT_framebuffer_multisample
+ #define GLEXT_glRenderbufferStorageMultisample glRenderbufferStorageMultisampleEXT
+ #define GLEXT_GL_MAX_SAMPLES GL_MAX_SAMPLES_EXT
+
+ // Core since 3.1 - ARB_copy_buffer
+ #define GLEXT_copy_buffer sfogl_ext_ARB_copy_buffer
+ #define GLEXT_GL_COPY_READ_BUFFER GL_COPY_READ_BUFFER
+ #define GLEXT_GL_COPY_WRITE_BUFFER GL_COPY_WRITE_BUFFER
+ #define GLEXT_glCopyBufferSubData glCopyBufferSubData
// Core since 3.2 - ARB_geometry_shader4
#define GLEXT_geometry_shader4 sfogl_ext_ARB_geometry_shader4