Add support for GL 4.4
This commit is contained in:
parent
87afa2c277
commit
e253fafe42
|
@ -97,6 +97,7 @@
|
|||
<ClInclude Include="GL\GLExtensions\gl_3_1.h" />
|
||||
<ClInclude Include="GL\GLExtensions\gl_3_2.h" />
|
||||
<ClInclude Include="GL\GLExtensions\gl_4_2.h" />
|
||||
<ClInclude Include="GL\GLExtensions\gl_4_4.h" />
|
||||
<ClInclude Include="GL\GLExtensions\gl_4_5.h" />
|
||||
<ClInclude Include="GL\GLExtensions\gl_common.h" />
|
||||
<ClInclude Include="GL\GLExtensions\HP_occlusion_test.h" />
|
||||
|
|
|
@ -189,6 +189,9 @@
|
|||
<ClInclude Include="GL\GLExtensions\gl_4_2.h">
|
||||
<Filter>GL\GLExtensions</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="GL\GLExtensions\gl_4_4.h">
|
||||
<Filter>GL\GLExtensions</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="GL\GLExtensions\gl_4_5.h">
|
||||
<Filter>GL\GLExtensions</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
@ -661,6 +661,16 @@ PFNDOLTEXSTORAGE3DPROC dolTexStorage3D;
|
|||
PFNDOLDRAWTRANSFORMFEEDBACKINSTANCEDPROC dolDrawTransformFeedbackInstanced;
|
||||
PFNDOLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC dolDrawTransformFeedbackStreamInstanced;
|
||||
|
||||
// gl_4_4
|
||||
PFNDOLCLEARTEXIMAGEPROC dolClearTexImage;
|
||||
PFNDOLCLEARTEXSUBIMAGEPROC dolClearTexSubImage;
|
||||
PFNDOLBINDBUFFERSBASEPROC dolBindBuffersBase;
|
||||
PFNDOLBINDBUFFERSRANGEPROC dolBindBuffersRange;
|
||||
PFNDOLBINDTEXTURESPROC dolBindTextures;
|
||||
PFNDOLBINDSAMPLERSPROC dolBindSamplers;
|
||||
PFNDOLBINDIMAGETEXTURESPROC dolBindImageTextures;
|
||||
PFNDOLBINDVERTEXBUFFERSPROC dolBindVertexBuffers;
|
||||
|
||||
// gl_4_5
|
||||
PFNDOLCREATETRANSFORMFEEDBACKSPROC dolCreateTransformFeedbacks;
|
||||
PFNDOLTRANSFORMFEEDBACKBUFFERBASEPROC dolTransformFeedbackBufferBase;
|
||||
|
@ -1616,6 +1626,17 @@ const GLFunc gl_function_array[] =
|
|||
GLFUNC_REQUIRES(glDrawTransformFeedbackInstanced, "VERSION_4_2"),
|
||||
GLFUNC_REQUIRES(glDrawTransformFeedbackStreamInstanced, "VERSION_4_2"),
|
||||
|
||||
// gl_4_4
|
||||
GLFUNC_REQUIRES(glBufferStorage, "VERSION_4_4"),
|
||||
GLFUNC_REQUIRES(glClearTexImage, "VERSION_4_4"),
|
||||
GLFUNC_REQUIRES(glClearTexSubImage, "VERSION_4_4"),
|
||||
GLFUNC_REQUIRES(glBindBuffersBase, "VERSION_4_4"),
|
||||
GLFUNC_REQUIRES(glBindBuffersRange, "VERSION_4_4"),
|
||||
GLFUNC_REQUIRES(glBindTextures, "VERSION_4_4"),
|
||||
GLFUNC_REQUIRES(glBindSamplers, "VERSION_4_4"),
|
||||
GLFUNC_REQUIRES(glBindImageTextures, "VERSION_4_4"),
|
||||
GLFUNC_REQUIRES(glBindVertexBuffers, "VERSION_4_4"),
|
||||
|
||||
// gl_4_5
|
||||
GLFUNC_REQUIRES(glClipControl, "VERSION_4_5"),
|
||||
GLFUNC_REQUIRES(glCreateTransformFeedbacks, "VERSION_4_5"),
|
||||
|
@ -1911,11 +1932,11 @@ const GLFunc gl_function_array[] =
|
|||
GLFUNC_REQUIRES(glPushDebugGroup, "GL_KHR_debug !VERSION_GLES_3 |VERSION_GLES_3_2"),
|
||||
|
||||
// ARB_buffer_storage
|
||||
GLFUNC_REQUIRES(glBufferStorage, "GL_ARB_buffer_storage"),
|
||||
GLFUNC_REQUIRES(glBufferStorage, "GL_ARB_buffer_storage !VERSION_4_4"),
|
||||
GLFUNC_REQUIRES(glNamedBufferStorage, "GL_ARB_buffer_storage GL_EXT_direct_state_access !VERSION_4_5"),
|
||||
|
||||
// EXT_buffer_storage
|
||||
GLFUNC_SUFFIX(glBufferStorage, EXT, "GL_EXT_buffer_storage !GL_ARB_buffer_storage"),
|
||||
GLFUNC_SUFFIX(glBufferStorage, EXT, "GL_EXT_buffer_storage !GL_ARB_buffer_storage !VERSION_4_4"),
|
||||
|
||||
// EXT_geometry_shader
|
||||
GLFUNC_SUFFIX(glFramebufferTexture, EXT, "GL_EXT_geometry_shader !VERSION_3_2"),
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
#include "Common/GL/GLExtensions/gl_3_1.h"
|
||||
#include "Common/GL/GLExtensions/gl_3_2.h"
|
||||
#include "Common/GL/GLExtensions/gl_4_2.h"
|
||||
#include "Common/GL/GLExtensions/gl_4_4.h"
|
||||
#include "Common/GL/GLExtensions/gl_4_5.h"
|
||||
#include "Common/GL/GLExtensions/HP_occlusion_test.h"
|
||||
#include "Common/GL/GLExtensions/KHR_debug.h"
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
/*
|
||||
** Copyright (c) 2013-2015 The Khronos Group Inc.
|
||||
**
|
||||
** Permission is hereby granted, free of charge, to any person obtaining a
|
||||
** copy of this software and/or associated documentation files (the
|
||||
** "Materials"), to deal in the Materials without restriction, including
|
||||
** without limitation the rights to use, copy, modify, merge, publish,
|
||||
** distribute, sublicense, and/or sell copies of the Materials, and to
|
||||
** permit persons to whom the Materials are furnished to do so, subject to
|
||||
** the following conditions:
|
||||
**
|
||||
** The above copyright notice and this permission notice shall be included
|
||||
** in all copies or substantial portions of the Materials.
|
||||
**
|
||||
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
*/
|
||||
|
||||
#include "Common/GL/GLExtensions/gl_common.h"
|
||||
|
||||
#define GL_MAX_VERTEX_ATTRIB_STRIDE 0x82E5
|
||||
#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221
|
||||
#define GL_TEXTURE_BUFFER_BINDING 0x8C2A
|
||||
#define GL_DYNAMIC_STORAGE_BIT 0x0100
|
||||
#define GL_CLIENT_STORAGE_BIT 0x0200
|
||||
#define GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT 0x00004000
|
||||
#define GL_BUFFER_IMMUTABLE_STORAGE 0x821F
|
||||
#define GL_BUFFER_STORAGE_FLAGS 0x8220
|
||||
#define GL_CLEAR_TEXTURE 0x9365
|
||||
#define GL_LOCATION_COMPONENT 0x934A
|
||||
#define GL_TRANSFORM_FEEDBACK_BUFFER_INDEX 0x934B
|
||||
#define GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE 0x934C
|
||||
#define GL_QUERY_BUFFER 0x9192
|
||||
#define GL_QUERY_BUFFER_BARRIER_BIT 0x00008000
|
||||
#define GL_QUERY_BUFFER_BINDING 0x9193
|
||||
#define GL_QUERY_RESULT_NO_WAIT 0x9194
|
||||
#define GL_MIRROR_CLAMP_TO_EDGE 0x8743
|
||||
|
||||
typedef void (APIENTRYP PFNDOLBUFFERSTORAGEPROC) (GLenum target, GLsizeiptr size, const void *data, GLbitfield flags);
|
||||
typedef void (APIENTRYP PFNDOLCLEARTEXIMAGEPROC) (GLuint texture, GLint level, GLenum format, GLenum type, const void *data);
|
||||
typedef void (APIENTRYP PFNDOLCLEARTEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data);
|
||||
typedef void (APIENTRYP PFNDOLBINDBUFFERSBASEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint *buffers);
|
||||
typedef void (APIENTRYP PFNDOLBINDBUFFERSRANGEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizeiptr *sizes);
|
||||
typedef void (APIENTRYP PFNDOLBINDTEXTURESPROC) (GLuint first, GLsizei count, const GLuint *textures);
|
||||
typedef void (APIENTRYP PFNDOLBINDSAMPLERSPROC) (GLuint first, GLsizei count, const GLuint *samplers);
|
||||
typedef void (APIENTRYP PFNDOLBINDIMAGETEXTURESPROC) (GLuint first, GLsizei count, const GLuint *textures);
|
||||
typedef void (APIENTRYP PFNDOLBINDVERTEXBUFFERSPROC) (GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides);
|
||||
|
||||
extern PFNDOLCLEARTEXIMAGEPROC dolClearTexImage;
|
||||
extern PFNDOLCLEARTEXSUBIMAGEPROC dolClearTexSubImage;
|
||||
extern PFNDOLBINDBUFFERSBASEPROC dolBindBuffersBase;
|
||||
extern PFNDOLBINDBUFFERSRANGEPROC dolBindBuffersRange;
|
||||
extern PFNDOLBINDTEXTURESPROC dolBindTextures;
|
||||
extern PFNDOLBINDSAMPLERSPROC dolBindSamplers;
|
||||
extern PFNDOLBINDIMAGETEXTURESPROC dolBindImageTextures;
|
||||
extern PFNDOLBINDVERTEXBUFFERSPROC dolBindVertexBuffers;
|
||||
|
||||
#define glClearTexImage dolClearTexImage
|
||||
#define glClearTexSubImage dolClearTexSubImage
|
||||
#define glBindBuffersBase dolBindBuffersBase
|
||||
#define glBindBuffersRange dolBindBuffersRange
|
||||
#define glBindTextures dolBindTextures
|
||||
#define glBindSamplers dolBindSamplers
|
||||
#define glBindImageTextures dolBindImageTextures
|
||||
#define glBindVertexBuffers dolBindVertexBuffers
|
Loading…
Reference in New Issue