Merge commit 'origin/master' into gallium-0.2
This commit is contained in:
commit
61d3a66456
|
@ -46,9 +46,9 @@ extern "C" {
|
||||||
/*************************************************************/
|
/*************************************************************/
|
||||||
|
|
||||||
/* Header file version number, required by OpenGL ABI for Linux */
|
/* Header file version number, required by OpenGL ABI for Linux */
|
||||||
/* glext.h last updated 2008/08/10 */
|
/* glext.h last updated 2008/10/09 */
|
||||||
/* Current version at http://www.opengl.org/registry/ */
|
/* Current version at http://www.opengl.org/registry/ */
|
||||||
#define GL_GLEXT_VERSION 41
|
#define GL_GLEXT_VERSION 43
|
||||||
|
|
||||||
#ifndef GL_VERSION_1_2
|
#ifndef GL_VERSION_1_2
|
||||||
#define GL_UNSIGNED_BYTE_3_3_2 0x8032
|
#define GL_UNSIGNED_BYTE_3_3_2 0x8032
|
||||||
|
@ -588,6 +588,132 @@ extern "C" {
|
||||||
#define GL_QUERY_NO_WAIT 0x8E14
|
#define GL_QUERY_NO_WAIT 0x8E14
|
||||||
#define GL_QUERY_BY_REGION_WAIT 0x8E15
|
#define GL_QUERY_BY_REGION_WAIT 0x8E15
|
||||||
#define GL_QUERY_BY_REGION_NO_WAIT 0x8E16
|
#define GL_QUERY_BY_REGION_NO_WAIT 0x8E16
|
||||||
|
/* Reuse tokens from ARB_depth_buffer_float */
|
||||||
|
/* reuse GL_DEPTH_COMPONENT32F */
|
||||||
|
/* reuse GL_DEPTH32F_STENCIL8 */
|
||||||
|
/* reuse GL_FLOAT_32_UNSIGNED_INT_24_8_REV */
|
||||||
|
/* Reuse tokens from ARB_framebuffer_object */
|
||||||
|
/* reuse GL_INVALID_FRAMEBUFFER_OPERATION */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_DEFAULT */
|
||||||
|
/* reuse GL_FRAMEBUFFER_UNDEFINED */
|
||||||
|
/* reuse GL_DEPTH_STENCIL_ATTACHMENT */
|
||||||
|
/* reuse GL_INDEX */
|
||||||
|
/* reuse GL_MAX_RENDERBUFFER_SIZE */
|
||||||
|
/* reuse GL_DEPTH_STENCIL */
|
||||||
|
/* reuse GL_UNSIGNED_INT_24_8 */
|
||||||
|
/* reuse GL_DEPTH24_STENCIL8 */
|
||||||
|
/* reuse GL_TEXTURE_STENCIL_SIZE */
|
||||||
|
/* reuse GL_TEXTURE_RED_TYPE */
|
||||||
|
/* reuse GL_TEXTURE_GREEN_TYPE */
|
||||||
|
/* reuse GL_TEXTURE_BLUE_TYPE */
|
||||||
|
/* reuse GL_TEXTURE_ALPHA_TYPE */
|
||||||
|
/* reuse GL_TEXTURE_LUMINANCE_TYPE */
|
||||||
|
/* reuse GL_TEXTURE_INTENSITY_TYPE */
|
||||||
|
/* reuse GL_TEXTURE_DEPTH_TYPE */
|
||||||
|
/* reuse GL_UNSIGNED_NORMALIZED */
|
||||||
|
/* reuse GL_FRAMEBUFFER_BINDING */
|
||||||
|
/* reuse GL_DRAW_FRAMEBUFFER_BINDING */
|
||||||
|
/* reuse GL_RENDERBUFFER_BINDING */
|
||||||
|
/* reuse GL_READ_FRAMEBUFFER */
|
||||||
|
/* reuse GL_DRAW_FRAMEBUFFER */
|
||||||
|
/* reuse GL_READ_FRAMEBUFFER_BINDING */
|
||||||
|
/* reuse GL_RENDERBUFFER_SAMPLES */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */
|
||||||
|
/* reuse GL_FRAMEBUFFER_COMPLETE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */
|
||||||
|
/* reuse GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */
|
||||||
|
/* reuse GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */
|
||||||
|
/* reuse GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */
|
||||||
|
/* reuse GL_FRAMEBUFFER_UNSUPPORTED */
|
||||||
|
/* reuse GL_MAX_COLOR_ATTACHMENTS */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT0 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT1 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT2 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT3 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT4 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT5 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT6 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT7 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT8 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT9 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT10 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT11 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT12 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT13 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT14 */
|
||||||
|
/* reuse GL_COLOR_ATTACHMENT15 */
|
||||||
|
/* reuse GL_DEPTH_ATTACHMENT */
|
||||||
|
/* reuse GL_STENCIL_ATTACHMENT */
|
||||||
|
/* reuse GL_FRAMEBUFFER */
|
||||||
|
/* reuse GL_RENDERBUFFER */
|
||||||
|
/* reuse GL_RENDERBUFFER_WIDTH */
|
||||||
|
/* reuse GL_RENDERBUFFER_HEIGHT */
|
||||||
|
/* reuse GL_RENDERBUFFER_INTERNAL_FORMAT */
|
||||||
|
/* reuse GL_STENCIL_INDEX1 */
|
||||||
|
/* reuse GL_STENCIL_INDEX4 */
|
||||||
|
/* reuse GL_STENCIL_INDEX8 */
|
||||||
|
/* reuse GL_STENCIL_INDEX16 */
|
||||||
|
/* reuse GL_RENDERBUFFER_RED_SIZE */
|
||||||
|
/* reuse GL_RENDERBUFFER_GREEN_SIZE */
|
||||||
|
/* reuse GL_RENDERBUFFER_BLUE_SIZE */
|
||||||
|
/* reuse GL_RENDERBUFFER_ALPHA_SIZE */
|
||||||
|
/* reuse GL_RENDERBUFFER_DEPTH_SIZE */
|
||||||
|
/* reuse GL_RENDERBUFFER_STENCIL_SIZE */
|
||||||
|
/* reuse GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */
|
||||||
|
/* reuse GL_MAX_SAMPLES */
|
||||||
|
/* Reuse tokens from ARB_framebuffer_sRGB */
|
||||||
|
/* reuse GL_FRAMEBUFFER_SRGB */
|
||||||
|
/* Reuse tokens from ARB_half_float_vertex */
|
||||||
|
/* reuse GL_HALF_FLOAT */
|
||||||
|
/* Reuse tokens from ARB_map_buffer_range */
|
||||||
|
/* reuse GL_MAP_READ_BIT */
|
||||||
|
/* reuse GL_MAP_WRITE_BIT */
|
||||||
|
/* reuse GL_MAP_INVALIDATE_RANGE_BIT */
|
||||||
|
/* reuse GL_MAP_INVALIDATE_BUFFER_BIT */
|
||||||
|
/* reuse GL_MAP_FLUSH_EXPLICIT_BIT */
|
||||||
|
/* reuse GL_MAP_UNSYNCHRONIZED_BIT */
|
||||||
|
/* Reuse tokens from ARB_texture_compression_rgtc */
|
||||||
|
/* reuse GL_COMPRESSED_RED_RGTC1 */
|
||||||
|
/* reuse GL_COMPRESSED_SIGNED_RED_RGTC1 */
|
||||||
|
/* reuse GL_COMPRESSED_RG_RGTC2 */
|
||||||
|
/* reuse GL_COMPRESSED_SIGNED_RG_RGTC2 */
|
||||||
|
/* Reuse tokens from ARB_texture_rg */
|
||||||
|
/* reuse GL_RG */
|
||||||
|
/* reuse GL_RG_INTEGER */
|
||||||
|
/* reuse GL_R8 */
|
||||||
|
/* reuse GL_R16 */
|
||||||
|
/* reuse GL_RG8 */
|
||||||
|
/* reuse GL_RG16 */
|
||||||
|
/* reuse GL_R16F */
|
||||||
|
/* reuse GL_R32F */
|
||||||
|
/* reuse GL_RG16F */
|
||||||
|
/* reuse GL_RG32F */
|
||||||
|
/* reuse GL_R8I */
|
||||||
|
/* reuse GL_R8UI */
|
||||||
|
/* reuse GL_R16I */
|
||||||
|
/* reuse GL_R16UI */
|
||||||
|
/* reuse GL_R32I */
|
||||||
|
/* reuse GL_R32UI */
|
||||||
|
/* reuse GL_RG8I */
|
||||||
|
/* reuse GL_RG8UI */
|
||||||
|
/* reuse GL_RG16I */
|
||||||
|
/* reuse GL_RG16UI */
|
||||||
|
/* reuse GL_RG32I */
|
||||||
|
/* reuse GL_RG32UI */
|
||||||
|
/* Reuse tokens from ARB_vertex_array_object */
|
||||||
|
/* reuse GL_VERTEX_ARRAY_BINDING */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_ARB_multitexture
|
#ifndef GL_ARB_multitexture
|
||||||
|
@ -1192,6 +1318,8 @@ extern "C" {
|
||||||
#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB 0x8DDF
|
#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB 0x8DDF
|
||||||
#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB 0x8DE0
|
#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB 0x8DE0
|
||||||
#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB 0x8DE1
|
#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB 0x8DE1
|
||||||
|
/* reuse GL_MAX_VARYING_COMPONENTS */
|
||||||
|
/* reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_ARB_half_float_vertex
|
#ifndef GL_ARB_half_float_vertex
|
||||||
|
@ -3696,6 +3824,16 @@ extern "C" {
|
||||||
#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT 0x8C76
|
#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT 0x8C76
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef GL_EXT_direct_state_access
|
||||||
|
#define GL_PROGRAM_MATRIX_EXT 0x8E2D
|
||||||
|
#define GL_TRANSPOSE_PROGRAM_MATRIX_EXT 0x8E2E
|
||||||
|
#define GL_PROGRAM_MATRIX_STACK_DEPTH_EXT 0x8E2F
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef GL_EXT_vertex_array_bgra
|
||||||
|
/* reuse GL_BGRA */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************/
|
/*************************************************************/
|
||||||
|
|
||||||
|
@ -4306,6 +4444,128 @@ typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X3FVPROC) (GLint location, GLsizei co
|
||||||
|
|
||||||
#ifndef GL_VERSION_3_0
|
#ifndef GL_VERSION_3_0
|
||||||
#define GL_VERSION_3_0 1
|
#define GL_VERSION_3_0 1
|
||||||
|
/* OpenGL 3.0 also reuses entry points from these extensions: */
|
||||||
|
/* ARB_framebuffer_object */
|
||||||
|
/* ARB_map_buffer_range */
|
||||||
|
/* ARB_vertex_array_object */
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glColorMaski (GLuint, GLboolean, GLboolean, GLboolean, GLboolean);
|
||||||
|
GLAPI void APIENTRY glGetBooleani_v (GLenum, GLuint, GLboolean *);
|
||||||
|
GLAPI void APIENTRY glGetIntegeri_v (GLenum, GLuint, GLint *);
|
||||||
|
GLAPI void APIENTRY glEnablei (GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glDisablei (GLenum, GLuint);
|
||||||
|
GLAPI GLboolean APIENTRY glIsEnabledi (GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glBeginTransformFeedback (GLenum);
|
||||||
|
GLAPI void APIENTRY glEndTransformFeedback (void);
|
||||||
|
GLAPI void APIENTRY glBindBufferRange (GLenum, GLuint, GLuint, GLintptr, GLsizeiptr);
|
||||||
|
GLAPI void APIENTRY glBindBufferBase (GLenum, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glTransformFeedbackVaryings (GLuint, GLsizei, const GLint *, GLenum);
|
||||||
|
GLAPI void APIENTRY glGetTransformFeedbackVarying (GLuint, GLuint, GLint *);
|
||||||
|
GLAPI void APIENTRY glClampColor (GLenum, GLenum);
|
||||||
|
GLAPI void APIENTRY glBeginConditionalRender (GLuint, GLenum);
|
||||||
|
GLAPI void APIENTRY glEndConditionalRender (void);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI1i (GLuint, GLint);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI2i (GLuint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI3i (GLuint, GLint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI4i (GLuint, GLint, GLint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI1ui (GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI2ui (GLuint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI3ui (GLuint, GLuint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI4ui (GLuint, GLuint, GLuint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI1iv (GLuint, const GLint *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI2iv (GLuint, const GLint *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI3iv (GLuint, const GLint *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI4iv (GLuint, const GLint *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI1uiv (GLuint, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI2uiv (GLuint, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI3uiv (GLuint, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI4uiv (GLuint, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI4bv (GLuint, const GLbyte *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI4sv (GLuint, const GLshort *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI4ubv (GLuint, const GLubyte *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribI4usv (GLuint, const GLushort *);
|
||||||
|
GLAPI void APIENTRY glVertexAttribIPointer (GLuint, GLint, GLenum, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glGetVertexAttribIiv (GLuint, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetVertexAttribIuiv (GLuint, GLenum, GLuint *);
|
||||||
|
GLAPI void APIENTRY glGetUniformuiv (GLuint, GLint, GLuint *);
|
||||||
|
GLAPI void APIENTRY glBindFragDataLocation (GLuint, GLuint, const GLchar *);
|
||||||
|
GLAPI GLint APIENTRY glGetFragDataLocation (GLuint, const GLchar *);
|
||||||
|
GLAPI void APIENTRY glUniform1ui (GLint, GLuint);
|
||||||
|
GLAPI void APIENTRY glUniform2ui (GLint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glUniform3ui (GLint, GLuint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glUniform4ui (GLint, GLuint, GLuint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glUniform1uiv (GLint, GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glUniform2uiv (GLint, GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glUniform3uiv (GLint, GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glUniform4uiv (GLint, GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glTexParameterIiv (GLenum, GLenum, const GLint *);
|
||||||
|
GLAPI void APIENTRY glTexParameterIuiv (GLenum, GLenum, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glGetTexParameterIiv (GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetTexParameterIuiv (GLenum, GLenum, GLuint *);
|
||||||
|
GLAPI void APIENTRY glClearBufferiv (GLenum, GLint, const GLint *);
|
||||||
|
GLAPI void APIENTRY glClearBufferuiv (GLenum, GLint, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glClearBufferfv (GLenum, GLint, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glClearBufferfi (GLenum, GLint, GLfloat, GLint);
|
||||||
|
GLAPI const GLubyte * APIENTRY glGetStringi (GLenum, GLuint);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLCOLORMASKIPROC) (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
|
||||||
|
typedef void (APIENTRYP PFNGLGETBOOLEANI_VPROC) (GLenum target, GLuint index, GLboolean *data);
|
||||||
|
typedef void (APIENTRYP PFNGLGETINTEGERI_VPROC) (GLenum target, GLuint index, GLint *data);
|
||||||
|
typedef void (APIENTRYP PFNGLENABLEIPROC) (GLenum target, GLuint index);
|
||||||
|
typedef void (APIENTRYP PFNGLDISABLEIPROC) (GLenum target, GLuint index);
|
||||||
|
typedef GLboolean (APIENTRYP PFNGLISENABLEDIPROC) (GLenum target, GLuint index);
|
||||||
|
typedef void (APIENTRYP PFNGLBEGINTRANSFORMFEEDBACKPROC) (GLenum primitiveMode);
|
||||||
|
typedef void (APIENTRYP PFNGLENDTRANSFORMFEEDBACKPROC) (void);
|
||||||
|
typedef void (APIENTRYP PFNGLBINDBUFFERRANGEPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
|
||||||
|
typedef void (APIENTRYP PFNGLBINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer);
|
||||||
|
typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKVARYINGSPROC) (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKVARYINGPROC) (GLuint program, GLuint index, GLint *location);
|
||||||
|
typedef void (APIENTRYP PFNGLCLAMPCOLORPROC) (GLenum target, GLenum clamp);
|
||||||
|
typedef void (APIENTRYP PFNGLBEGINCONDITIONALRENDERPROC) (GLuint id, GLenum mode);
|
||||||
|
typedef void (APIENTRYP PFNGLENDCONDITIONALRENDERPROC) (void);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IPROC) (GLuint index, GLint x);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IPROC) (GLuint index, GLint x, GLint y);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IPROC) (GLuint index, GLint x, GLint y, GLint z);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIPROC) (GLuint index, GLuint x);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIPROC) (GLuint index, GLuint x, GLuint y);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IVPROC) (GLuint index, const GLint *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IVPROC) (GLuint index, const GLint *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IVPROC) (GLuint index, const GLint *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IVPROC) (GLuint index, const GLint *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIVPROC) (GLuint index, const GLuint *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIVPROC) (GLuint index, const GLuint *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIVPROC) (GLuint index, const GLuint *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIVPROC) (GLuint index, const GLuint *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI4BVPROC) (GLuint index, const GLbyte *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI4SVPROC) (GLuint index, const GLshort *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UBVPROC) (GLuint index, const GLubyte *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBI4USVPROC) (GLuint index, const GLushort *v);
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBIPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
|
||||||
|
typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIIVPROC) (GLuint index, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIUIVPROC) (GLuint index, GLenum pname, GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETUNIFORMUIVPROC) (GLuint program, GLint location, GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONPROC) (GLuint program, GLuint color, const GLchar *name);
|
||||||
|
typedef GLint (APIENTRYP PFNGLGETFRAGDATALOCATIONPROC) (GLuint program, const GLchar *name);
|
||||||
|
typedef void (APIENTRYP PFNGLUNIFORM1UIPROC) (GLint location, GLuint v0);
|
||||||
|
typedef void (APIENTRYP PFNGLUNIFORM2UIPROC) (GLint location, GLuint v0, GLuint v1);
|
||||||
|
typedef void (APIENTRYP PFNGLUNIFORM3UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2);
|
||||||
|
typedef void (APIENTRYP PFNGLUNIFORM4UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
|
||||||
|
typedef void (APIENTRYP PFNGLUNIFORM1UIVPROC) (GLint location, GLsizei count, const GLuint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLUNIFORM2UIVPROC) (GLint location, GLsizei count, const GLuint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLUNIFORM3UIVPROC) (GLint location, GLsizei count, const GLuint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLUNIFORM4UIVPROC) (GLint location, GLsizei count, const GLuint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, const GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, const GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLCLEARBUFFERIVPROC) (GLenum buffer, GLint drawbuffer, const GLint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLCLEARBUFFERUIVPROC) (GLenum buffer, GLint drawbuffer, const GLuint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLCLEARBUFFERFVPROC) (GLenum buffer, GLint drawbuffer, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLCLEARBUFFERFIPROC) (GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
|
||||||
|
typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGIPROC) (GLenum name, GLuint index);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_ARB_multitexture
|
#ifndef GL_ARB_multitexture
|
||||||
|
@ -4893,10 +5153,58 @@ typedef void (APIENTRYP PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp);
|
||||||
|
|
||||||
#ifndef GL_ARB_draw_instanced
|
#ifndef GL_ARB_draw_instanced
|
||||||
#define GL_ARB_draw_instanced 1
|
#define GL_ARB_draw_instanced 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glDrawArraysInstancedARB (GLenum, GLint, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glDrawElementsInstancedARB (GLenum, GLsizei, GLenum, const GLvoid *, GLsizei);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDARBPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
|
||||||
|
typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDARBPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_ARB_framebuffer_object
|
#ifndef GL_ARB_framebuffer_object
|
||||||
#define GL_ARB_framebuffer_object 1
|
#define GL_ARB_framebuffer_object 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI GLboolean APIENTRY glIsRenderbuffer (GLuint);
|
||||||
|
GLAPI void APIENTRY glBindRenderbuffer (GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glDeleteRenderbuffers (GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glGenRenderbuffers (GLsizei, GLuint *);
|
||||||
|
GLAPI void APIENTRY glRenderbufferStorage (GLenum, GLenum, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glGetRenderbufferParameteriv (GLenum, GLenum, GLint *);
|
||||||
|
GLAPI GLboolean APIENTRY glIsFramebuffer (GLuint);
|
||||||
|
GLAPI void APIENTRY glBindFramebuffer (GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glDeleteFramebuffers (GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glGenFramebuffers (GLsizei, GLuint *);
|
||||||
|
GLAPI GLenum APIENTRY glCheckFramebufferStatus (GLenum);
|
||||||
|
GLAPI void APIENTRY glFramebufferTexture1D (GLenum, GLenum, GLenum, GLuint, GLint);
|
||||||
|
GLAPI void APIENTRY glFramebufferTexture2D (GLenum, GLenum, GLenum, GLuint, GLint);
|
||||||
|
GLAPI void APIENTRY glFramebufferTexture3D (GLenum, GLenum, GLenum, GLuint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glFramebufferRenderbuffer (GLenum, GLenum, GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glGetFramebufferAttachmentParameteriv (GLenum, GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGenerateMipmap (GLenum);
|
||||||
|
GLAPI void APIENTRY glBlitFramebuffer (GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum);
|
||||||
|
GLAPI void APIENTRY glRenderbufferStorageMultisample (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glFramebufferTextureLayer (GLenum, GLenum, GLuint, GLint, GLint);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef GLboolean (APIENTRYP PFNGLISRENDERBUFFERPROC) (GLuint renderbuffer);
|
||||||
|
typedef void (APIENTRYP PFNGLBINDRENDERBUFFERPROC) (GLenum target, GLuint renderbuffer);
|
||||||
|
typedef void (APIENTRYP PFNGLDELETERENDERBUFFERSPROC) (GLsizei n, const GLuint *renderbuffers);
|
||||||
|
typedef void (APIENTRYP PFNGLGENRENDERBUFFERSPROC) (GLsizei n, GLuint *renderbuffers);
|
||||||
|
typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
||||||
|
typedef void (APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
|
||||||
|
typedef GLboolean (APIENTRYP PFNGLISFRAMEBUFFERPROC) (GLuint framebuffer);
|
||||||
|
typedef void (APIENTRYP PFNGLBINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer);
|
||||||
|
typedef void (APIENTRYP PFNGLDELETEFRAMEBUFFERSPROC) (GLsizei n, const GLuint *framebuffers);
|
||||||
|
typedef void (APIENTRYP PFNGLGENFRAMEBUFFERSPROC) (GLsizei n, GLuint *framebuffers);
|
||||||
|
typedef GLenum (APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSPROC) (GLenum target);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE1DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFERPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
|
||||||
|
typedef void (APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLenum target, GLenum attachment, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGENERATEMIPMAPPROC) (GLenum target);
|
||||||
|
typedef void (APIENTRYP PFNGLBLITFRAMEBUFFERPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
||||||
|
typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURELAYERPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_ARB_framebuffer_sRGB
|
#ifndef GL_ARB_framebuffer_sRGB
|
||||||
|
@ -4905,6 +5213,16 @@ typedef void (APIENTRYP PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp);
|
||||||
|
|
||||||
#ifndef GL_ARB_geometry_shader4
|
#ifndef GL_ARB_geometry_shader4
|
||||||
#define GL_ARB_geometry_shader4 1
|
#define GL_ARB_geometry_shader4 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glProgramParameteriARB (GLuint, GLenum, GLint);
|
||||||
|
GLAPI void APIENTRY glFramebufferTextureARB (GLenum, GLenum, GLuint, GLint);
|
||||||
|
GLAPI void APIENTRY glFramebufferTextureLayerARB (GLenum, GLenum, GLuint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glFramebufferTextureFaceARB (GLenum, GLenum, GLuint, GLint, GLenum);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMPARAMETERIARBPROC) (GLuint program, GLenum pname, GLint value);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTUREARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURELAYERARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTUREFACEARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_ARB_half_float_vertex
|
#ifndef GL_ARB_half_float_vertex
|
||||||
|
@ -4913,14 +5231,28 @@ typedef void (APIENTRYP PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp);
|
||||||
|
|
||||||
#ifndef GL_ARB_instanced_arrays
|
#ifndef GL_ARB_instanced_arrays
|
||||||
#define GL_ARB_instanced_arrays 1
|
#define GL_ARB_instanced_arrays 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glVertexAttribDivisor (GLuint, GLuint);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLVERTEXATTRIBDIVISORPROC) (GLuint index, GLuint divisor);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_ARB_map_buffer_range
|
#ifndef GL_ARB_map_buffer_range
|
||||||
#define GL_ARB_map_buffer_range 1
|
#define GL_ARB_map_buffer_range 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glMapBufferRange (GLenum, GLintptr, GLsizeiptr, GLbitfield);
|
||||||
|
GLAPI void APIENTRY glFlushMappedBufferRange (GLenum, GLintptr, GLsizeiptr);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLMAPBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
|
||||||
|
typedef void (APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_ARB_texture_buffer_object
|
#ifndef GL_ARB_texture_buffer_object
|
||||||
#define GL_ARB_texture_buffer_object 1
|
#define GL_ARB_texture_buffer_object 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glTexBufferARB (GLenum, GLenum, GLuint);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLTEXBUFFERARBPROC) (GLenum target, GLenum internalformat, GLuint buffer);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_ARB_texture_compression_rgtc
|
#ifndef GL_ARB_texture_compression_rgtc
|
||||||
|
@ -4933,6 +5265,16 @@ typedef void (APIENTRYP PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp);
|
||||||
|
|
||||||
#ifndef GL_ARB_vertex_array_object
|
#ifndef GL_ARB_vertex_array_object
|
||||||
#define GL_ARB_vertex_array_object 1
|
#define GL_ARB_vertex_array_object 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glBindVertexArray (GLuint);
|
||||||
|
GLAPI void APIENTRY glDeleteVertexArrays (GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glGenVertexArrays (GLsizei, GLuint *);
|
||||||
|
GLAPI GLboolean APIENTRY glIsVertexArray (GLuint);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLBINDVERTEXARRAYPROC) (GLuint array);
|
||||||
|
typedef void (APIENTRYP PFNGLDELETEVERTEXARRAYSPROC) (GLsizei n, const GLuint *arrays);
|
||||||
|
typedef void (APIENTRYP PFNGLGENVERTEXARRAYSPROC) (GLsizei n, GLuint *arrays);
|
||||||
|
typedef GLboolean (APIENTRYP PFNGLISVERTEXARRAYPROC) (GLuint array);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_EXT_abgr
|
#ifndef GL_EXT_abgr
|
||||||
|
@ -7631,6 +7973,12 @@ typedef void (APIENTRYP PFNGLFRAMETERMINATORGREMEDYPROC) (void);
|
||||||
|
|
||||||
#ifndef GL_NV_conditional_render
|
#ifndef GL_NV_conditional_render
|
||||||
#define GL_NV_conditional_render 1
|
#define GL_NV_conditional_render 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glBeginConditionalRenderNV (GLuint, GLenum);
|
||||||
|
GLAPI void APIENTRY glEndConditionalRenderNV (void);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLBEGINCONDITIONALRENDERNVPROC) (GLuint id, GLenum mode);
|
||||||
|
typedef void (APIENTRYP PFNGLENDCONDITIONALRENDERNVPROC) (void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GL_NV_present_video
|
#ifndef GL_NV_present_video
|
||||||
|
@ -7639,6 +7987,404 @@ typedef void (APIENTRYP PFNGLFRAMETERMINATORGREMEDYPROC) (void);
|
||||||
|
|
||||||
#ifndef GL_EXT_transform_feedback
|
#ifndef GL_EXT_transform_feedback
|
||||||
#define GL_EXT_transform_feedback 1
|
#define GL_EXT_transform_feedback 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glBeginTransformFeedbackEXT (GLenum);
|
||||||
|
GLAPI void APIENTRY glEndTransformFeedbackEXT (void);
|
||||||
|
GLAPI void APIENTRY glBindBufferRangeEXT (GLenum, GLuint, GLuint, GLintptr, GLsizeiptr);
|
||||||
|
GLAPI void APIENTRY glBindBufferOffsetEXT (GLenum, GLuint, GLuint, GLintptr);
|
||||||
|
GLAPI void APIENTRY glBindBufferBaseEXT (GLenum, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glTransformFeedbackVaryingsEXT (GLuint, GLsizei, const GLint *, GLenum);
|
||||||
|
GLAPI void APIENTRY glGetTransformFeedbackVaryingEXT (GLuint, GLuint, GLint *);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLBEGINTRANSFORMFEEDBACKEXTPROC) (GLenum primitiveMode);
|
||||||
|
typedef void (APIENTRYP PFNGLENDTRANSFORMFEEDBACKEXTPROC) (void);
|
||||||
|
typedef void (APIENTRYP PFNGLBINDBUFFERRANGEEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
|
||||||
|
typedef void (APIENTRYP PFNGLBINDBUFFEROFFSETEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
|
||||||
|
typedef void (APIENTRYP PFNGLBINDBUFFERBASEEXTPROC) (GLenum target, GLuint index, GLuint buffer);
|
||||||
|
typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC) (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC) (GLuint program, GLuint index, GLint *location);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef GL_EXT_direct_state_access
|
||||||
|
#define GL_EXT_direct_state_access 1
|
||||||
|
#ifdef GL_GLEXT_PROTOTYPES
|
||||||
|
GLAPI void APIENTRY glClientAttribDefaultEXT (GLbitfield);
|
||||||
|
GLAPI void APIENTRY glPushClientAttribDefaultEXT (GLbitfield);
|
||||||
|
GLAPI void APIENTRY glMatrixLoadfEXT (GLenum, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glMatrixLoaddEXT (GLenum, const GLdouble *);
|
||||||
|
GLAPI void APIENTRY glMatrixMultfEXT (GLenum, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glMatrixMultdEXT (GLenum, const GLdouble *);
|
||||||
|
GLAPI void APIENTRY glMatrixLoadIdentityEXT (GLenum);
|
||||||
|
GLAPI void APIENTRY glMatrixRotatefEXT (GLenum, GLfloat, GLfloat, GLfloat, GLfloat);
|
||||||
|
GLAPI void APIENTRY glMatrixRotatedEXT (GLenum, GLdouble, GLdouble, GLdouble, GLdouble);
|
||||||
|
GLAPI void APIENTRY glMatrixScalefEXT (GLenum, GLfloat, GLfloat, GLfloat);
|
||||||
|
GLAPI void APIENTRY glMatrixScaledEXT (GLenum, GLdouble, GLdouble, GLdouble);
|
||||||
|
GLAPI void APIENTRY glMatrixTranslatefEXT (GLenum, GLfloat, GLfloat, GLfloat);
|
||||||
|
GLAPI void APIENTRY glMatrixTranslatedEXT (GLenum, GLdouble, GLdouble, GLdouble);
|
||||||
|
GLAPI void APIENTRY glMatrixFrustumEXT (GLenum, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble);
|
||||||
|
GLAPI void APIENTRY glMatrixOrthoEXT (GLenum, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble);
|
||||||
|
GLAPI void APIENTRY glMatrixPopEXT (GLenum);
|
||||||
|
GLAPI void APIENTRY glMatrixPushEXT (GLenum);
|
||||||
|
GLAPI void APIENTRY glMatrixLoadTransposefEXT (GLenum, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glMatrixLoadTransposedEXT (GLenum, const GLdouble *);
|
||||||
|
GLAPI void APIENTRY glMatrixMultTransposefEXT (GLenum, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glMatrixMultTransposedEXT (GLenum, const GLdouble *);
|
||||||
|
GLAPI void APIENTRY glTextureParameterfEXT (GLuint, GLenum, GLenum, GLfloat);
|
||||||
|
GLAPI void APIENTRY glTextureParameterfvEXT (GLuint, GLenum, GLenum, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glTextureParameteriEXT (GLuint, GLenum, GLenum, GLint);
|
||||||
|
GLAPI void APIENTRY glTextureParameterivEXT (GLuint, GLenum, GLenum, const GLint *);
|
||||||
|
GLAPI void APIENTRY glTextureImage1DEXT (GLuint, GLenum, GLint, GLenum, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glTextureImage2DEXT (GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glTextureSubImage1DEXT (GLuint, GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glTextureSubImage2DEXT (GLuint, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCopyTextureImage1DEXT (GLuint, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint);
|
||||||
|
GLAPI void APIENTRY glCopyTextureImage2DEXT (GLuint, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint);
|
||||||
|
GLAPI void APIENTRY glCopyTextureSubImage1DEXT (GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei);
|
||||||
|
GLAPI void APIENTRY glCopyTextureSubImage2DEXT (GLuint, GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glGetTextureImageEXT (GLuint, GLenum, GLint, GLenum, GLenum, GLvoid *);
|
||||||
|
GLAPI void APIENTRY glGetTextureParameterfvEXT (GLuint, GLenum, GLenum, GLfloat *);
|
||||||
|
GLAPI void APIENTRY glGetTextureParameterivEXT (GLuint, GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetTextureLevelParameterfvEXT (GLuint, GLenum, GLint, GLenum, GLfloat *);
|
||||||
|
GLAPI void APIENTRY glGetTextureLevelParameterivEXT (GLuint, GLenum, GLint, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glTextureImage3DEXT (GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glTextureSubImage3DEXT (GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCopyTextureSubImage3DEXT (GLuint, GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glMultiTexParameterfEXT (GLenum, GLenum, GLenum, GLfloat);
|
||||||
|
GLAPI void APIENTRY glMultiTexParameterfvEXT (GLenum, GLenum, GLenum, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glMultiTexParameteriEXT (GLenum, GLenum, GLenum, GLint);
|
||||||
|
GLAPI void APIENTRY glMultiTexParameterivEXT (GLenum, GLenum, GLenum, const GLint *);
|
||||||
|
GLAPI void APIENTRY glMultiTexImage1DEXT (GLenum, GLenum, GLint, GLenum, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glMultiTexImage2DEXT (GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glMultiTexSubImage1DEXT (GLenum, GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glMultiTexSubImage2DEXT (GLenum, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCopyMultiTexImage1DEXT (GLenum, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint);
|
||||||
|
GLAPI void APIENTRY glCopyMultiTexImage2DEXT (GLenum, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint);
|
||||||
|
GLAPI void APIENTRY glCopyMultiTexSubImage1DEXT (GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei);
|
||||||
|
GLAPI void APIENTRY glCopyMultiTexSubImage2DEXT (GLenum, GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexImageEXT (GLenum, GLenum, GLint, GLenum, GLenum, GLvoid *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexParameterfvEXT (GLenum, GLenum, GLenum, GLfloat *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexParameterivEXT (GLenum, GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexLevelParameterfvEXT (GLenum, GLenum, GLint, GLenum, GLfloat *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexLevelParameterivEXT (GLenum, GLenum, GLint, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glMultiTexImage3DEXT (GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glMultiTexSubImage3DEXT (GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCopyMultiTexSubImage3DEXT (GLenum, GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glBindMultiTextureEXT (GLenum, GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glEnableClientStateIndexedEXT (GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glDisableClientStateIndexedEXT (GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glMultiTexCoordPointerEXT (GLenum, GLint, GLenum, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glMultiTexEnvfEXT (GLenum, GLenum, GLenum, GLfloat);
|
||||||
|
GLAPI void APIENTRY glMultiTexEnvfvEXT (GLenum, GLenum, GLenum, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glMultiTexEnviEXT (GLenum, GLenum, GLenum, GLint);
|
||||||
|
GLAPI void APIENTRY glMultiTexEnvivEXT (GLenum, GLenum, GLenum, const GLint *);
|
||||||
|
GLAPI void APIENTRY glMultiTexGendEXT (GLenum, GLenum, GLenum, GLdouble);
|
||||||
|
GLAPI void APIENTRY glMultiTexGendvEXT (GLenum, GLenum, GLenum, const GLdouble *);
|
||||||
|
GLAPI void APIENTRY glMultiTexGenfEXT (GLenum, GLenum, GLenum, GLfloat);
|
||||||
|
GLAPI void APIENTRY glMultiTexGenfvEXT (GLenum, GLenum, GLenum, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glMultiTexGeniEXT (GLenum, GLenum, GLenum, GLint);
|
||||||
|
GLAPI void APIENTRY glMultiTexGenivEXT (GLenum, GLenum, GLenum, const GLint *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexEnvfvEXT (GLenum, GLenum, GLenum, GLfloat *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexEnvivEXT (GLenum, GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexGendvEXT (GLenum, GLenum, GLenum, GLdouble *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexGenfvEXT (GLenum, GLenum, GLenum, GLfloat *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexGenivEXT (GLenum, GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetFloatIndexedvEXT (GLenum, GLuint, GLfloat *);
|
||||||
|
GLAPI void APIENTRY glGetDoubleIndexedvEXT (GLenum, GLuint, GLdouble *);
|
||||||
|
GLAPI void APIENTRY glGetPointerIndexedvEXT (GLenum, GLuint, GLvoid* *);
|
||||||
|
GLAPI void APIENTRY glCompressedTextureImage3DEXT (GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedTextureImage2DEXT (GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedTextureImage1DEXT (GLuint, GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedTextureSubImage3DEXT (GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedTextureSubImage2DEXT (GLuint, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedTextureSubImage1DEXT (GLuint, GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glGetCompressedTextureImageEXT (GLuint, GLenum, GLint, GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedMultiTexImage3DEXT (GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedMultiTexImage2DEXT (GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedMultiTexImage1DEXT (GLenum, GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedMultiTexSubImage3DEXT (GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedMultiTexSubImage2DEXT (GLenum, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glCompressedMultiTexSubImage1DEXT (GLenum, GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glGetCompressedMultiTexImageEXT (GLenum, GLenum, GLint, GLvoid *);
|
||||||
|
GLAPI void APIENTRY glNamedProgramStringEXT (GLuint, GLenum, GLenum, GLsizei, const GLvoid *);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParameter4dEXT (GLuint, GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParameter4dvEXT (GLuint, GLenum, GLuint, const GLdouble *);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParameter4fEXT (GLuint, GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParameter4fvEXT (GLuint, GLenum, GLuint, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glGetNamedProgramLocalParameterdvEXT (GLuint, GLenum, GLuint, GLdouble *);
|
||||||
|
GLAPI void APIENTRY glGetNamedProgramLocalParameterfvEXT (GLuint, GLenum, GLuint, GLfloat *);
|
||||||
|
GLAPI void APIENTRY glGetNamedProgramivEXT (GLuint, GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetNamedProgramStringEXT (GLuint, GLenum, GLenum, GLvoid *);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParameters4fvEXT (GLuint, GLenum, GLuint, GLsizei, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParameterI4iEXT (GLuint, GLenum, GLuint, GLint, GLint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParameterI4ivEXT (GLuint, GLenum, GLuint, const GLint *);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParametersI4ivEXT (GLuint, GLenum, GLuint, GLsizei, const GLint *);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParameterI4uiEXT (GLuint, GLenum, GLuint, GLuint, GLuint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParameterI4uivEXT (GLuint, GLenum, GLuint, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glNamedProgramLocalParametersI4uivEXT (GLuint, GLenum, GLuint, GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glGetNamedProgramLocalParameterIivEXT (GLuint, GLenum, GLuint, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetNamedProgramLocalParameterIuivEXT (GLuint, GLenum, GLuint, GLuint *);
|
||||||
|
GLAPI void APIENTRY glTextureParameterIivEXT (GLuint, GLenum, GLenum, const GLint *);
|
||||||
|
GLAPI void APIENTRY glTextureParameterIuivEXT (GLuint, GLenum, GLenum, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glGetTextureParameterIivEXT (GLuint, GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetTextureParameterIuivEXT (GLuint, GLenum, GLenum, GLuint *);
|
||||||
|
GLAPI void APIENTRY glMultiTexParameterIivEXT (GLenum, GLenum, GLenum, const GLint *);
|
||||||
|
GLAPI void APIENTRY glMultiTexParameterIuivEXT (GLenum, GLenum, GLenum, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexParameterIivEXT (GLenum, GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetMultiTexParameterIuivEXT (GLenum, GLenum, GLenum, GLuint *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform1fEXT (GLuint, GLint, GLfloat);
|
||||||
|
GLAPI void APIENTRY glProgramUniform2fEXT (GLuint, GLint, GLfloat, GLfloat);
|
||||||
|
GLAPI void APIENTRY glProgramUniform3fEXT (GLuint, GLint, GLfloat, GLfloat, GLfloat);
|
||||||
|
GLAPI void APIENTRY glProgramUniform4fEXT (GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat);
|
||||||
|
GLAPI void APIENTRY glProgramUniform1iEXT (GLuint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glProgramUniform2iEXT (GLuint, GLint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glProgramUniform3iEXT (GLuint, GLint, GLint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glProgramUniform4iEXT (GLuint, GLint, GLint, GLint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glProgramUniform1fvEXT (GLuint, GLint, GLsizei, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform2fvEXT (GLuint, GLint, GLsizei, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform3fvEXT (GLuint, GLint, GLsizei, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform4fvEXT (GLuint, GLint, GLsizei, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform1ivEXT (GLuint, GLint, GLsizei, const GLint *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform2ivEXT (GLuint, GLint, GLsizei, const GLint *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform3ivEXT (GLuint, GLint, GLsizei, const GLint *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform4ivEXT (GLuint, GLint, GLsizei, const GLint *);
|
||||||
|
GLAPI void APIENTRY glProgramUniformMatrix2fvEXT (GLuint, GLint, GLsizei, GLboolean, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniformMatrix3fvEXT (GLuint, GLint, GLsizei, GLboolean, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniformMatrix4fvEXT (GLuint, GLint, GLsizei, GLboolean, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniformMatrix2x3fvEXT (GLuint, GLint, GLsizei, GLboolean, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniformMatrix3x2fvEXT (GLuint, GLint, GLsizei, GLboolean, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniformMatrix2x4fvEXT (GLuint, GLint, GLsizei, GLboolean, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniformMatrix4x2fvEXT (GLuint, GLint, GLsizei, GLboolean, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniformMatrix3x4fvEXT (GLuint, GLint, GLsizei, GLboolean, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniformMatrix4x3fvEXT (GLuint, GLint, GLsizei, GLboolean, const GLfloat *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform1uiEXT (GLuint, GLint, GLuint);
|
||||||
|
GLAPI void APIENTRY glProgramUniform2uiEXT (GLuint, GLint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glProgramUniform3uiEXT (GLuint, GLint, GLuint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glProgramUniform4uiEXT (GLuint, GLint, GLuint, GLuint, GLuint, GLuint);
|
||||||
|
GLAPI void APIENTRY glProgramUniform1uivEXT (GLuint, GLint, GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform2uivEXT (GLuint, GLint, GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform3uivEXT (GLuint, GLint, GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glProgramUniform4uivEXT (GLuint, GLint, GLsizei, const GLuint *);
|
||||||
|
GLAPI void APIENTRY glNamedBufferDataEXT (GLuint, GLsizeiptr, const GLvoid *, GLenum);
|
||||||
|
GLAPI void APIENTRY glNamedBufferSubDataEXT (GLuint, GLintptr, GLsizeiptr, const GLvoid *);
|
||||||
|
GLAPI GLvoid* APIENTRY glMapNamedBufferEXT (GLuint, GLenum);
|
||||||
|
GLAPI GLboolean APIENTRY glUnmapNamedBufferEXT (GLuint);
|
||||||
|
GLAPI void APIENTRY glGetNamedBufferParameterivEXT (GLuint, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGetNamedBufferPointervEXT (GLuint, GLenum, GLvoid* *);
|
||||||
|
GLAPI void APIENTRY glGetNamedBufferSubDataEXT (GLuint, GLintptr, GLsizeiptr, GLvoid *);
|
||||||
|
GLAPI void APIENTRY glTextureBufferEXT (GLuint, GLenum, GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glMultiTexBufferEXT (GLenum, GLenum, GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glNamedRenderbufferStorageEXT (GLuint, GLenum, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glGetNamedRenderbufferParameterivEXT (GLuint, GLenum, GLint *);
|
||||||
|
GLAPI GLenum APIENTRY glCheckNamedFramebufferStatusEXT (GLuint, GLenum);
|
||||||
|
GLAPI void APIENTRY glNamedFramebufferTexture1DEXT (GLuint, GLenum, GLenum, GLuint, GLint);
|
||||||
|
GLAPI void APIENTRY glNamedFramebufferTexture2DEXT (GLuint, GLenum, GLenum, GLuint, GLint);
|
||||||
|
GLAPI void APIENTRY glNamedFramebufferTexture3DEXT (GLuint, GLenum, GLenum, GLuint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glNamedFramebufferRenderbufferEXT (GLuint, GLenum, GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glGetNamedFramebufferAttachmentParameterivEXT (GLuint, GLenum, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glGenerateTextureMipmapEXT (GLuint, GLenum);
|
||||||
|
GLAPI void APIENTRY glGenerateMultiTexMipmapEXT (GLenum, GLenum);
|
||||||
|
GLAPI void APIENTRY glFramebufferDrawBufferEXT (GLuint, GLenum);
|
||||||
|
GLAPI void APIENTRY glFramebufferDrawBuffersEXT (GLuint, GLsizei, const GLenum *);
|
||||||
|
GLAPI void APIENTRY glFramebufferReadBufferEXT (GLuint, GLenum);
|
||||||
|
GLAPI void APIENTRY glGetFramebufferParameterivEXT (GLuint, GLenum, GLint *);
|
||||||
|
GLAPI void APIENTRY glNamedRenderbufferStorageMultisampleEXT (GLuint, GLsizei, GLenum, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glNamedRenderbufferStorageMultisampleCoverageEXT (GLuint, GLsizei, GLsizei, GLenum, GLsizei, GLsizei);
|
||||||
|
GLAPI void APIENTRY glNamedFramebufferTextureEXT (GLuint, GLenum, GLuint, GLint);
|
||||||
|
GLAPI void APIENTRY glNamedFramebufferTextureLayerEXT (GLuint, GLenum, GLuint, GLint, GLint);
|
||||||
|
GLAPI void APIENTRY glNamedFramebufferTextureFaceEXT (GLuint, GLenum, GLuint, GLint, GLenum);
|
||||||
|
GLAPI void APIENTRY glTextureRenderbufferEXT (GLuint, GLenum, GLuint);
|
||||||
|
GLAPI void APIENTRY glMultiTexRenderbufferEXT (GLenum, GLenum, GLuint);
|
||||||
|
#endif /* GL_GLEXT_PROTOTYPES */
|
||||||
|
typedef void (APIENTRYP PFNGLCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask);
|
||||||
|
typedef void (APIENTRYP PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXLOADFEXTPROC) (GLenum mode, const GLfloat *m);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXLOADDEXTPROC) (GLenum mode, const GLdouble *m);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXMULTFEXTPROC) (GLenum mode, const GLfloat *m);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXMULTDEXTPROC) (GLenum mode, const GLdouble *m);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXLOADIDENTITYEXTPROC) (GLenum mode);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXROTATEFEXTPROC) (GLenum mode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXROTATEDEXTPROC) (GLenum mode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXSCALEFEXTPROC) (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXSCALEDEXTPROC) (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXTRANSLATEFEXTPROC) (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXTRANSLATEDEXTPROC) (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXFRUSTUMEXTPROC) (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXORTHOEXTPROC) (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXPOPEXTPROC) (GLenum mode);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXPUSHEXTPROC) (GLenum mode);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXLOADTRANSPOSEFEXTPROC) (GLenum mode, const GLfloat *m);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXLOADTRANSPOSEDEXTPROC) (GLenum mode, const GLdouble *m);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXMULTTRANSPOSEFEXTPROC) (GLenum mode, const GLfloat *m);
|
||||||
|
typedef void (APIENTRYP PFNGLMATRIXMULTTRANSPOSEDEXTPROC) (GLenum mode, const GLdouble *m);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREPARAMETERFEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat param);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint param);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLCOPYTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
|
||||||
|
typedef void (APIENTRYP PFNGLCOPYTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
|
||||||
|
typedef void (APIENTRYP PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
|
||||||
|
typedef void (APIENTRYP PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, 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 PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXPARAMETERFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXPARAMETERIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLCOPYMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
|
||||||
|
typedef void (APIENTRYP PFNGLCOPYMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
|
||||||
|
typedef void (APIENTRYP PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
|
||||||
|
typedef void (APIENTRYP PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, 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 PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
|
||||||
|
typedef void (APIENTRYP PFNGLBINDMULTITEXTUREEXTPROC) (GLenum texunit, GLenum target, GLuint texture);
|
||||||
|
typedef void (APIENTRYP PFNGLENABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index);
|
||||||
|
typedef void (APIENTRYP PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXCOORDPOINTEREXTPROC) (GLenum texunit, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXENVFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXENVIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXGENDEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble param);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLdouble *params);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXGENFEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat param);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXGENIEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint param);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETFLOATINDEXEDVEXTPROC) (GLenum target, GLuint index, GLfloat *data);
|
||||||
|
typedef void (APIENTRYP PFNGLGETDOUBLEINDEXEDVEXTPROC) (GLenum target, GLuint index, GLdouble *data);
|
||||||
|
typedef void (APIENTRYP PFNGLGETPOINTERINDEXEDVEXTPROC) (GLenum target, GLuint index, GLvoid* *data);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint lod, GLvoid *img);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *bits);
|
||||||
|
typedef void (APIENTRYP PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint lod, GLvoid *img);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum format, GLsizei len, const GLvoid *string);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLdouble *params);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDPROGRAMIVEXTPROC) (GLuint program, GLenum target, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum pname, GLvoid *string);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat *params);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC) (GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLuint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat v0);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint v0);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1UIEXTPROC) (GLuint program, GLint location, GLuint v0);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDBUFFERDATAEXTPROC) (GLuint buffer, GLsizeiptr size, const GLvoid *data, GLenum usage);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const GLvoid *data);
|
||||||
|
typedef GLvoid* (APIENTRYP PFNGLMAPNAMEDBUFFEREXTPROC) (GLuint buffer, GLenum access);
|
||||||
|
typedef GLboolean (APIENTRYP PFNGLUNMAPNAMEDBUFFEREXTPROC) (GLuint buffer);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC) (GLuint buffer, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDBUFFERPOINTERVEXTPROC) (GLuint buffer, GLenum pname, GLvoid* *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLvoid *data);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTUREBUFFEREXTPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXBUFFEREXTPROC) (GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC) (GLuint renderbuffer, GLenum pname, GLint *params);
|
||||||
|
typedef GLenum (APIENTRYP PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC) (GLuint framebuffer, GLenum target);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
|
||||||
|
typedef void (APIENTRYP PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLGENERATETEXTUREMIPMAPEXTPROC) (GLuint texture, GLenum target);
|
||||||
|
typedef void (APIENTRYP PFNGLGENERATEMULTITEXMIPMAPEXTPROC) (GLenum texunit, GLenum target);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC) (GLuint framebuffer, GLenum mode);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC) (GLuint framebuffer, GLsizei n, const GLenum *bufs);
|
||||||
|
typedef void (APIENTRYP PFNGLFRAMEBUFFERREADBUFFEREXTPROC) (GLuint framebuffer, GLenum mode);
|
||||||
|
typedef void (APIENTRYP PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum pname, GLint *params);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC) (GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
|
||||||
|
typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face);
|
||||||
|
typedef void (APIENTRYP PFNGLTEXTURERENDERBUFFEREXTPROC) (GLuint texture, GLenum target, GLuint renderbuffer);
|
||||||
|
typedef void (APIENTRYP PFNGLMULTITEXRENDERBUFFEREXTPROC) (GLenum texunit, GLenum target, GLuint renderbuffer);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef GL_EXT_vertex_array_bgra
|
||||||
|
#define GL_EXT_vertex_array_bgra 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -46,9 +46,9 @@ extern "C" {
|
||||||
/*************************************************************/
|
/*************************************************************/
|
||||||
|
|
||||||
/* Header file version number, required by OpenGL ABI for Linux */
|
/* Header file version number, required by OpenGL ABI for Linux */
|
||||||
/* glxext.h last updated 2008/08/10 */
|
/* glxext.h last updated 2008/10/22 */
|
||||||
/* Current version at http://www.opengl.org/registry/ */
|
/* Current version at http://www.opengl.org/registry/ */
|
||||||
#define GLX_GLXEXT_VERSION 20
|
#define GLX_GLXEXT_VERSION 21
|
||||||
|
|
||||||
#ifndef GLX_VERSION_1_3
|
#ifndef GLX_VERSION_1_3
|
||||||
#define GLX_WINDOW_BIT 0x00000001
|
#define GLX_WINDOW_BIT 0x00000001
|
||||||
|
@ -347,25 +347,33 @@ extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GLX_NV_present_video
|
#ifndef GLX_NV_present_video
|
||||||
#define GLX_GLX_NUM_VIDEO_SLOTS_NV 0x20F0
|
#define GLX_NUM_VIDEO_SLOTS_NV 0x20F0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GLX_NV_video_out
|
#ifndef GLX_NV_video_out
|
||||||
#define GLX_GLX_VIDEO_OUT_COLOR_NV 0x20C3
|
#define GLX_VIDEO_OUT_COLOR_NV 0x20C3
|
||||||
#define GLX_GLX_VIDEO_OUT_ALPHA_NV 0x20C4
|
#define GLX_VIDEO_OUT_ALPHA_NV 0x20C4
|
||||||
#define GLX_GLX_VIDEO_OUT_DEPTH_NV 0x20C5
|
#define GLX_VIDEO_OUT_DEPTH_NV 0x20C5
|
||||||
#define GLX_GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
|
#define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
|
||||||
#define GLX_GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
|
#define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
|
||||||
#define GLX_GLX_VIDEO_OUT_FRAME_NV 0x20C8
|
#define GLX_VIDEO_OUT_FRAME_NV 0x20C8
|
||||||
#define GLX_GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
|
#define GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
|
||||||
#define GLX_GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
|
#define GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
|
||||||
#define GLX_GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
|
#define GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
|
||||||
#define GLX_GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
|
#define GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GLX_NV_swap_group
|
#ifndef GLX_NV_swap_group
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef GLX_ARB_create_context
|
||||||
|
#define GLX_CONTEXT_DEBUG_BIT_ARB 0x00000001
|
||||||
|
#define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
|
||||||
|
#define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091
|
||||||
|
#define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092
|
||||||
|
#define GLX_CONTEXT_FLAGS_ARB 0x2094
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************/
|
/*************************************************************/
|
||||||
|
|
||||||
|
@ -809,6 +817,14 @@ typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawab
|
||||||
#define GLX_NV_swap_group 1
|
#define GLX_NV_swap_group 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef GLX_ARB_create_context
|
||||||
|
#define GLX_ARB_create_context 1
|
||||||
|
#ifdef GLX_GLXEXT_PROTOTYPES
|
||||||
|
extern GLXContext glXCreateContextAttribsARB (Display *, GLXFBConfig, GLXContext, Bool, const int *);
|
||||||
|
#endif /* GLX_GLXEXT_PROTOTYPES */
|
||||||
|
typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|
|
@ -419,6 +419,52 @@ init(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove window border/decorations.
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
no_border( Display *dpy, Window w)
|
||||||
|
{
|
||||||
|
static const unsigned MWM_HINTS_DECORATIONS = (1 << 1);
|
||||||
|
static const int PROP_MOTIF_WM_HINTS_ELEMENTS = 5;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
unsigned long flags;
|
||||||
|
unsigned long functions;
|
||||||
|
unsigned long decorations;
|
||||||
|
long inputMode;
|
||||||
|
unsigned long status;
|
||||||
|
} PropMotifWmHints;
|
||||||
|
|
||||||
|
PropMotifWmHints motif_hints;
|
||||||
|
Atom prop, proptype;
|
||||||
|
unsigned long flags = 0;
|
||||||
|
|
||||||
|
/* setup the property */
|
||||||
|
motif_hints.flags = MWM_HINTS_DECORATIONS;
|
||||||
|
motif_hints.decorations = flags;
|
||||||
|
|
||||||
|
/* get the atom for the property */
|
||||||
|
prop = XInternAtom( dpy, "_MOTIF_WM_HINTS", True );
|
||||||
|
if (!prop) {
|
||||||
|
/* something went wrong! */
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* not sure this is correct, seems to work, XA_WM_HINTS didn't work */
|
||||||
|
proptype = prop;
|
||||||
|
|
||||||
|
XChangeProperty( dpy, w, /* display, window */
|
||||||
|
prop, proptype, /* property, type */
|
||||||
|
32, /* format: 32-bit datums */
|
||||||
|
PropModeReplace, /* mode */
|
||||||
|
(unsigned char *) &motif_hints, /* data */
|
||||||
|
PROP_MOTIF_WM_HINTS_ELEMENTS /* nelements */
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Create an RGB, double-buffered window.
|
* Create an RGB, double-buffered window.
|
||||||
* Return the window and context handles.
|
* Return the window and context handles.
|
||||||
|
@ -479,13 +525,15 @@ make_window( Display *dpy, const char *name,
|
||||||
attr.colormap = XCreateColormap( dpy, root, visinfo->visual, AllocNone);
|
attr.colormap = XCreateColormap( dpy, root, visinfo->visual, AllocNone);
|
||||||
attr.event_mask = StructureNotifyMask | ExposureMask | KeyPressMask;
|
attr.event_mask = StructureNotifyMask | ExposureMask | KeyPressMask;
|
||||||
/* XXX this is a bad way to get a borderless window! */
|
/* XXX this is a bad way to get a borderless window! */
|
||||||
attr.override_redirect = fullscreen;
|
mask = CWBackPixel | CWBorderPixel | CWColormap | CWEventMask;
|
||||||
mask = CWBackPixel | CWBorderPixel | CWColormap | CWEventMask | CWOverrideRedirect;
|
|
||||||
|
|
||||||
win = XCreateWindow( dpy, root, x, y, width, height,
|
win = XCreateWindow( dpy, root, x, y, width, height,
|
||||||
0, visinfo->depth, InputOutput,
|
0, visinfo->depth, InputOutput,
|
||||||
visinfo->visual, mask, &attr );
|
visinfo->visual, mask, &attr );
|
||||||
|
|
||||||
|
if (fullscreen)
|
||||||
|
no_border(dpy, win);
|
||||||
|
|
||||||
/* set hints and properties */
|
/* set hints and properties */
|
||||||
{
|
{
|
||||||
XSizeHints sizehints;
|
XSizeHints sizehints;
|
||||||
|
|
|
@ -121,7 +121,7 @@ static char ** extension_table = NULL;
|
||||||
static unsigned num_extensions;
|
static unsigned num_extensions;
|
||||||
|
|
||||||
static GLboolean use_ztrick = GL_FALSE;
|
static GLboolean use_ztrick = GL_FALSE;
|
||||||
static GLfloat aspect;
|
static GLfloat aspectX = 1.0f, aspectY = 1.0f;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
@ -313,13 +313,13 @@ draw(void)
|
||||||
|
|
||||||
glMatrixMode(GL_PROJECTION);
|
glMatrixMode(GL_PROJECTION);
|
||||||
glLoadIdentity();
|
glLoadIdentity();
|
||||||
glFrustum(-1.0, 1.0, -aspect, aspect, 5.0, 60.0);
|
glFrustum(-aspectX, aspectX, -aspectY, aspectY, 5.0, 60.0);
|
||||||
|
|
||||||
glEnable(GL_LIGHTING);
|
glEnable(GL_LIGHTING);
|
||||||
|
|
||||||
glMatrixMode(GL_MODELVIEW);
|
glMatrixMode(GL_MODELVIEW);
|
||||||
glLoadIdentity();
|
glLoadIdentity();
|
||||||
glTranslatef(0.0, 0.0, -40.0);
|
glTranslatef(0.0, 0.0, -45.0);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
|
@ -356,17 +356,23 @@ draw(void)
|
||||||
static void
|
static void
|
||||||
reshape(int width, int height)
|
reshape(int width, int height)
|
||||||
{
|
{
|
||||||
aspect = (GLfloat) height / (GLfloat) width;
|
if (width > height) {
|
||||||
|
aspectX = (GLfloat) width / (GLfloat) height;
|
||||||
|
aspectY = 1.0;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
aspectX = 1.0;
|
||||||
|
aspectY = (GLfloat) height / (GLfloat) width;
|
||||||
|
}
|
||||||
|
|
||||||
glViewport(0, 0, (GLint) width, (GLint) height);
|
glViewport(0, 0, (GLint) width, (GLint) height);
|
||||||
glMatrixMode(GL_PROJECTION);
|
glMatrixMode(GL_PROJECTION);
|
||||||
glLoadIdentity();
|
glLoadIdentity();
|
||||||
|
|
||||||
glFrustum(-1.0, 1.0, -aspect, aspect, 5.0, 60.0);
|
glFrustum(-aspectX, aspectX, -aspectY, aspectY, 5.0, 60.0);
|
||||||
glMatrixMode(GL_MODELVIEW);
|
glMatrixMode(GL_MODELVIEW);
|
||||||
glLoadIdentity();
|
glLoadIdentity();
|
||||||
glTranslatef(0.0, 0.0, -40.0);
|
glTranslatef(0.0, 0.0, -45.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -407,13 +413,59 @@ init(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove window border/decorations.
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
no_border( Display *dpy, Window w)
|
||||||
|
{
|
||||||
|
static const unsigned MWM_HINTS_DECORATIONS = (1 << 1);
|
||||||
|
static const int PROP_MOTIF_WM_HINTS_ELEMENTS = 5;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
unsigned long flags;
|
||||||
|
unsigned long functions;
|
||||||
|
unsigned long decorations;
|
||||||
|
long inputMode;
|
||||||
|
unsigned long status;
|
||||||
|
} PropMotifWmHints;
|
||||||
|
|
||||||
|
PropMotifWmHints motif_hints;
|
||||||
|
Atom prop, proptype;
|
||||||
|
unsigned long flags = 0;
|
||||||
|
|
||||||
|
/* setup the property */
|
||||||
|
motif_hints.flags = MWM_HINTS_DECORATIONS;
|
||||||
|
motif_hints.decorations = flags;
|
||||||
|
|
||||||
|
/* get the atom for the property */
|
||||||
|
prop = XInternAtom( dpy, "_MOTIF_WM_HINTS", True );
|
||||||
|
if (!prop) {
|
||||||
|
/* something went wrong! */
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* not sure this is correct, seems to work, XA_WM_HINTS didn't work */
|
||||||
|
proptype = prop;
|
||||||
|
|
||||||
|
XChangeProperty( dpy, w, /* display, window */
|
||||||
|
prop, proptype, /* property, type */
|
||||||
|
32, /* format: 32-bit datums */
|
||||||
|
PropModeReplace, /* mode */
|
||||||
|
(unsigned char *) &motif_hints, /* data */
|
||||||
|
PROP_MOTIF_WM_HINTS_ELEMENTS /* nelements */
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Create an RGB, double-buffered window.
|
* Create an RGB, double-buffered window.
|
||||||
* Return the window and context handles.
|
* Return the window and context handles.
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
make_window( Display *dpy, const char *name,
|
make_window( Display *dpy, const char *name,
|
||||||
int x, int y, int width, int height,
|
int x, int y, int width, int height, GLboolean fullscreen,
|
||||||
Window *winRet, GLXContext *ctxRet)
|
Window *winRet, GLXContext *ctxRet)
|
||||||
{
|
{
|
||||||
int attrib[] = { GLX_RGBA,
|
int attrib[] = { GLX_RGBA,
|
||||||
|
@ -434,6 +486,12 @@ make_window( Display *dpy, const char *name,
|
||||||
scrnum = DefaultScreen( dpy );
|
scrnum = DefaultScreen( dpy );
|
||||||
root = RootWindow( dpy, scrnum );
|
root = RootWindow( dpy, scrnum );
|
||||||
|
|
||||||
|
if (fullscreen) {
|
||||||
|
x = y = 0;
|
||||||
|
width = DisplayWidth( dpy, scrnum );
|
||||||
|
height = DisplayHeight( dpy, scrnum );
|
||||||
|
}
|
||||||
|
|
||||||
visinfo = glXChooseVisual( dpy, scrnum, attrib );
|
visinfo = glXChooseVisual( dpy, scrnum, attrib );
|
||||||
if (!visinfo) {
|
if (!visinfo) {
|
||||||
printf("Error: couldn't get an RGB, Double-buffered visual\n");
|
printf("Error: couldn't get an RGB, Double-buffered visual\n");
|
||||||
|
@ -464,6 +522,9 @@ make_window( Display *dpy, const char *name,
|
||||||
None, (char **)NULL, 0, &sizehints);
|
None, (char **)NULL, 0, &sizehints);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (fullscreen)
|
||||||
|
no_border(dpy, win);
|
||||||
|
|
||||||
ctx = glXCreateContext( dpy, visinfo, NULL, True );
|
ctx = glXCreateContext( dpy, visinfo, NULL, True );
|
||||||
if (!ctx) {
|
if (!ctx) {
|
||||||
printf("Error: glXCreateContext failed\n");
|
printf("Error: glXCreateContext failed\n");
|
||||||
|
@ -572,7 +633,6 @@ event_loop(Display *dpy, Window win)
|
||||||
* Display the refresh rate of the display using the GLX_OML_sync_control
|
* Display the refresh rate of the display using the GLX_OML_sync_control
|
||||||
* extension.
|
* extension.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static void
|
static void
|
||||||
show_refresh_rate( Display * dpy )
|
show_refresh_rate( Display * dpy )
|
||||||
{
|
{
|
||||||
|
@ -599,7 +659,6 @@ show_refresh_rate( Display * dpy )
|
||||||
* \param string String of GLX extensions.
|
* \param string String of GLX extensions.
|
||||||
* \sa is_extension_supported
|
* \sa is_extension_supported
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static void
|
static void
|
||||||
make_extension_table( const char * string )
|
make_extension_table( const char * string )
|
||||||
{
|
{
|
||||||
|
@ -679,7 +738,6 @@ make_extension_table( const char * string )
|
||||||
* \return GL_TRUE of the extension is supported, GL_FALSE otherwise.
|
* \return GL_TRUE of the extension is supported, GL_FALSE otherwise.
|
||||||
* \sa make_extension_table
|
* \sa make_extension_table
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static GLboolean
|
static GLboolean
|
||||||
is_extension_supported( const char * ext )
|
is_extension_supported( const char * ext )
|
||||||
{
|
{
|
||||||
|
@ -705,11 +763,12 @@ main(int argc, char *argv[])
|
||||||
int swap_interval = 1;
|
int swap_interval = 1;
|
||||||
GLboolean do_swap_interval = GL_FALSE;
|
GLboolean do_swap_interval = GL_FALSE;
|
||||||
GLboolean force_get_rate = GL_FALSE;
|
GLboolean force_get_rate = GL_FALSE;
|
||||||
|
GLboolean fullscreen = GL_FALSE;
|
||||||
GLboolean printInfo = GL_FALSE;
|
GLboolean printInfo = GL_FALSE;
|
||||||
int i;
|
int i;
|
||||||
PFNGLXSWAPINTERVALMESAPROC set_swap_interval = NULL;
|
PFNGLXSWAPINTERVALMESAPROC set_swap_interval = NULL;
|
||||||
PFNGLXGETSWAPINTERVALMESAPROC get_swap_interval = NULL;
|
PFNGLXGETSWAPINTERVALMESAPROC get_swap_interval = NULL;
|
||||||
|
int width = 300, height = 300;
|
||||||
|
|
||||||
for (i = 1; i < argc; i++) {
|
for (i = 1; i < argc; i++) {
|
||||||
if (strcmp(argv[i], "-display") == 0 && i + 1 < argc) {
|
if (strcmp(argv[i], "-display") == 0 && i + 1 < argc) {
|
||||||
|
@ -731,6 +790,9 @@ main(int argc, char *argv[])
|
||||||
*/
|
*/
|
||||||
force_get_rate = GL_TRUE;
|
force_get_rate = GL_TRUE;
|
||||||
}
|
}
|
||||||
|
else if (strcmp(argv[i], "-fullscreen") == 0) {
|
||||||
|
fullscreen = GL_TRUE;
|
||||||
|
}
|
||||||
else if (strcmp(argv[i], "-ztrick") == 0) {
|
else if (strcmp(argv[i], "-ztrick") == 0) {
|
||||||
use_ztrick = GL_TRUE;
|
use_ztrick = GL_TRUE;
|
||||||
}
|
}
|
||||||
|
@ -743,6 +805,7 @@ main(int argc, char *argv[])
|
||||||
printf(" -info Display GL information\n");
|
printf(" -info Display GL information\n");
|
||||||
printf(" -swap N Swap no more than once per N vertical refreshes\n");
|
printf(" -swap N Swap no more than once per N vertical refreshes\n");
|
||||||
printf(" -forcegetrate Try to use glXGetMscRateOML function\n");
|
printf(" -forcegetrate Try to use glXGetMscRateOML function\n");
|
||||||
|
printf(" -fullscreen Full-screen window\n");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -753,7 +816,7 @@ main(int argc, char *argv[])
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
make_window(dpy, "glxgears", 0, 0, 300, 300, &win, &ctx);
|
make_window(dpy, "glxgears", 0, 0, width, height, fullscreen, &win, &ctx);
|
||||||
XMapWindow(dpy, win);
|
XMapWindow(dpy, win);
|
||||||
glXMakeCurrent(dpy, win, ctx);
|
glXMakeCurrent(dpy, win, ctx);
|
||||||
|
|
||||||
|
@ -817,7 +880,7 @@ main(int argc, char *argv[])
|
||||||
/* Set initial projection/viewing transformation.
|
/* Set initial projection/viewing transformation.
|
||||||
* same as glxgears.c
|
* same as glxgears.c
|
||||||
*/
|
*/
|
||||||
reshape(300, 300);
|
reshape(width, height);
|
||||||
|
|
||||||
event_loop(dpy, win);
|
event_loop(dpy, win);
|
||||||
|
|
||||||
|
|
|
@ -55,7 +55,7 @@ typedef struct GLXGenericGetString
|
||||||
#define X_GLXGenericGetString 0
|
#define X_GLXGenericGetString 0
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Query the Server GLX string and cache it in the display private.
|
* Query the Server GLX string.
|
||||||
* This routine will allocate the necessay space for the string.
|
* This routine will allocate the necessay space for the string.
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
|
|
|
@ -449,6 +449,7 @@ i830_emit_state(struct intel_context *intel)
|
||||||
aper_array[aper_count++] = intel->batch->buf;
|
aper_array[aper_count++] = intel->batch->buf;
|
||||||
if (dirty & I830_UPLOAD_BUFFERS) {
|
if (dirty & I830_UPLOAD_BUFFERS) {
|
||||||
aper_array[aper_count++] = state->draw_region->buffer;
|
aper_array[aper_count++] = state->draw_region->buffer;
|
||||||
|
if (state->depth_region)
|
||||||
aper_array[aper_count++] = state->depth_region->buffer;
|
aper_array[aper_count++] = state->depth_region->buffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -333,8 +333,10 @@ static void emit_constant_buffer(struct brw_context *brw)
|
||||||
brw->curbe.curbe_bo,
|
brw->curbe.curbe_bo,
|
||||||
};
|
};
|
||||||
|
|
||||||
if (dri_bufmgr_check_aperture_space(aper_array, ARRAY_SIZE(aper_array)))
|
if (dri_bufmgr_check_aperture_space(aper_array, ARRAY_SIZE(aper_array))) {
|
||||||
intel_batchbuffer_flush(intel->batch);
|
intel_batchbuffer_flush(intel->batch);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
BEGIN_BATCH(2, IGNORE_CLIPRECTS);
|
BEGIN_BATCH(2, IGNORE_CLIPRECTS);
|
||||||
if (sz == 0) {
|
if (sz == 0) {
|
||||||
|
|
|
@ -86,8 +86,10 @@ static void upload_binding_table_pointers(struct brw_context *brw)
|
||||||
brw->wm.bind_bo,
|
brw->wm.bind_bo,
|
||||||
};
|
};
|
||||||
|
|
||||||
if (dri_bufmgr_check_aperture_space(aper_array, ARRAY_SIZE(aper_array)))
|
if (dri_bufmgr_check_aperture_space(aper_array, ARRAY_SIZE(aper_array))) {
|
||||||
intel_batchbuffer_flush(intel->batch);
|
intel_batchbuffer_flush(intel->batch);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
BEGIN_BATCH(6, IGNORE_CLIPRECTS);
|
BEGIN_BATCH(6, IGNORE_CLIPRECTS);
|
||||||
OUT_BATCH(CMD_BINDING_TABLE_PTRS << 16 | (6 - 2));
|
OUT_BATCH(CMD_BINDING_TABLE_PTRS << 16 | (6 - 2));
|
||||||
|
@ -152,8 +154,10 @@ static void upload_psp_urb_cbs(struct brw_context *brw )
|
||||||
brw->cc.state_bo,
|
brw->cc.state_bo,
|
||||||
};
|
};
|
||||||
|
|
||||||
if (dri_bufmgr_check_aperture_space(aper_array, ARRAY_SIZE(aper_array)))
|
if (dri_bufmgr_check_aperture_space(aper_array, ARRAY_SIZE(aper_array))) {
|
||||||
intel_batchbuffer_flush(intel->batch);
|
intel_batchbuffer_flush(intel->batch);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
upload_pipelined_state_pointers(brw);
|
upload_pipelined_state_pointers(brw);
|
||||||
brw_upload_urb_fence(brw);
|
brw_upload_urb_fence(brw);
|
||||||
|
@ -216,8 +220,10 @@ static void emit_depthbuffer(struct brw_context *brw)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dri_bufmgr_check_aperture_space(aper_array, ARRAY_SIZE(aper_array)))
|
if (dri_bufmgr_check_aperture_space(aper_array, ARRAY_SIZE(aper_array))) {
|
||||||
intel_batchbuffer_flush(intel->batch);
|
intel_batchbuffer_flush(intel->batch);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
BEGIN_BATCH(len, IGNORE_CLIPRECTS);
|
BEGIN_BATCH(len, IGNORE_CLIPRECTS);
|
||||||
OUT_BATCH(CMD_DEPTH_BUFFER << 16 | (len - 2));
|
OUT_BATCH(CMD_DEPTH_BUFFER << 16 | (len - 2));
|
||||||
|
|
|
@ -272,24 +272,53 @@ intelEmitCopyBlit(struct intel_context *intel,
|
||||||
GLshort w, GLshort h,
|
GLshort w, GLshort h,
|
||||||
GLenum logic_op)
|
GLenum logic_op)
|
||||||
{
|
{
|
||||||
GLuint CMD, BR13;
|
GLuint CMD, BR13, pass = 0;
|
||||||
int dst_y2 = dst_y + h;
|
int dst_y2 = dst_y + h;
|
||||||
int dst_x2 = dst_x + w;
|
int dst_x2 = dst_x + w;
|
||||||
dri_bo *aper_array[3];
|
dri_bo *aper_array[3];
|
||||||
BATCH_LOCALS;
|
BATCH_LOCALS;
|
||||||
|
|
||||||
/* do space/cliprects check before going any further */
|
/* do space/cliprects check before going any further */
|
||||||
intel_batchbuffer_require_space(intel->batch, 8 * 4, NO_LOOP_CLIPRECTS);
|
do {
|
||||||
again:
|
|
||||||
aper_array[0] = intel->batch->buf;
|
aper_array[0] = intel->batch->buf;
|
||||||
aper_array[1] = dst_buffer;
|
aper_array[1] = dst_buffer;
|
||||||
aper_array[2] = src_buffer;
|
aper_array[2] = src_buffer;
|
||||||
|
|
||||||
if (dri_bufmgr_check_aperture_space(aper_array, 3) != 0) {
|
if (dri_bufmgr_check_aperture_space(aper_array, 3) != 0) {
|
||||||
intel_batchbuffer_flush(intel->batch);
|
intel_batchbuffer_flush(intel->batch);
|
||||||
goto again;
|
pass++;
|
||||||
|
} else
|
||||||
|
break;
|
||||||
|
} while (pass < 2);
|
||||||
|
|
||||||
|
if (pass >= 2) {
|
||||||
|
GLboolean locked = GL_FALSE;
|
||||||
|
if (!intel->locked) {
|
||||||
|
LOCK_HARDWARE(intel);
|
||||||
|
locked = GL_TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dri_bo_map(dst_buffer, GL_TRUE);
|
||||||
|
dri_bo_map(src_buffer, GL_FALSE);
|
||||||
|
_mesa_copy_rect((GLubyte *)dst_buffer->virtual + dst_offset,
|
||||||
|
cpp,
|
||||||
|
dst_pitch,
|
||||||
|
dst_x, dst_y,
|
||||||
|
w, h,
|
||||||
|
(GLubyte *)src_buffer->virtual + src_offset,
|
||||||
|
src_pitch,
|
||||||
|
src_x, src_y);
|
||||||
|
|
||||||
|
dri_bo_unmap(src_buffer);
|
||||||
|
dri_bo_unmap(dst_buffer);
|
||||||
|
|
||||||
|
if (locked)
|
||||||
|
UNLOCK_HARDWARE(intel);
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
intel_batchbuffer_require_space(intel->batch, 8 * 4, NO_LOOP_CLIPRECTS);
|
||||||
DBG("%s src:buf(%p)/%d+%d %d,%d dst:buf(%p)/%d+%d %d,%d sz:%dx%d\n",
|
DBG("%s src:buf(%p)/%d+%d %d,%d dst:buf(%p)/%d+%d %d,%d sz:%dx%d\n",
|
||||||
__FUNCTION__,
|
__FUNCTION__,
|
||||||
src_buffer, src_pitch, src_offset, src_x, src_y,
|
src_buffer, src_pitch, src_offset, src_x, src_y,
|
||||||
|
|
|
@ -900,7 +900,7 @@ radeonCreateScreen( __DRIscreenPrivate *sPriv )
|
||||||
screen->depthHasSurface = (sPriv->ddx_version.major > 4) ||
|
screen->depthHasSurface = (sPriv->ddx_version.major > 4) ||
|
||||||
/* these chips don't use tiled z without hyperz. So always pretend
|
/* these chips don't use tiled z without hyperz. So always pretend
|
||||||
we have set up a surface which will cause linear reads/writes */
|
we have set up a surface which will cause linear reads/writes */
|
||||||
((screen->chip_family & RADEON_CLASS_R100) &&
|
(IS_R100_CLASS(screen) &&
|
||||||
!(screen->chip_flags & RADEON_CHIPSET_TCL));
|
!(screen->chip_flags & RADEON_CHIPSET_TCL));
|
||||||
|
|
||||||
if ( dri_priv->textureSize == 0 ) {
|
if ( dri_priv->textureSize == 0 ) {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* Mesa 3-D graphics library
|
* Mesa 3-D graphics library
|
||||||
* Version: 7.1
|
* Version: 7.3
|
||||||
*
|
*
|
||||||
* Copyright (C) 2004-2008 Brian Paul All Rights Reserved.
|
* Copyright (C) 2004-2008 Brian Paul All Rights Reserved.
|
||||||
*
|
*
|
||||||
|
@ -235,30 +235,21 @@ _mesa_GetObjectParameterivARB(GLhandleARB object, GLenum pname, GLint *params)
|
||||||
if (ctx->Driver.IsProgram(ctx, object)) {
|
if (ctx->Driver.IsProgram(ctx, object)) {
|
||||||
if (pname == GL_OBJECT_TYPE_ARB) {
|
if (pname == GL_OBJECT_TYPE_ARB) {
|
||||||
*params = GL_PROGRAM_OBJECT_ARB;
|
*params = GL_PROGRAM_OBJECT_ARB;
|
||||||
} else {
|
}
|
||||||
|
else {
|
||||||
ctx->Driver.GetProgramiv(ctx, object, pname, params);
|
ctx->Driver.GetProgramiv(ctx, object, pname, params);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (ctx->Driver.IsShader(ctx, object)) {
|
else if (ctx->Driver.IsShader(ctx, object)) {
|
||||||
if (pname == GL_OBJECT_TYPE_ARB) {
|
if (pname == GL_OBJECT_TYPE_ARB) {
|
||||||
*params = GL_SHADER_OBJECT_ARB;
|
*params = GL_SHADER_OBJECT_ARB;
|
||||||
} else {
|
}
|
||||||
|
else {
|
||||||
ctx->Driver.GetShaderiv(ctx, object, pname, params);
|
ctx->Driver.GetShaderiv(ctx, object, pname, params);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
/* error code depends on pname */
|
_mesa_error(ctx, GL_INVALID_VALUE, "glGetObjectParameterivARB");
|
||||||
GLenum err;
|
|
||||||
switch (pname) {
|
|
||||||
case GL_OBJECT_TYPE_ARB:
|
|
||||||
case GL_OBJECT_DELETE_STATUS_ARB:
|
|
||||||
case GL_OBJECT_INFO_LOG_LENGTH_ARB:
|
|
||||||
err = GL_INVALID_OPERATION;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
err = GL_INVALID_VALUE;
|
|
||||||
}
|
|
||||||
_mesa_error(ctx, err, "glGetObjectParameterivARB");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -388,9 +388,10 @@ _mesa_base_tex_format( GLcontext *ctx, GLint internalFormat )
|
||||||
* index, depth, stencil, etc).
|
* index, depth, stencil, etc).
|
||||||
* \param format the image format value (may by an internal texture format)
|
* \param format the image format value (may by an internal texture format)
|
||||||
* \return GL_TRUE if its a color/RGBA format, GL_FALSE otherwise.
|
* \return GL_TRUE if its a color/RGBA format, GL_FALSE otherwise.
|
||||||
|
* XXX maybe move this func to image.c
|
||||||
*/
|
*/
|
||||||
static GLboolean
|
GLboolean
|
||||||
is_color_format(GLenum format)
|
_mesa_is_color_format(GLenum format)
|
||||||
{
|
{
|
||||||
switch (format) {
|
switch (format) {
|
||||||
case GL_RED:
|
case GL_RED:
|
||||||
|
@ -491,6 +492,7 @@ is_color_format(GLenum format)
|
||||||
#endif /* FEATURE_EXT_texture_sRGB */
|
#endif /* FEATURE_EXT_texture_sRGB */
|
||||||
return GL_TRUE;
|
return GL_TRUE;
|
||||||
case GL_YCBCR_MESA: /* not considered to be RGB */
|
case GL_YCBCR_MESA: /* not considered to be RGB */
|
||||||
|
/* fall-through */
|
||||||
default:
|
default:
|
||||||
return GL_FALSE;
|
return GL_FALSE;
|
||||||
}
|
}
|
||||||
|
@ -1587,9 +1589,9 @@ texture_error_check( GLcontext *ctx, GLenum target,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* make sure internal format and format basically agree */
|
/* make sure internal format and format basically agree */
|
||||||
colorFormat = is_color_format(format);
|
colorFormat = _mesa_is_color_format(format);
|
||||||
indexFormat = is_index_format(format);
|
indexFormat = is_index_format(format);
|
||||||
if ((is_color_format(internalFormat) && !colorFormat && !indexFormat) ||
|
if ((_mesa_is_color_format(internalFormat) && !colorFormat && !indexFormat) ||
|
||||||
(is_index_format(internalFormat) && !indexFormat) ||
|
(is_index_format(internalFormat) && !indexFormat) ||
|
||||||
(is_depth_format(internalFormat) != is_depth_format(format)) ||
|
(is_depth_format(internalFormat) != is_depth_format(format)) ||
|
||||||
(is_ycbcr_format(internalFormat) != is_ycbcr_format(format)) ||
|
(is_ycbcr_format(internalFormat) != is_ycbcr_format(format)) ||
|
||||||
|
@ -2051,30 +2053,20 @@ copytexture_error_check( GLcontext *ctx, GLuint dimensions,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Test glCopyTexSubImage[12]D() parameters for errors.
|
* Test glCopyTexSubImage[12]D() parameters for errors.
|
||||||
|
* Note that this is the first part of error checking.
|
||||||
|
* See also copytexsubimage_error_check2() below for the second part.
|
||||||
*
|
*
|
||||||
* \param ctx GL context.
|
* \param ctx GL context.
|
||||||
* \param dimensions texture image dimensions (must be 1, 2 or 3).
|
* \param dimensions texture image dimensions (must be 1, 2 or 3).
|
||||||
* \param target texture target given by the user.
|
* \param target texture target given by the user.
|
||||||
* \param level image level given by the user.
|
* \param level image level given by the user.
|
||||||
* \param xoffset sub-image x offset given by the user.
|
|
||||||
* \param yoffset sub-image y offset given by the user.
|
|
||||||
* \param zoffset sub-image z offset given by the user.
|
|
||||||
* \param width image width given by the user.
|
|
||||||
* \param height image height given by the user.
|
|
||||||
*
|
*
|
||||||
* \return GL_TRUE if an error was detected, or GL_FALSE if no errors.
|
* \return GL_TRUE if an error was detected, or GL_FALSE if no errors.
|
||||||
*
|
|
||||||
* Verifies each of the parameters against the constants specified in
|
|
||||||
* __GLcontextRec::Const and the supported extensions, and according to the
|
|
||||||
* OpenGL specification.
|
|
||||||
*/
|
*/
|
||||||
static GLboolean
|
static GLboolean
|
||||||
copytexsubimage_error_check( GLcontext *ctx, GLuint dimensions,
|
copytexsubimage_error_check1( GLcontext *ctx, GLuint dimensions,
|
||||||
GLenum target, GLint level,
|
GLenum target, GLint level)
|
||||||
GLint xoffset, GLint yoffset, GLint zoffset,
|
|
||||||
GLsizei width, GLsizei height)
|
|
||||||
{
|
{
|
||||||
/* Check target */
|
|
||||||
/* Check that the source buffer is complete */
|
/* Check that the source buffer is complete */
|
||||||
if (ctx->ReadBuffer->Name) {
|
if (ctx->ReadBuffer->Name) {
|
||||||
_mesa_test_framebuffer_completeness(ctx, ctx->ReadBuffer);
|
_mesa_test_framebuffer_completeness(ctx, ctx->ReadBuffer);
|
||||||
|
@ -2085,6 +2077,7 @@ copytexsubimage_error_check( GLcontext *ctx, GLuint dimensions,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Check target */
|
||||||
if (dimensions == 1) {
|
if (dimensions == 1) {
|
||||||
if (target != GL_TEXTURE_1D) {
|
if (target != GL_TEXTURE_1D) {
|
||||||
_mesa_error( ctx, GL_INVALID_ENUM, "glCopyTexSubImage1D(target)" );
|
_mesa_error( ctx, GL_INVALID_ENUM, "glCopyTexSubImage1D(target)" );
|
||||||
|
@ -2132,6 +2125,33 @@ copytexsubimage_error_check( GLcontext *ctx, GLuint dimensions,
|
||||||
return GL_TRUE;
|
return GL_TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return GL_FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Second part of error checking for glCopyTexSubImage[12]D().
|
||||||
|
* \param xoffset sub-image x offset given by the user.
|
||||||
|
* \param yoffset sub-image y offset given by the user.
|
||||||
|
* \param zoffset sub-image z offset given by the user.
|
||||||
|
* \param width image width given by the user.
|
||||||
|
* \param height image height given by the user.
|
||||||
|
*/
|
||||||
|
static GLboolean
|
||||||
|
copytexsubimage_error_check2( GLcontext *ctx, GLuint dimensions,
|
||||||
|
GLenum target, GLint level,
|
||||||
|
GLint xoffset, GLint yoffset, GLint zoffset,
|
||||||
|
GLsizei width, GLsizei height,
|
||||||
|
const struct gl_texture_image *teximage )
|
||||||
|
{
|
||||||
|
/* check that dest tex image exists */
|
||||||
|
if (!teximage) {
|
||||||
|
_mesa_error(ctx, GL_INVALID_OPERATION,
|
||||||
|
"glCopyTexSubImage%dD(undefined texture level: %d)",
|
||||||
|
dimensions, level);
|
||||||
|
return GL_TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
/* Check size */
|
/* Check size */
|
||||||
if (width < 0) {
|
if (width < 0) {
|
||||||
_mesa_error(ctx, GL_INVALID_VALUE,
|
_mesa_error(ctx, GL_INVALID_VALUE,
|
||||||
|
@ -2144,23 +2164,7 @@ copytexsubimage_error_check( GLcontext *ctx, GLuint dimensions,
|
||||||
return GL_TRUE;
|
return GL_TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
return GL_FALSE;
|
/* check x/y offsets */
|
||||||
}
|
|
||||||
|
|
||||||
static GLboolean
|
|
||||||
copytexsubimage_error_check2( GLcontext *ctx, GLuint dimensions,
|
|
||||||
GLenum target, GLint level,
|
|
||||||
GLint xoffset, GLint yoffset, GLint zoffset,
|
|
||||||
GLsizei width, GLsizei height,
|
|
||||||
const struct gl_texture_image *teximage )
|
|
||||||
{
|
|
||||||
if (!teximage) {
|
|
||||||
_mesa_error(ctx, GL_INVALID_OPERATION,
|
|
||||||
"glCopyTexSubImage%dD(undefined texture level: %d)",
|
|
||||||
dimensions, level);
|
|
||||||
return GL_TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (xoffset < -((GLint)teximage->Border)) {
|
if (xoffset < -((GLint)teximage->Border)) {
|
||||||
_mesa_error(ctx, GL_INVALID_VALUE,
|
_mesa_error(ctx, GL_INVALID_VALUE,
|
||||||
"glCopyTexSubImage%dD(xoffset=%d)", dimensions, xoffset);
|
"glCopyTexSubImage%dD(xoffset=%d)", dimensions, xoffset);
|
||||||
|
@ -2185,6 +2189,7 @@ copytexsubimage_error_check2( GLcontext *ctx, GLuint dimensions,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* check z offset */
|
||||||
if (dimensions > 2) {
|
if (dimensions > 2) {
|
||||||
if (zoffset < -((GLint)teximage->Border)) {
|
if (zoffset < -((GLint)teximage->Border)) {
|
||||||
_mesa_error(ctx, GL_INVALID_VALUE,
|
_mesa_error(ctx, GL_INVALID_VALUE,
|
||||||
|
@ -2336,8 +2341,8 @@ _mesa_GetTexImage( GLenum target, GLint level, GLenum format,
|
||||||
* texture's format. Note that a color index texture can be converted
|
* texture's format. Note that a color index texture can be converted
|
||||||
* to RGBA so that combo is allowed.
|
* to RGBA so that combo is allowed.
|
||||||
*/
|
*/
|
||||||
if (is_color_format(format)
|
if (_mesa_is_color_format(format)
|
||||||
&& !is_color_format(texImage->TexFormat->BaseFormat)
|
&& !_mesa_is_color_format(texImage->TexFormat->BaseFormat)
|
||||||
&& !is_index_format(texImage->TexFormat->BaseFormat)) {
|
&& !is_index_format(texImage->TexFormat->BaseFormat)) {
|
||||||
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)");
|
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)");
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -2430,7 +2435,7 @@ _mesa_TexImage1D( GLenum target, GLint level, GLint internalFormat,
|
||||||
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
|
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
|
||||||
|
|
||||||
#if FEATURE_convolve
|
#if FEATURE_convolve
|
||||||
if (is_color_format(internalFormat)) {
|
if (_mesa_is_color_format(internalFormat)) {
|
||||||
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -2527,7 +2532,7 @@ _mesa_TexImage2D( GLenum target, GLint level, GLint internalFormat,
|
||||||
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
|
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
|
||||||
|
|
||||||
#if FEATURE_convolve
|
#if FEATURE_convolve
|
||||||
if (is_color_format(internalFormat)) {
|
if (_mesa_is_color_format(internalFormat)) {
|
||||||
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
|
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
|
||||||
&postConvHeight);
|
&postConvHeight);
|
||||||
}
|
}
|
||||||
|
@ -2752,7 +2757,7 @@ _mesa_TexSubImage1D( GLenum target, GLint level,
|
||||||
|
|
||||||
#if FEATURE_convolve
|
#if FEATURE_convolve
|
||||||
/* XXX should test internal format */
|
/* XXX should test internal format */
|
||||||
if (is_color_format(format)) {
|
if (_mesa_is_color_format(format)) {
|
||||||
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -2812,7 +2817,7 @@ _mesa_TexSubImage2D( GLenum target, GLint level,
|
||||||
|
|
||||||
#if FEATURE_convolve
|
#if FEATURE_convolve
|
||||||
/* XXX should test internal format */
|
/* XXX should test internal format */
|
||||||
if (is_color_format(format)) {
|
if (_mesa_is_color_format(format)) {
|
||||||
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
|
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
|
||||||
&postConvHeight);
|
&postConvHeight);
|
||||||
}
|
}
|
||||||
|
@ -2927,7 +2932,7 @@ _mesa_CopyTexImage1D( GLenum target, GLint level,
|
||||||
_mesa_update_state(ctx);
|
_mesa_update_state(ctx);
|
||||||
|
|
||||||
#if FEATURE_convolve
|
#if FEATURE_convolve
|
||||||
if (is_color_format(internalFormat)) {
|
if (_mesa_is_color_format(internalFormat)) {
|
||||||
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -2992,11 +2997,12 @@ _mesa_CopyTexImage2D( GLenum target, GLint level, GLenum internalFormat,
|
||||||
_mesa_update_state(ctx);
|
_mesa_update_state(ctx);
|
||||||
|
|
||||||
#if FEATURE_convolve
|
#if FEATURE_convolve
|
||||||
if (is_color_format(internalFormat)) {
|
if (_mesa_is_color_format(internalFormat)) {
|
||||||
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
|
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
|
||||||
&postConvHeight);
|
&postConvHeight);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (copytexture_error_check(ctx, 2, target, level, internalFormat,
|
if (copytexture_error_check(ctx, 2, target, level, internalFormat,
|
||||||
postConvWidth, postConvHeight, border))
|
postConvWidth, postConvHeight, border))
|
||||||
return;
|
return;
|
||||||
|
@ -3058,13 +3064,7 @@ _mesa_CopyTexSubImage1D( GLenum target, GLint level,
|
||||||
if (ctx->NewState & _IMAGE_NEW_TRANSFER_STATE)
|
if (ctx->NewState & _IMAGE_NEW_TRANSFER_STATE)
|
||||||
_mesa_update_state(ctx);
|
_mesa_update_state(ctx);
|
||||||
|
|
||||||
#if FEATURE_convolve
|
if (copytexsubimage_error_check1(ctx, 1, target, level))
|
||||||
/* XXX should test internal format */
|
|
||||||
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (copytexsubimage_error_check(ctx, 1, target, level,
|
|
||||||
xoffset, 0, 0, postConvWidth, 1))
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
|
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
|
||||||
|
@ -3074,6 +3074,12 @@ _mesa_CopyTexSubImage1D( GLenum target, GLint level,
|
||||||
{
|
{
|
||||||
texImage = _mesa_select_tex_image(ctx, texObj, target, level);
|
texImage = _mesa_select_tex_image(ctx, texObj, target, level);
|
||||||
|
|
||||||
|
#if FEATURE_convolve
|
||||||
|
if (texImage && _mesa_is_color_format(texImage->InternalFormat)) {
|
||||||
|
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (copytexsubimage_error_check2(ctx, 1, target, level,
|
if (copytexsubimage_error_check2(ctx, 1, target, level,
|
||||||
xoffset, 0, 0, postConvWidth, 1,
|
xoffset, 0, 0, postConvWidth, 1,
|
||||||
texImage))
|
texImage))
|
||||||
|
@ -3113,13 +3119,7 @@ _mesa_CopyTexSubImage2D( GLenum target, GLint level,
|
||||||
if (ctx->NewState & _IMAGE_NEW_TRANSFER_STATE)
|
if (ctx->NewState & _IMAGE_NEW_TRANSFER_STATE)
|
||||||
_mesa_update_state(ctx);
|
_mesa_update_state(ctx);
|
||||||
|
|
||||||
#if FEATURE_convolve
|
if (copytexsubimage_error_check1(ctx, 2, target, level))
|
||||||
/* XXX should test internal format */
|
|
||||||
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth, &postConvHeight);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (copytexsubimage_error_check(ctx, 2, target, level, xoffset, yoffset, 0,
|
|
||||||
postConvWidth, postConvHeight))
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
|
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
|
||||||
|
@ -3129,6 +3129,13 @@ _mesa_CopyTexSubImage2D( GLenum target, GLint level,
|
||||||
{
|
{
|
||||||
texImage = _mesa_select_tex_image(ctx, texObj, target, level);
|
texImage = _mesa_select_tex_image(ctx, texObj, target, level);
|
||||||
|
|
||||||
|
#if FEATURE_convolve
|
||||||
|
if (texImage && _mesa_is_color_format(texImage->InternalFormat)) {
|
||||||
|
_mesa_adjust_image_for_convolution(ctx, 2,
|
||||||
|
&postConvWidth, &postConvHeight);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (copytexsubimage_error_check2(ctx, 2, target, level, xoffset, yoffset, 0,
|
if (copytexsubimage_error_check2(ctx, 2, target, level, xoffset, yoffset, 0,
|
||||||
postConvWidth, postConvHeight, texImage))
|
postConvWidth, postConvHeight, texImage))
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -3167,13 +3174,7 @@ _mesa_CopyTexSubImage3D( GLenum target, GLint level,
|
||||||
if (ctx->NewState & _IMAGE_NEW_TRANSFER_STATE)
|
if (ctx->NewState & _IMAGE_NEW_TRANSFER_STATE)
|
||||||
_mesa_update_state(ctx);
|
_mesa_update_state(ctx);
|
||||||
|
|
||||||
#if FEATURE_convolve
|
if (copytexsubimage_error_check1(ctx, 3, target, level))
|
||||||
/* XXX should test internal format */
|
|
||||||
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth, &postConvHeight);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (copytexsubimage_error_check(ctx, 3, target, level, xoffset, yoffset,
|
|
||||||
zoffset, postConvWidth, postConvHeight))
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
|
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
|
||||||
|
@ -3183,6 +3184,13 @@ _mesa_CopyTexSubImage3D( GLenum target, GLint level,
|
||||||
{
|
{
|
||||||
texImage = _mesa_select_tex_image(ctx, texObj, target, level);
|
texImage = _mesa_select_tex_image(ctx, texObj, target, level);
|
||||||
|
|
||||||
|
#if FEATURE_convolve
|
||||||
|
if (texImage && _mesa_is_color_format(texImage->InternalFormat)) {
|
||||||
|
_mesa_adjust_image_for_convolution(ctx, 2,
|
||||||
|
&postConvWidth, &postConvHeight);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (copytexsubimage_error_check2(ctx, 3, target, level, xoffset, yoffset,
|
if (copytexsubimage_error_check2(ctx, 3, target, level, xoffset, yoffset,
|
||||||
zoffset, postConvWidth, postConvHeight,
|
zoffset, postConvWidth, postConvHeight,
|
||||||
texImage))
|
texImage))
|
||||||
|
|
|
@ -111,6 +111,9 @@ extern GLuint
|
||||||
_mesa_tex_target_to_face(GLenum target);
|
_mesa_tex_target_to_face(GLenum target);
|
||||||
|
|
||||||
|
|
||||||
|
extern GLboolean
|
||||||
|
_mesa_is_color_format(GLenum format);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Lock a texture for updating. See also _mesa_lock_context_textures().
|
* Lock a texture for updating. See also _mesa_lock_context_textures().
|
||||||
|
|
|
@ -2988,10 +2988,13 @@ choose_texture_format(GLcontext *ctx, struct gl_texture_image *texImage,
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* This is the software fallback for Driver.TexImage1D()
|
* This is the software fallback for Driver.TexImage1D()
|
||||||
* and Driver.CopyTexImage1D().
|
* and Driver.CopyTexImage1D().
|
||||||
* \sa _mesa_store_teximage2d()
|
* \sa _mesa_store_teximage2d()
|
||||||
|
* Note that the width may not be the actual texture width since it may
|
||||||
|
* be changed by convolution w/ GL_REDUCE. The texImage->Width field will
|
||||||
|
* have the actual texture size.
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
_mesa_store_teximage1d(GLcontext *ctx, GLenum target, GLint level,
|
_mesa_store_teximage1d(GLcontext *ctx, GLenum target, GLint level,
|
||||||
|
@ -3002,21 +3005,16 @@ _mesa_store_teximage1d(GLcontext *ctx, GLenum target, GLint level,
|
||||||
struct gl_texture_object *texObj,
|
struct gl_texture_object *texObj,
|
||||||
struct gl_texture_image *texImage)
|
struct gl_texture_image *texImage)
|
||||||
{
|
{
|
||||||
GLint postConvWidth = width;
|
|
||||||
GLint sizeInBytes;
|
GLint sizeInBytes;
|
||||||
(void) border;
|
(void) border;
|
||||||
|
|
||||||
if (ctx->_ImageTransferState & IMAGE_CONVOLUTION_BIT) {
|
|
||||||
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
choose_texture_format(ctx, texImage, 1, format, type, internalFormat);
|
choose_texture_format(ctx, texImage, 1, format, type, internalFormat);
|
||||||
|
|
||||||
/* allocate memory */
|
/* allocate memory */
|
||||||
if (texImage->IsCompressed)
|
if (texImage->IsCompressed)
|
||||||
sizeInBytes = texImage->CompressedSize;
|
sizeInBytes = texImage->CompressedSize;
|
||||||
else
|
else
|
||||||
sizeInBytes = postConvWidth * texImage->TexFormat->TexelBytes;
|
sizeInBytes = texImage->Width * texImage->TexFormat->TexelBytes;
|
||||||
texImage->Data = _mesa_alloc_texmemory(sizeInBytes);
|
texImage->Data = _mesa_alloc_texmemory(sizeInBytes);
|
||||||
if (!texImage->Data) {
|
if (!texImage->Data) {
|
||||||
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage1D");
|
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage1D");
|
||||||
|
@ -3076,15 +3074,9 @@ _mesa_store_teximage2d(GLcontext *ctx, GLenum target, GLint level,
|
||||||
struct gl_texture_object *texObj,
|
struct gl_texture_object *texObj,
|
||||||
struct gl_texture_image *texImage)
|
struct gl_texture_image *texImage)
|
||||||
{
|
{
|
||||||
GLint postConvWidth = width, postConvHeight = height;
|
|
||||||
GLint texelBytes, sizeInBytes;
|
GLint texelBytes, sizeInBytes;
|
||||||
(void) border;
|
(void) border;
|
||||||
|
|
||||||
if (ctx->_ImageTransferState & IMAGE_CONVOLUTION_BIT) {
|
|
||||||
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
|
|
||||||
&postConvHeight);
|
|
||||||
}
|
|
||||||
|
|
||||||
choose_texture_format(ctx, texImage, 2, format, type, internalFormat);
|
choose_texture_format(ctx, texImage, 2, format, type, internalFormat);
|
||||||
|
|
||||||
texelBytes = texImage->TexFormat->TexelBytes;
|
texelBytes = texImage->TexFormat->TexelBytes;
|
||||||
|
@ -3093,7 +3085,7 @@ _mesa_store_teximage2d(GLcontext *ctx, GLenum target, GLint level,
|
||||||
if (texImage->IsCompressed)
|
if (texImage->IsCompressed)
|
||||||
sizeInBytes = texImage->CompressedSize;
|
sizeInBytes = texImage->CompressedSize;
|
||||||
else
|
else
|
||||||
sizeInBytes = postConvWidth * postConvHeight * texelBytes;
|
sizeInBytes = texImage->Width * texImage->Height * texelBytes;
|
||||||
texImage->Data = _mesa_alloc_texmemory(sizeInBytes);
|
texImage->Data = _mesa_alloc_texmemory(sizeInBytes);
|
||||||
if (!texImage->Data) {
|
if (!texImage->Data) {
|
||||||
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage2D");
|
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage2D");
|
||||||
|
|
Loading…
Reference in New Issue