From 41caebcdca2ce4e86c472e9c7c9c3b925aac481b Mon Sep 17 00:00:00 2001 From: baldurk Date: Tue, 4 Nov 2014 21:54:33 +0000 Subject: [PATCH] Implement a whole bunch of glGet* glIs* API functions as pass-through --- renderdoc/driver/gl/gl_driver.h | 175 +++++-- renderdoc/driver/gl/gl_hookset.h | 146 ++++-- renderdoc/driver/gl/gl_hookset_defs.h | 304 +++++++++--- .../driver/gl/wrappers/gl_debug_funcs.cpp | 5 - renderdoc/driver/gl/wrappers/gl_get_funcs.cpp | 455 +++++++++++++++++- 5 files changed, 927 insertions(+), 158 deletions(-) diff --git a/renderdoc/driver/gl/gl_driver.h b/renderdoc/driver/gl/gl_driver.h index 62c833dd6..a3197b82a 100644 --- a/renderdoc/driver/gl/gl_driver.h +++ b/renderdoc/driver/gl/gl_driver.h @@ -354,25 +354,11 @@ class WrappedOpenGL IMPLEMENT_FUNCTION_SERIALISED(void, glDepthBoundsEXT(GLclampd nearVal, GLclampd farVal)); IMPLEMENT_FUNCTION_SERIALISED(void, glDisable(GLenum cap)); IMPLEMENT_FUNCTION_SERIALISED(void, glEnable(GLenum cap)); - IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsEnabled(GLenum cap)); IMPLEMENT_FUNCTION_SERIALISED(void, glDisablei(GLenum cap, GLuint index)); IMPLEMENT_FUNCTION_SERIALISED(void, glEnablei(GLenum cap, GLuint index)); - IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsEnabledi(GLenum cap, GLuint index)); IMPLEMENT_FUNCTION_SERIALISED(void, glFrontFace(GLenum cap)); - IMPLEMENT_FUNCTION_SERIALISED(GLenum, glGetError()); IMPLEMENT_FUNCTION_SERIALISED(void, glFinish()); IMPLEMENT_FUNCTION_SERIALISED(void, glFlush()); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetFloatv(GLenum pname, GLfloat *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetDoublev(GLenum pname, GLdouble *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetIntegerv(GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetBooleanv(GLenum pname, GLboolean *data)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetIntegeri_v(GLenum pname, GLuint index, GLint *data)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetFloati_v(GLenum pname, GLuint index, GLfloat *data)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetDoublei_v(GLenum pname, GLuint index, GLdouble *data)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetBooleani_v(GLenum pname, GLuint index, GLboolean *data)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)); - IMPLEMENT_FUNCTION_SERIALISED(const GLubyte *, glGetStringi(GLenum name, GLuint i)); - IMPLEMENT_FUNCTION_SERIALISED(const GLubyte *, glGetString(GLenum name)); IMPLEMENT_FUNCTION_SERIALISED(void, glGenTextures(GLsizei n, GLuint* textures)); IMPLEMENT_FUNCTION_SERIALISED(void, glDeleteTextures(GLsizei n, const GLuint *textures)); IMPLEMENT_FUNCTION_SERIALISED(void, glHint(GLenum target, GLenum mode)); @@ -420,11 +406,9 @@ class WrappedOpenGL IMPLEMENT_FUNCTION_SERIALISED(void, glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)); IMPLEMENT_FUNCTION_SERIALISED(void, glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)); IMPLEMENT_FUNCTION_SERIALISED(void, glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)); GLenum glCheckFramebufferStatus(GLenum target); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label)); IMPLEMENT_FUNCTION_SERIALISED(void, glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label)); IMPLEMENT_FUNCTION_SERIALISED(void, glDebugMessageCallback(GLDEBUGPROC callback, const void *userParam)); @@ -442,8 +426,6 @@ class WrappedOpenGL IMPLEMENT_FUNCTION_SERIALISED(void, glGenQueries(GLsizei n, GLuint *ids)); IMPLEMENT_FUNCTION_SERIALISED(void, glBeginQuery(GLenum target, GLuint id)); IMPLEMENT_FUNCTION_SERIALISED(void, glEndQuery(GLenum target)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)); IMPLEMENT_FUNCTION_SERIALISED(void, glDeleteQueries(GLsizei n, const GLuint *ids)); IMPLEMENT_FUNCTION_SERIALISED(void, glActiveTexture(GLenum texture)); @@ -462,16 +444,6 @@ class WrappedOpenGL IMPLEMENT_FUNCTION_SERIALISED(void, glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetCompressedTexImage(GLenum target, GLint level, void *img)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)); - bool Serialise_glCreateShader(GLuint real, GLenum type); GLuint glCreateShader(GLenum type); @@ -484,8 +456,6 @@ class WrappedOpenGL IMPLEMENT_FUNCTION_SERIALISED(void, glDeleteShader(GLuint shader)); IMPLEMENT_FUNCTION_SERIALISED(void, glShaderSource(GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length)); IMPLEMENT_FUNCTION_SERIALISED(void, glCompileShader(GLuint shader)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetShaderiv(GLuint shader, GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)); IMPLEMENT_FUNCTION_SERIALISED(void, glAttachShader(GLuint program, GLuint shader)); IMPLEMENT_FUNCTION_SERIALISED(void, glDetachShader(GLuint program, GLuint shader)); IMPLEMENT_FUNCTION_SERIALISED(void, glReleaseShaderCompiler()); @@ -497,17 +467,9 @@ class WrappedOpenGL IMPLEMENT_FUNCTION_SERIALISED(void, glUseProgram(GLuint program)); IMPLEMENT_FUNCTION_SERIALISED(void, glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)); IMPLEMENT_FUNCTION_SERIALISED(void, glValidateProgram(GLuint program)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramiv(GLuint program, GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(GLuint, glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)); IMPLEMENT_FUNCTION_SERIALISED(void, glGenProgramPipelines(GLsizei n, GLuint *pipelines)); IMPLEMENT_FUNCTION_SERIALISED(void, glBindProgramPipeline(GLuint pipeline)); IMPLEMENT_FUNCTION_SERIALISED(void, glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)); IMPLEMENT_FUNCTION_SERIALISED(void, glValidateProgramPipeline(GLuint pipeline)); IMPLEMENT_FUNCTION_SERIALISED(void, glGenBuffers(GLsizei n, GLuint *buffers)); IMPLEMENT_FUNCTION_SERIALISED(void, glBindBuffer(GLenum target, GLuint buffer)); @@ -535,24 +497,148 @@ class WrappedOpenGL IMPLEMENT_FUNCTION_SERIALISED(void, glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)); IMPLEMENT_FUNCTION_SERIALISED(void, glEnableVertexAttribArray(GLuint index)); IMPLEMENT_FUNCTION_SERIALISED(void, glDisableVertexAttribArray(GLuint index)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexAttribPointerv(GLuint index, GLenum pname, void **pointer)); IMPLEMENT_FUNCTION_SERIALISED(void, glGenVertexArrays(GLsizei n, GLuint *arrays)); IMPLEMENT_FUNCTION_SERIALISED(void, glBindVertexArray(GLuint array)); IMPLEMENT_FUNCTION_SERIALISED(void, glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)); IMPLEMENT_FUNCTION_SERIALISED(void, glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)); + + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsEnabled(GLenum cap)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsTexture(GLuint texture)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsEnabledi(GLenum target, GLuint index)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsBuffer(GLuint buffer)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsFramebuffer(GLuint framebuffer)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsProgram(GLuint program)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsProgramPipeline(GLuint pipeline)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsQuery(GLuint id)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsRenderbuffer(GLuint renderbuffer)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsSampler(GLuint sampler)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsShader(GLuint shader)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsSync(GLsync sync)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsTransformFeedback(GLuint id)); + IMPLEMENT_FUNCTION_SERIALISED(GLboolean, glIsVertexArray(GLuint array)); + + IMPLEMENT_FUNCTION_SERIALISED(GLenum, glGetError()); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetBooleanv(GLenum pname, GLboolean *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetFloatv(GLenum pname, GLfloat *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetDoublev(GLenum pname, GLdouble *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetIntegerv(GLenum pname, GLint *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetPointerv(GLenum pname, void **params)); + IMPLEMENT_FUNCTION_SERIALISED(const GLubyte *, glGetString(GLenum name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetBufferPointerv(GLenum target, GLenum pname, void **params)); + IMPLEMENT_FUNCTION_SERIALISED(GLint, glGetFragDataIndex(GLuint program, const GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(GLint, glGetFragDataLocation(GLuint program, const GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(const GLubyte *, glGetStringi(GLenum name, GLuint index)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetIntegeri_v(GLenum target, GLuint index, GLint *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetFloati_v(GLenum target, GLuint index, GLfloat *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetInteger64v(GLenum pname, GLint64 *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetShaderiv(GLuint shader, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramiv(GLuint program, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(GLuint, glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary)); + IMPLEMENT_FUNCTION_SERIALISED(GLint, glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(GLint, glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)); + IMPLEMENT_FUNCTION_SERIALISED(GLenum, glGetGraphicsResetStatus()); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label)); + IMPLEMENT_FUNCTION_SERIALISED(GLuint, glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetQueryiv(GLenum target, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexAttribPointerv(GLuint index, GLenum pname, void **pointer)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetCompressedTexImage(GLenum target, GLint level, void *img)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize, void *pixels)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize, void *pixels)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTextureParameteriv(GLuint texture, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 *param)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint *param)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param)); + IMPLEMENT_FUNCTION_SERIALISED(GLuint, glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(GLint, glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)); IMPLEMENT_FUNCTION_SERIALISED(GLint, glGetUniformLocation(GLuint program, const GLchar *name)); IMPLEMENT_FUNCTION_SERIALISED(void, glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)); IMPLEMENT_FUNCTION_SERIALISED(GLuint, glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)); IMPLEMENT_FUNCTION_SERIALISED(GLint, glGetAttribLocation(GLuint program, const GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)); IMPLEMENT_FUNCTION_SERIALISED(void, glGetUniformfv(GLuint program, GLint location, GLfloat *params)); IMPLEMENT_FUNCTION_SERIALISED(void, glGetUniformiv(GLuint program, GLint location, GLint *params)); IMPLEMENT_FUNCTION_SERIALISED(void, glGetUniformuiv(GLuint program, GLint location, GLuint *params)); IMPLEMENT_FUNCTION_SERIALISED(void, glGetUniformdv(GLuint program, GLint location, GLdouble *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetnUniformdv(GLuint program, GLint location, GLsizei bufSize, GLdouble *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetnUniformuiv(GLuint program, GLint location, GLsizei bufSize, GLuint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 *param)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint *param)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetNamedBufferPointerv(GLuint buffer, GLenum pname, void **params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, void *data)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint *param)); + IMPLEMENT_FUNCTION_SERIALISED(void, glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint *params)); enum UniformType { @@ -722,7 +808,6 @@ class WrappedOpenGL IMPLEMENT_FUNCTION_SERIALISED(void, glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLint basevertex)); IMPLEMENT_FUNCTION_SERIALISED(void, glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)); IMPLEMENT_FUNCTION_SERIALISED(void, glDeleteBuffers(GLsizei n, const GLuint *buffers)); - IMPLEMENT_FUNCTION_SERIALISED(void, glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)); IMPLEMENT_FUNCTION_SERIALISED(void, glDeleteVertexArrays(GLsizei n, const GLuint *arrays)); // EXT_direct_state_access diff --git a/renderdoc/driver/gl/gl_hookset.h b/renderdoc/driver/gl/gl_hookset.h index 50f56b00c..aa4eb2ca0 100644 --- a/renderdoc/driver/gl/gl_hookset.h +++ b/renderdoc/driver/gl/gl_hookset.h @@ -52,8 +52,9 @@ struct GLHookSet PFNGLFRONTFACEPROC glFrontFace; PFNGLGENTEXTURESPROC glGenTextures; PFNGLDELETETEXTURESPROC glDeleteTextures; - PFNGLGETERRORPROC glGetError; PFNGLISENABLEDPROC glIsEnabled; + PFNGLISTEXTUREPROC glIsTexture; + PFNGLGETERRORPROC glGetError; PFNGLGETTEXLEVELPARAMETERIVPROC glGetTexLevelParameteriv; PFNGLGETTEXLEVELPARAMETERFVPROC glGetTexLevelParameterfv; PFNGLGETTEXPARAMETERFVPROC glGetTexParameterfv; @@ -63,6 +64,7 @@ struct GLHookSet PFNGLGETFLOATVPROC glGetFloatv; PFNGLGETDOUBLEVPROC glGetDoublev; PFNGLGETINTEGERVPROC glGetIntegerv; + PFNGLGETPOINTERVPROC glGetPointerv; PFNGLGETSTRINGPROC glGetString; PFNGLHINTPROC glHint; PFNGLPIXELSTOREIPROC glPixelStorei; @@ -103,12 +105,113 @@ struct GLHookSet PFNGLGETINTERNALFORMATIVPROC glGetInternalformativ; PFNGLGETINTERNALFORMATI64VPROC glGetInternalformati64v; PFNGLGETBUFFERPARAMETERIVPROC glGetBufferParameteriv; + PFNGLGETBUFFERPARAMETERI64VPROC glGetBufferParameteri64v; + PFNGLGETBUFFERPOINTERVPROC glGetBufferPointerv; + PFNGLGETFRAGDATAINDEXPROC glGetFragDataIndex; + PFNGLGETFRAGDATALOCATIONPROC glGetFragDataLocation; PFNGLGETSTRINGIPROC glGetStringi; PFNGLGETBOOLEANI_VPROC glGetBooleani_v; PFNGLGETINTEGERI_VPROC glGetIntegeri_v; PFNGLGETFLOATI_VPROC glGetFloati_v; PFNGLGETDOUBLEI_VPROC glGetDoublei_v; PFNGLGETINTEGER64I_VPROC glGetInteger64i_v; + PFNGLGETINTEGER64VPROC glGetInteger64v; + PFNGLGETSHADERIVPROC glGetShaderiv; + PFNGLGETSHADERINFOLOGPROC glGetShaderInfoLog; + PFNGLGETSHADERPRECISIONFORMATPROC glGetShaderPrecisionFormat; + PFNGLGETSHADERSOURCEPROC glGetShaderSource; + PFNGLGETATTACHEDSHADERSPROC glGetAttachedShaders; + PFNGLGETPROGRAMIVPROC glGetProgramiv; + PFNGLGETPROGRAMINFOLOGPROC glGetProgramInfoLog; + PFNGLGETPROGRAMINTERFACEIVPROC glGetProgramInterfaceiv; + PFNGLGETPROGRAMRESOURCEINDEXPROC glGetProgramResourceIndex; + PFNGLGETPROGRAMRESOURCEIVPROC glGetProgramResourceiv; + PFNGLGETPROGRAMRESOURCENAMEPROC glGetProgramResourceName; + PFNGLGETPROGRAMPIPELINEIVPROC glGetProgramPipelineiv; + PFNGLGETPROGRAMPIPELINEINFOLOGPROC glGetProgramPipelineInfoLog; + PFNGLGETPROGRAMBINARYPROC glGetProgramBinary; + PFNGLGETPROGRAMRESOURCELOCATIONPROC glGetProgramResourceLocation; + PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC glGetProgramResourceLocationIndex; + PFNGLGETPROGRAMSTAGEIVPROC glGetProgramStageiv; + PFNGLGETGRAPHICSRESETSTATUSPROC glGetGraphicsResetStatus; // aliases glGetGraphicsResetStatusARB + PFNGLGETOBJECTLABELPROC glGetObjectLabel; + PFNGLGETOBJECTPTRLABELPROC glGetObjectPtrLabel; + PFNGLGETDEBUGMESSAGELOGPROC glGetDebugMessageLog; // aliases glGetDebugMessageLogARB + PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glGetFramebufferAttachmentParameteriv; + PFNGLGETFRAMEBUFFERPARAMETERIVPROC glGetFramebufferParameteriv; + PFNGLGETRENDERBUFFERPARAMETERIVPROC glGetRenderbufferParameteriv; + PFNGLGETMULTISAMPLEFVPROC glGetMultisamplefv; + PFNGLGETQUERYINDEXEDIVPROC glGetQueryIndexediv; + PFNGLGETQUERYOBJECTUI64VPROC glGetQueryObjectui64v; + PFNGLGETQUERYOBJECTUIVPROC glGetQueryObjectuiv; + PFNGLGETQUERYOBJECTI64VPROC glGetQueryObjecti64v; + PFNGLGETQUERYOBJECTIVPROC glGetQueryObjectiv; + PFNGLGETQUERYIVPROC glGetQueryiv; + PFNGLGETSYNCIVPROC glGetSynciv; + PFNGLGETBUFFERSUBDATAPROC glGetBufferSubData; + PFNGLGETVERTEXATTRIBIVPROC glGetVertexAttribiv; + PFNGLGETVERTEXATTRIBPOINTERVPROC glGetVertexAttribPointerv; + PFNGLGETCOMPRESSEDTEXIMAGEPROC glGetCompressedTexImage; + PFNGLGETNCOMPRESSEDTEXIMAGEPROC glGetnCompressedTexImage; // aliases glGetnCompressedTexImageARB + PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC glGetCompressedTextureImage; + PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC glGetCompressedTextureSubImage; + PFNGLGETNTEXIMAGEPROC glGetnTexImage; // aliases glGetnTexImageARB + PFNGLGETTEXTUREIMAGEPROC glGetTextureImage; + PFNGLGETTEXTURELEVELPARAMETERFVPROC glGetTextureLevelParameterfv; + PFNGLGETTEXTURELEVELPARAMETERIVPROC glGetTextureLevelParameteriv; + PFNGLGETTEXTUREPARAMETERIIVPROC glGetTextureParameterIiv; + PFNGLGETTEXTUREPARAMETERIUIVPROC glGetTextureParameterIuiv; + PFNGLGETTEXTUREPARAMETERFVPROC glGetTextureParameterfv; + PFNGLGETTEXTUREPARAMETERIVPROC glGetTextureParameteriv; + PFNGLGETTEXTURESUBIMAGEPROC glGetTextureSubImage; + PFNGLGETTEXPARAMETERIIVPROC glGetTexParameterIiv; + PFNGLGETTEXPARAMETERIUIVPROC glGetTexParameterIuiv; + PFNGLGETSAMPLERPARAMETERIIVPROC glGetSamplerParameterIiv; + PFNGLGETSAMPLERPARAMETERIUIVPROC glGetSamplerParameterIuiv; + PFNGLGETSAMPLERPARAMETERFVPROC glGetSamplerParameterfv; + PFNGLGETSAMPLERPARAMETERIVPROC glGetSamplerParameteriv; + PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glGetTransformFeedbackVarying; + PFNGLGETTRANSFORMFEEDBACKI64_VPROC glGetTransformFeedbacki64_v; + PFNGLGETTRANSFORMFEEDBACKI_VPROC glGetTransformFeedbacki_v; + PFNGLGETTRANSFORMFEEDBACKIVPROC glGetTransformFeedbackiv; + PFNGLGETSUBROUTINEINDEXPROC glGetSubroutineIndex; + PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC glGetSubroutineUniformLocation; + PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC glGetActiveAtomicCounterBufferiv; + PFNGLGETACTIVESUBROUTINENAMEPROC glGetActiveSubroutineName; + PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC glGetActiveSubroutineUniformName; + PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC glGetActiveSubroutineUniformiv; + PFNGLGETUNIFORMLOCATIONPROC glGetUniformLocation; + PFNGLGETUNIFORMINDICESPROC glGetUniformIndices; + PFNGLGETUNIFORMSUBROUTINEUIVPROC glGetUniformSubroutineuiv; + PFNGLGETUNIFORMBLOCKINDEXPROC glGetUniformBlockIndex; + PFNGLGETATTRIBLOCATIONPROC glGetAttribLocation; + PFNGLGETACTIVEUNIFORMPROC glGetActiveUniform; + PFNGLGETACTIVEUNIFORMBLOCKIVPROC glGetActiveUniformBlockiv; + PFNGLGETACTIVEUNIFORMSIVPROC glGetActiveUniformsiv; + PFNGLGETACTIVEATTRIBPROC glGetActiveAttrib; + PFNGLGETUNIFORMFVPROC glGetUniformfv; + PFNGLGETUNIFORMIVPROC glGetUniformiv; + PFNGLGETUNIFORMUIVPROC glGetUniformuiv; + PFNGLGETUNIFORMDVPROC glGetUniformdv; + PFNGLGETNUNIFORMDVPROC glGetnUniformdv; // aliases glGetnUniformdvARB + PFNGLGETNUNIFORMFVPROC glGetnUniformfv; // aliases glGetnUniformfvARB + PFNGLGETNUNIFORMIVPROC glGetnUniformiv; // aliases glGetnUniformivARB + PFNGLGETNUNIFORMUIVPROC glGetnUniformuiv; // aliases glGetnUniformuivARB + PFNGLGETVERTEXARRAYIVPROC glGetVertexArrayiv; + PFNGLGETVERTEXARRAYINDEXED64IVPROC glGetVertexArrayIndexed64iv; + PFNGLGETVERTEXARRAYINDEXEDIVPROC glGetVertexArrayIndexediv; + PFNGLGETVERTEXATTRIBIIVPROC glGetVertexAttribIiv; + PFNGLGETVERTEXATTRIBIUIVPROC glGetVertexAttribIuiv; + PFNGLGETVERTEXATTRIBLDVPROC glGetVertexAttribLdv; + PFNGLGETVERTEXATTRIBDVPROC glGetVertexAttribdv; + PFNGLGETVERTEXATTRIBFVPROC glGetVertexAttribfv; + PFNGLGETNAMEDBUFFERPARAMETERI64VPROC glGetNamedBufferParameteri64v; + PFNGLGETNAMEDBUFFERPARAMETERIVPROC glGetNamedBufferParameteriv; + PFNGLGETNAMEDBUFFERPOINTERVPROC glGetNamedBufferPointerv; + PFNGLGETNAMEDBUFFERSUBDATAPROC glGetNamedBufferSubData; + PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC glGetNamedFramebufferAttachmentParameteriv; + PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC glGetNamedFramebufferParameteriv; + PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC glGetNamedRenderbufferParameteriv; PFNGLCHECKFRAMEBUFFERSTATUSPROC glCheckFramebufferStatus; PFNGLBLENDCOLORPROC glBlendColor; PFNGLBLENDFUNCIPROC glBlendFunci; @@ -130,8 +233,6 @@ struct GLHookSet PFNGLSHADERSOURCEPROC glShaderSource; PFNGLCOMPILESHADERPROC glCompileShader; PFNGLCREATESHADERPROGRAMVPROC glCreateShaderProgramv; - PFNGLGETSHADERIVPROC glGetShaderiv; - PFNGLGETSHADERINFOLOGPROC glGetShaderInfoLog; PFNGLCREATEPROGRAMPROC glCreateProgram; PFNGLDELETEPROGRAMPROC glDeleteProgram; PFNGLATTACHSHADERPROC glAttachShader; @@ -142,28 +243,30 @@ struct GLHookSet PFNGLUSEPROGRAMPROC glUseProgram; PFNGLUSEPROGRAMSTAGESPROC glUseProgramStages; PFNGLVALIDATEPROGRAMPROC glValidateProgram; - PFNGLGETPROGRAMIVPROC glGetProgramiv; - PFNGLGETPROGRAMINFOLOGPROC glGetProgramInfoLog; - PFNGLGETPROGRAMINTERFACEIVPROC glGetProgramInterfaceiv; - PFNGLGETPROGRAMRESOURCEINDEXPROC glGetProgramResourceIndex; - PFNGLGETPROGRAMRESOURCEIVPROC glGetProgramResourceiv; - PFNGLGETPROGRAMRESOURCENAMEPROC glGetProgramResourceName; PFNGLGENPROGRAMPIPELINESPROC glGenProgramPipelines; PFNGLBINDPROGRAMPIPELINEPROC glBindProgramPipeline; PFNGLDELETEPROGRAMPIPELINESPROC glDeleteProgramPipelines; - PFNGLGETPROGRAMPIPELINEIVPROC glGetProgramPipelineiv; - PFNGLGETPROGRAMPIPELINEINFOLOGPROC glGetProgramPipelineInfoLog; PFNGLVALIDATEPROGRAMPIPELINEPROC glValidateProgramPipeline; PFNGLDEBUGMESSAGECALLBACKPROC glDebugMessageCallback; // aliases glDebugMessageCallbackARB PFNGLDEBUGMESSAGECONTROLPROC glDebugMessageControl; PFNGLDEBUGMESSAGEINSERTPROC glDebugMessageInsert; PFNGLPUSHDEBUGGROUPPROC glPushDebugGroup; PFNGLPOPDEBUGGROUPPROC glPopDebugGroup; - PFNGLGETOBJECTLABELPROC glGetObjectLabel; PFNGLOBJECTLABELPROC glObjectLabel; PFNGLENABLEIPROC glEnablei; PFNGLDISABLEIPROC glDisablei; PFNGLISENABLEDIPROC glIsEnabledi; + PFNGLISBUFFERPROC glIsBuffer; + PFNGLISFRAMEBUFFERPROC glIsFramebuffer; + PFNGLISPROGRAMPROC glIsProgram; + PFNGLISPROGRAMPIPELINEPROC glIsProgramPipeline; + PFNGLISQUERYPROC glIsQuery; + PFNGLISRENDERBUFFERPROC glIsRenderbuffer; + PFNGLISSAMPLERPROC glIsSampler; + PFNGLISSHADERPROC glIsShader; + PFNGLISSYNCPROC glIsSync; + PFNGLISTRANSFORMFEEDBACKPROC glIsTransformFeedback; + PFNGLISVERTEXARRAYPROC glIsVertexArray; PFNGLGENBUFFERSPROC glGenBuffers; PFNGLBINDBUFFERPROC glBindBuffer; PFNGLDRAWBUFFERSPROC glDrawBuffers; @@ -173,7 +276,6 @@ struct GLHookSet PFNGLFRAMEBUFFERTEXTURE2DPROC glFramebufferTexture2D; PFNGLFRAMEBUFFERTEXTURELAYERPROC glFramebufferTextureLayer; PFNGLDELETEFRAMEBUFFERSPROC glDeleteFramebuffers; - PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glGetFramebufferAttachmentParameteriv; PFNGLFENCESYNCPROC glFenceSync; PFNGLCLIENTWAITSYNCPROC glClientWaitSync; PFNGLWAITSYNCPROC glWaitSync; @@ -181,8 +283,6 @@ struct GLHookSet PFNGLGENQUERIESPROC glGenQueries; PFNGLBEGINQUERYPROC glBeginQuery; PFNGLENDQUERYPROC glEndQuery; - PFNGLGETQUERYOBJECTUI64VPROC glGetQueryObjectui64v; - PFNGLGETQUERYOBJECTUIVPROC glGetQueryObjectuiv; PFNGLDELETEQUERIESPROC glDeleteQueries; PFNGLBUFFERDATAPROC glBufferData; PFNGLBUFFERSTORAGEPROC glBufferStorage; @@ -194,7 +294,6 @@ struct GLHookSet PFNGLMAPBUFFERRANGEPROC glMapBufferRange; PFNGLUNMAPBUFFERPROC glUnmapBuffer; PFNGLDELETEBUFFERSPROC glDeleteBuffers; - PFNGLGETBUFFERSUBDATAPROC glGetBufferSubData; PFNGLGENVERTEXARRAYSPROC glGenVertexArrays; PFNGLBINDVERTEXARRAYPROC glBindVertexArray; PFNGLDELETEVERTEXARRAYSPROC glDeleteVertexArrays; @@ -206,11 +305,8 @@ struct GLHookSet PFNGLBINDATTRIBLOCATIONPROC glBindAttribLocation; PFNGLENABLEVERTEXATTRIBARRAYPROC glEnableVertexAttribArray; PFNGLDISABLEVERTEXATTRIBARRAYPROC glDisableVertexAttribArray; - PFNGLGETVERTEXATTRIBIVPROC glGetVertexAttribiv; - PFNGLGETVERTEXATTRIBPOINTERVPROC glGetVertexAttribPointerv; PFNGLBINDVERTEXBUFFERPROC glBindVertexBuffer; PFNGLVERTEXBINDINGDIVISORPROC glVertexBindingDivisor; - PFNGLGETCOMPRESSEDTEXIMAGEPROC glGetCompressedTexImage; PFNGLBINDIMAGETEXTUREPROC glBindImageTexture; PFNGLGENSAMPLERSPROC glGenSamplers; PFNGLBINDSAMPLERPROC glBindSampler; @@ -236,18 +332,6 @@ struct GLHookSet PFNGLVIEWPORTINDEXEDFPROC glViewportIndexedf; PFNGLVIEWPORTINDEXEDFVPROC glViewportIndexedfv; PFNGLVIEWPORTARRAYVPROC glViewportArrayv; - PFNGLGETUNIFORMLOCATIONPROC glGetUniformLocation; - PFNGLGETUNIFORMINDICESPROC glGetUniformIndices; - PFNGLGETUNIFORMBLOCKINDEXPROC glGetUniformBlockIndex; - PFNGLGETATTRIBLOCATIONPROC glGetAttribLocation; - PFNGLGETACTIVEUNIFORMPROC glGetActiveUniform; - PFNGLGETACTIVEUNIFORMBLOCKIVPROC glGetActiveUniformBlockiv; - PFNGLGETACTIVEUNIFORMSIVPROC glGetActiveUniformsiv; - PFNGLGETACTIVEATTRIBPROC glGetActiveAttrib; - PFNGLGETUNIFORMFVPROC glGetUniformfv; - PFNGLGETUNIFORMIVPROC glGetUniformiv; - PFNGLGETUNIFORMUIVPROC glGetUniformuiv; - PFNGLGETUNIFORMDVPROC glGetUniformdv; PFNGLUNIFORMBLOCKBINDINGPROC glUniformBlockBinding; PFNGLUNIFORM1FPROC glUniform1f; PFNGLUNIFORM1IPROC glUniform1i; diff --git a/renderdoc/driver/gl/gl_hookset_defs.h b/renderdoc/driver/gl/gl_hookset_defs.h index 55ef882bc..d2acdd753 100644 --- a/renderdoc/driver/gl/gl_hookset_defs.h +++ b/renderdoc/driver/gl/gl_hookset_defs.h @@ -53,8 +53,9 @@ HookInit(glFrontFace); \ HookInit(glGenTextures); \ HookInit(glDeleteTextures); \ - HookInit(glGetError); \ HookInit(glIsEnabled); \ + HookInit(glIsTexture); \ + HookInit(glGetError); \ HookInit(glGetTexLevelParameteriv); \ HookInit(glGetTexLevelParameterfv); \ HookInit(glGetTexParameterfv); \ @@ -64,6 +65,7 @@ HookInit(glGetFloatv); \ HookInit(glGetDoublev); \ HookInit(glGetIntegerv); \ + HookInit(glGetPointerv); \ HookInit(glGetString); \ HookInit(glHint); \ HookInit(glPixelStorei); \ @@ -116,12 +118,121 @@ HookExtension(PFNGLGETINTERNALFORMATIVPROC, glGetInternalformativ); \ HookExtension(PFNGLGETINTERNALFORMATI64VPROC, glGetInternalformati64v); \ HookExtension(PFNGLGETBUFFERPARAMETERIVPROC, glGetBufferParameteriv); \ + HookExtension(PFNGLGETBUFFERPARAMETERI64VPROC, glGetBufferParameteri64v); \ + HookExtension(PFNGLGETBUFFERPOINTERVPROC, glGetBufferPointerv); \ + HookExtension(PFNGLGETFRAGDATAINDEXPROC, glGetFragDataIndex); \ + HookExtension(PFNGLGETFRAGDATALOCATIONPROC, glGetFragDataLocation); \ HookExtension(PFNGLGETSTRINGIPROC, glGetStringi); \ HookExtension(PFNGLGETBOOLEANI_VPROC, glGetBooleani_v); \ HookExtension(PFNGLGETINTEGERI_VPROC, glGetIntegeri_v); \ HookExtension(PFNGLGETFLOATI_VPROC, glGetFloati_v); \ HookExtension(PFNGLGETDOUBLEI_VPROC, glGetDoublei_v); \ HookExtension(PFNGLGETINTEGER64I_VPROC, glGetInteger64i_v); \ + HookExtension(PFNGLGETINTEGER64VPROC, glGetInteger64v); \ + HookExtension(PFNGLGETSHADERIVPROC, glGetShaderiv); \ + HookExtension(PFNGLGETSHADERINFOLOGPROC, glGetShaderInfoLog); \ + HookExtension(PFNGLGETSHADERPRECISIONFORMATPROC, glGetShaderPrecisionFormat); \ + HookExtension(PFNGLGETSHADERSOURCEPROC, glGetShaderSource); \ + HookExtension(PFNGLGETATTACHEDSHADERSPROC, glGetAttachedShaders); \ + HookExtension(PFNGLGETPROGRAMIVPROC, glGetProgramiv); \ + HookExtension(PFNGLGETPROGRAMINFOLOGPROC, glGetProgramInfoLog); \ + HookExtension(PFNGLGETPROGRAMINTERFACEIVPROC, glGetProgramInterfaceiv); \ + HookExtension(PFNGLGETPROGRAMRESOURCEINDEXPROC, glGetProgramResourceIndex); \ + HookExtension(PFNGLGETPROGRAMRESOURCEIVPROC, glGetProgramResourceiv); \ + HookExtension(PFNGLGETPROGRAMRESOURCENAMEPROC, glGetProgramResourceName); \ + HookExtension(PFNGLGETPROGRAMPIPELINEIVPROC, glGetProgramPipelineiv); \ + HookExtension(PFNGLGETPROGRAMPIPELINEINFOLOGPROC, glGetProgramPipelineInfoLog); \ + HookExtension(PFNGLGETPROGRAMBINARYPROC, glGetProgramBinary); \ + HookExtension(PFNGLGETPROGRAMRESOURCELOCATIONPROC, glGetProgramResourceLocation); \ + HookExtension(PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC, glGetProgramResourceLocationIndex); \ + HookExtension(PFNGLGETPROGRAMSTAGEIVPROC, glGetProgramStageiv); \ + HookExtension(PFNGLGETGRAPHICSRESETSTATUSPROC, glGetGraphicsResetStatus); \ + HookExtensionAlias(PFNGLGETGRAPHICSRESETSTATUSPROC, glGetGraphicsResetStatus, glGetGraphicsResetStatusARB); \ + HookExtension(PFNGLGETOBJECTLABELPROC, glGetObjectLabel); \ + HookExtension(PFNGLGETOBJECTPTRLABELPROC, glGetObjectPtrLabel); \ + HookExtension(PFNGLGETDEBUGMESSAGELOGPROC, glGetDebugMessageLog); \ + HookExtensionAlias(PFNGLGETDEBUGMESSAGELOGPROC, glGetDebugMessageLog, glGetDebugMessageLogARB); \ + HookExtension(PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC, glGetFramebufferAttachmentParameteriv); \ + HookExtension(PFNGLGETFRAMEBUFFERPARAMETERIVPROC, glGetFramebufferParameteriv); \ + HookExtension(PFNGLGETRENDERBUFFERPARAMETERIVPROC, glGetRenderbufferParameteriv); \ + HookExtension(PFNGLGETMULTISAMPLEFVPROC, glGetMultisamplefv); \ + HookExtension(PFNGLGETQUERYINDEXEDIVPROC, glGetQueryIndexediv); \ + HookExtension(PFNGLGETQUERYOBJECTUI64VPROC, glGetQueryObjectui64v); \ + HookExtension(PFNGLGETQUERYOBJECTUIVPROC, glGetQueryObjectuiv); \ + HookExtension(PFNGLGETQUERYOBJECTI64VPROC, glGetQueryObjecti64v); \ + HookExtension(PFNGLGETQUERYOBJECTIVPROC, glGetQueryObjectiv); \ + HookExtension(PFNGLGETQUERYIVPROC, glGetQueryiv); \ + HookExtension(PFNGLGETSYNCIVPROC, glGetSynciv); \ + HookExtension(PFNGLGETBUFFERSUBDATAPROC, glGetBufferSubData); \ + HookExtension(PFNGLGETVERTEXATTRIBIVPROC, glGetVertexAttribiv); \ + HookExtension(PFNGLGETVERTEXATTRIBPOINTERVPROC, glGetVertexAttribPointerv); \ + HookExtension(PFNGLGETCOMPRESSEDTEXIMAGEPROC, glGetCompressedTexImage); \ + HookExtension(PFNGLGETNCOMPRESSEDTEXIMAGEPROC, glGetnCompressedTexImage); \ + HookExtensionAlias(PFNGLGETNCOMPRESSEDTEXIMAGEPROC, glGetnCompressedTexImage, glGetnCompressedTexImageARB); \ + HookExtension(PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC, glGetCompressedTextureImage); \ + HookExtension(PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC, glGetCompressedTextureSubImage); \ + HookExtension(PFNGLGETNTEXIMAGEPROC, glGetnTexImage); \ + HookExtensionAlias(PFNGLGETNTEXIMAGEPROC, glGetnTexImage, glGetnTexImageARB); \ + HookExtension(PFNGLGETTEXTUREIMAGEPROC, glGetTextureImage); \ + HookExtension(PFNGLGETTEXTURELEVELPARAMETERFVPROC, glGetTextureLevelParameterfv); \ + HookExtension(PFNGLGETTEXTURELEVELPARAMETERIVPROC, glGetTextureLevelParameteriv); \ + HookExtension(PFNGLGETTEXTUREPARAMETERIIVPROC, glGetTextureParameterIiv); \ + HookExtension(PFNGLGETTEXTUREPARAMETERIUIVPROC, glGetTextureParameterIuiv); \ + HookExtension(PFNGLGETTEXTUREPARAMETERFVPROC, glGetTextureParameterfv); \ + HookExtension(PFNGLGETTEXTUREPARAMETERIVPROC, glGetTextureParameteriv); \ + HookExtension(PFNGLGETTEXTURESUBIMAGEPROC, glGetTextureSubImage); \ + HookExtension(PFNGLGETTEXPARAMETERIIVPROC, glGetTexParameterIiv); \ + HookExtension(PFNGLGETTEXPARAMETERIUIVPROC, glGetTexParameterIuiv); \ + HookExtension(PFNGLGETSAMPLERPARAMETERIIVPROC, glGetSamplerParameterIiv); \ + HookExtension(PFNGLGETSAMPLERPARAMETERIUIVPROC, glGetSamplerParameterIuiv); \ + HookExtension(PFNGLGETSAMPLERPARAMETERFVPROC, glGetSamplerParameterfv); \ + HookExtension(PFNGLGETSAMPLERPARAMETERIVPROC, glGetSamplerParameteriv); \ + HookExtension(PFNGLGETTRANSFORMFEEDBACKVARYINGPROC, glGetTransformFeedbackVarying); \ + HookExtension(PFNGLGETTRANSFORMFEEDBACKI64_VPROC, glGetTransformFeedbacki64_v); \ + HookExtension(PFNGLGETTRANSFORMFEEDBACKI_VPROC, glGetTransformFeedbacki_v); \ + HookExtension(PFNGLGETTRANSFORMFEEDBACKIVPROC, glGetTransformFeedbackiv); \ + HookExtension(PFNGLGETSUBROUTINEINDEXPROC, glGetSubroutineIndex); \ + HookExtension(PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC, glGetSubroutineUniformLocation); \ + HookExtension(PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC, glGetActiveAtomicCounterBufferiv); \ + HookExtension(PFNGLGETACTIVESUBROUTINENAMEPROC, glGetActiveSubroutineName); \ + HookExtension(PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC, glGetActiveSubroutineUniformName); \ + HookExtension(PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC, glGetActiveSubroutineUniformiv); \ + HookExtension(PFNGLGETUNIFORMLOCATIONPROC, glGetUniformLocation); \ + HookExtension(PFNGLGETUNIFORMINDICESPROC, glGetUniformIndices); \ + HookExtension(PFNGLGETUNIFORMSUBROUTINEUIVPROC, glGetUniformSubroutineuiv); \ + HookExtension(PFNGLGETUNIFORMBLOCKINDEXPROC, glGetUniformBlockIndex); \ + HookExtension(PFNGLGETATTRIBLOCATIONPROC, glGetAttribLocation); \ + HookExtension(PFNGLGETACTIVEUNIFORMPROC, glGetActiveUniform); \ + HookExtension(PFNGLGETACTIVEUNIFORMBLOCKIVPROC, glGetActiveUniformBlockiv); \ + HookExtension(PFNGLGETACTIVEUNIFORMSIVPROC, glGetActiveUniformsiv); \ + HookExtension(PFNGLGETACTIVEATTRIBPROC, glGetActiveAttrib); \ + HookExtension(PFNGLGETUNIFORMFVPROC, glGetUniformfv); \ + HookExtension(PFNGLGETUNIFORMIVPROC, glGetUniformiv); \ + HookExtension(PFNGLGETUNIFORMUIVPROC, glGetUniformuiv); \ + HookExtension(PFNGLGETUNIFORMDVPROC, glGetUniformdv); \ + HookExtension(PFNGLGETNUNIFORMDVPROC, glGetnUniformdv); \ + HookExtensionAlias(PFNGLGETNUNIFORMDVPROC, glGetnUniformdv, glGetnUniformdvARB); \ + HookExtension(PFNGLGETNUNIFORMFVPROC, glGetnUniformfv); \ + HookExtensionAlias(PFNGLGETNUNIFORMFVPROC, glGetnUniformfv, glGetnUniformfvARB); \ + HookExtension(PFNGLGETNUNIFORMIVPROC, glGetnUniformiv); \ + HookExtensionAlias(PFNGLGETNUNIFORMIVPROC, glGetnUniformiv, glGetnUniformivARB); \ + HookExtension(PFNGLGETNUNIFORMUIVPROC, glGetnUniformuiv); \ + HookExtensionAlias(PFNGLGETNUNIFORMUIVPROC, glGetnUniformuiv, glGetnUniformuivARB); \ + HookExtension(PFNGLGETVERTEXARRAYIVPROC, glGetVertexArrayiv); \ + HookExtension(PFNGLGETVERTEXARRAYINDEXED64IVPROC, glGetVertexArrayIndexed64iv); \ + HookExtension(PFNGLGETVERTEXARRAYINDEXEDIVPROC, glGetVertexArrayIndexediv); \ + HookExtension(PFNGLGETVERTEXATTRIBIIVPROC, glGetVertexAttribIiv); \ + HookExtension(PFNGLGETVERTEXATTRIBIUIVPROC, glGetVertexAttribIuiv); \ + HookExtension(PFNGLGETVERTEXATTRIBLDVPROC, glGetVertexAttribLdv); \ + HookExtension(PFNGLGETVERTEXATTRIBDVPROC, glGetVertexAttribdv); \ + HookExtension(PFNGLGETVERTEXATTRIBFVPROC, glGetVertexAttribfv); \ + HookExtension(PFNGLGETNAMEDBUFFERPARAMETERI64VPROC, glGetNamedBufferParameteri64v); \ + HookExtension(PFNGLGETNAMEDBUFFERPARAMETERIVPROC, glGetNamedBufferParameteriv); \ + HookExtension(PFNGLGETNAMEDBUFFERPOINTERVPROC, glGetNamedBufferPointerv); \ + HookExtension(PFNGLGETNAMEDBUFFERSUBDATAPROC, glGetNamedBufferSubData); \ + HookExtension(PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC, glGetNamedFramebufferAttachmentParameteriv); \ + HookExtension(PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC, glGetNamedFramebufferParameteriv); \ + HookExtension(PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC, glGetNamedRenderbufferParameteriv); \ HookExtension(PFNGLCHECKFRAMEBUFFERSTATUSPROC, glCheckFramebufferStatus); \ HookExtension(PFNGLBLENDCOLORPROC, glBlendColor); \ HookExtension(PFNGLBLENDFUNCIPROC, glBlendFunci); \ @@ -143,8 +254,6 @@ HookExtension(PFNGLSHADERSOURCEPROC, glShaderSource); \ HookExtension(PFNGLCOMPILESHADERPROC, glCompileShader); \ HookExtension(PFNGLCREATESHADERPROGRAMVPROC, glCreateShaderProgramv); \ - HookExtension(PFNGLGETSHADERIVPROC, glGetShaderiv); \ - HookExtension(PFNGLGETSHADERINFOLOGPROC, glGetShaderInfoLog); \ HookExtension(PFNGLCREATEPROGRAMPROC, glCreateProgram); \ HookExtension(PFNGLDELETEPROGRAMPROC, glDeleteProgram); \ HookExtension(PFNGLATTACHSHADERPROC, glAttachShader); \ @@ -155,17 +264,9 @@ HookExtension(PFNGLUSEPROGRAMPROC, glUseProgram); \ HookExtension(PFNGLUSEPROGRAMSTAGESPROC, glUseProgramStages); \ HookExtension(PFNGLVALIDATEPROGRAMPROC, glValidateProgram); \ - HookExtension(PFNGLGETPROGRAMIVPROC, glGetProgramiv); \ - HookExtension(PFNGLGETPROGRAMINFOLOGPROC, glGetProgramInfoLog); \ - HookExtension(PFNGLGETPROGRAMINTERFACEIVPROC, glGetProgramInterfaceiv); \ - HookExtension(PFNGLGETPROGRAMRESOURCEINDEXPROC, glGetProgramResourceIndex); \ - HookExtension(PFNGLGETPROGRAMRESOURCEIVPROC, glGetProgramResourceiv); \ - HookExtension(PFNGLGETPROGRAMRESOURCENAMEPROC, glGetProgramResourceName); \ HookExtension(PFNGLGENPROGRAMPIPELINESPROC, glGenProgramPipelines); \ HookExtension(PFNGLBINDPROGRAMPIPELINEPROC, glBindProgramPipeline); \ HookExtension(PFNGLDELETEPROGRAMPIPELINESPROC, glDeleteProgramPipelines); \ - HookExtension(PFNGLGETPROGRAMPIPELINEIVPROC, glGetProgramPipelineiv); \ - HookExtension(PFNGLGETPROGRAMPIPELINEINFOLOGPROC, glGetProgramPipelineInfoLog); \ HookExtension(PFNGLVALIDATEPROGRAMPIPELINEPROC, glValidateProgramPipeline); \ HookExtension(PFNGLDEBUGMESSAGECALLBACKPROC, glDebugMessageCallback); \ HookExtensionAlias(PFNGLDEBUGMESSAGECALLBACKPROC, glDebugMessageCallback, glDebugMessageCallbackARB); \ @@ -173,11 +274,21 @@ HookExtension(PFNGLDEBUGMESSAGEINSERTPROC, glDebugMessageInsert); \ HookExtension(PFNGLPUSHDEBUGGROUPPROC, glPushDebugGroup); \ HookExtension(PFNGLPOPDEBUGGROUPPROC, glPopDebugGroup); \ - HookExtension(PFNGLGETOBJECTLABELPROC, glGetObjectLabel); \ HookExtension(PFNGLOBJECTLABELPROC, glObjectLabel); \ HookExtension(PFNGLENABLEIPROC, glEnablei); \ HookExtension(PFNGLDISABLEIPROC, glDisablei); \ HookExtension(PFNGLISENABLEDIPROC, glIsEnabledi); \ + HookExtension(PFNGLISBUFFERPROC, glIsBuffer); \ + HookExtension(PFNGLISFRAMEBUFFERPROC, glIsFramebuffer); \ + HookExtension(PFNGLISPROGRAMPROC, glIsProgram); \ + HookExtension(PFNGLISPROGRAMPIPELINEPROC, glIsProgramPipeline); \ + HookExtension(PFNGLISQUERYPROC, glIsQuery); \ + HookExtension(PFNGLISRENDERBUFFERPROC, glIsRenderbuffer); \ + HookExtension(PFNGLISSAMPLERPROC, glIsSampler); \ + HookExtension(PFNGLISSHADERPROC, glIsShader); \ + HookExtension(PFNGLISSYNCPROC, glIsSync); \ + HookExtension(PFNGLISTRANSFORMFEEDBACKPROC, glIsTransformFeedback); \ + HookExtension(PFNGLISVERTEXARRAYPROC, glIsVertexArray); \ HookExtension(PFNGLGENBUFFERSPROC, glGenBuffers); \ HookExtension(PFNGLBINDBUFFERPROC, glBindBuffer); \ HookExtension(PFNGLDRAWBUFFERSPROC, glDrawBuffers); \ @@ -187,7 +298,6 @@ HookExtension(PFNGLFRAMEBUFFERTEXTURE2DPROC, glFramebufferTexture2D); \ HookExtension(PFNGLFRAMEBUFFERTEXTURELAYERPROC, glFramebufferTextureLayer); \ HookExtension(PFNGLDELETEFRAMEBUFFERSPROC, glDeleteFramebuffers); \ - HookExtension(PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC, glGetFramebufferAttachmentParameteriv); \ HookExtension(PFNGLFENCESYNCPROC, glFenceSync); \ HookExtension(PFNGLCLIENTWAITSYNCPROC, glClientWaitSync); \ HookExtension(PFNGLWAITSYNCPROC, glWaitSync); \ @@ -195,8 +305,6 @@ HookExtension(PFNGLGENQUERIESPROC, glGenQueries); \ HookExtension(PFNGLBEGINQUERYPROC, glBeginQuery); \ HookExtension(PFNGLENDQUERYPROC, glEndQuery); \ - HookExtension(PFNGLGETQUERYOBJECTUI64VPROC, glGetQueryObjectui64v); \ - HookExtension(PFNGLGETQUERYOBJECTUIVPROC, glGetQueryObjectuiv); \ HookExtension(PFNGLDELETEQUERIESPROC, glDeleteQueries); \ HookExtension(PFNGLBUFFERDATAPROC, glBufferData); \ HookExtension(PFNGLBUFFERSTORAGEPROC, glBufferStorage); \ @@ -208,7 +316,6 @@ HookExtension(PFNGLMAPBUFFERRANGEPROC, glMapBufferRange); \ HookExtension(PFNGLUNMAPBUFFERPROC, glUnmapBuffer); \ HookExtension(PFNGLDELETEBUFFERSPROC, glDeleteBuffers); \ - HookExtension(PFNGLGETBUFFERSUBDATAPROC, glGetBufferSubData); \ HookExtension(PFNGLGENVERTEXARRAYSPROC, glGenVertexArrays); \ HookExtension(PFNGLBINDVERTEXARRAYPROC, glBindVertexArray); \ HookExtension(PFNGLDELETEVERTEXARRAYSPROC, glDeleteVertexArrays); \ @@ -220,11 +327,8 @@ HookExtension(PFNGLBINDATTRIBLOCATIONPROC, glBindAttribLocation); \ HookExtension(PFNGLENABLEVERTEXATTRIBARRAYPROC, glEnableVertexAttribArray); \ HookExtension(PFNGLDISABLEVERTEXATTRIBARRAYPROC, glDisableVertexAttribArray); \ - HookExtension(PFNGLGETVERTEXATTRIBIVPROC, glGetVertexAttribiv); \ - HookExtension(PFNGLGETVERTEXATTRIBPOINTERVPROC, glGetVertexAttribPointerv); \ HookExtension(PFNGLBINDVERTEXBUFFERPROC, glBindVertexBuffer); \ HookExtension(PFNGLVERTEXBINDINGDIVISORPROC, glVertexBindingDivisor); \ - HookExtension(PFNGLGETCOMPRESSEDTEXIMAGEPROC, glGetCompressedTexImage); \ HookExtension(PFNGLBINDIMAGETEXTUREPROC, glBindImageTexture); \ HookExtension(PFNGLGENSAMPLERSPROC, glGenSamplers); \ HookExtension(PFNGLBINDSAMPLERPROC, glBindSampler); \ @@ -250,18 +354,6 @@ HookExtension(PFNGLVIEWPORTINDEXEDFPROC, glViewportIndexedf); \ HookExtension(PFNGLVIEWPORTINDEXEDFVPROC, glViewportIndexedfv); \ HookExtension(PFNGLVIEWPORTARRAYVPROC, glViewportArrayv); \ - HookExtension(PFNGLGETUNIFORMLOCATIONPROC, glGetUniformLocation); \ - HookExtension(PFNGLGETUNIFORMINDICESPROC, glGetUniformIndices); \ - HookExtension(PFNGLGETUNIFORMBLOCKINDEXPROC, glGetUniformBlockIndex); \ - HookExtension(PFNGLGETATTRIBLOCATIONPROC, glGetAttribLocation); \ - HookExtension(PFNGLGETACTIVEUNIFORMPROC, glGetActiveUniform); \ - HookExtension(PFNGLGETACTIVEUNIFORMBLOCKIVPROC, glGetActiveUniformBlockiv); \ - HookExtension(PFNGLGETACTIVEUNIFORMSIVPROC, glGetActiveUniformsiv); \ - HookExtension(PFNGLGETACTIVEATTRIBPROC, glGetActiveAttrib); \ - HookExtension(PFNGLGETUNIFORMFVPROC, glGetUniformfv); \ - HookExtension(PFNGLGETUNIFORMIVPROC, glGetUniformiv); \ - HookExtension(PFNGLGETUNIFORMUIVPROC, glGetUniformuiv); \ - HookExtension(PFNGLGETUNIFORMDVPROC, glGetUniformdv); \ HookExtension(PFNGLUNIFORMBLOCKBINDINGPROC, glUniformBlockBinding); \ HookExtension(PFNGLUNIFORM1FPROC, glUniform1f); \ HookExtension(PFNGLUNIFORM1IPROC, glUniform1i); \ @@ -433,8 +525,9 @@ HookExtension(PFNGLFRONTFACEPROC, glFrontFace); \ HookExtension(PFNGLGENTEXTURESPROC, glGenTextures); \ HookExtension(PFNGLDELETETEXTURESPROC, glDeleteTextures); \ - HookExtension(PFNGLGETERRORPROC, glGetError); \ HookExtension(PFNGLISENABLEDPROC, glIsEnabled); \ + HookExtension(PFNGLISTEXTUREPROC, glIsTexture); \ + HookExtension(PFNGLGETERRORPROC, glGetError); \ HookExtension(PFNGLGETTEXLEVELPARAMETERIVPROC, glGetTexLevelParameteriv); \ HookExtension(PFNGLGETTEXLEVELPARAMETERFVPROC, glGetTexLevelParameterfv); \ HookExtension(PFNGLGETTEXPARAMETERFVPROC, glGetTexParameterfv); \ @@ -444,6 +537,7 @@ HookExtension(PFNGLGETFLOATVPROC, glGetFloatv); \ HookExtension(PFNGLGETDOUBLEVPROC, glGetDoublev); \ HookExtension(PFNGLGETINTEGERVPROC, glGetIntegerv); \ + HookExtension(PFNGLGETPOINTERVPROC, glGetPointerv); \ HookExtension(PFNGLGETSTRINGPROC, glGetString); \ HookExtension(PFNGLHINTPROC, glHint); \ HookExtension(PFNGLPIXELSTOREIPROC, glPixelStorei); \ @@ -490,8 +584,9 @@ HookWrapper1(void, glFrontFace, GLenum, mode); \ HookWrapper2(void, glGenTextures, GLsizei, n, GLuint *, textures); \ HookWrapper2(void, glDeleteTextures, GLsizei, n, const GLuint *, textures); \ - HookWrapper0(GLenum, glGetError); \ HookWrapper1(GLboolean, glIsEnabled, GLenum, cap); \ + HookWrapper1(GLboolean, glIsTexture, GLuint, texture); \ + HookWrapper0(GLenum, glGetError); \ HookWrapper4(void, glGetTexLevelParameteriv, GLenum, target, GLint, level, GLenum, pname, GLint *, params); \ HookWrapper4(void, glGetTexLevelParameterfv, GLenum, target, GLint, level, GLenum, pname, GLfloat *, params); \ HookWrapper3(void, glGetTexParameterfv, GLenum, target, GLenum, pname, GLfloat *, params); \ @@ -501,6 +596,7 @@ HookWrapper2(void, glGetFloatv, GLenum, pname, GLfloat *, data); \ HookWrapper2(void, glGetDoublev, GLenum, pname, GLdouble *, data); \ HookWrapper2(void, glGetIntegerv, GLenum, pname, GLint *, data); \ + HookWrapper2(void, glGetPointerv, GLenum, pname, void **, params); \ HookWrapper1(const GLubyte *, glGetString, GLenum, name); \ HookWrapper2(void, glHint, GLenum, target, GLenum, mode); \ HookWrapper2(void, glPixelStorei, GLenum, pname, GLint, param); \ @@ -553,12 +649,113 @@ HookWrapper5(void, glGetInternalformativ, GLenum, target, GLenum, internalformat, GLenum, pname, GLsizei, bufSize, GLint *, params); \ HookWrapper5(void, glGetInternalformati64v, GLenum, target, GLenum, internalformat, GLenum, pname, GLsizei, bufSize, GLint64 *, params); \ HookWrapper3(void, glGetBufferParameteriv, GLenum, target, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetBufferParameteri64v, GLenum, target, GLenum, pname, GLint64 *, params); \ + HookWrapper3(void, glGetBufferPointerv, GLenum, target, GLenum, pname, void **, params); \ + HookWrapper2(GLint, glGetFragDataIndex, GLuint, program, const GLchar *, name); \ + HookWrapper2(GLint, glGetFragDataLocation, GLuint, program, const GLchar *, name); \ HookWrapper2(const GLubyte *, glGetStringi, GLenum, name, GLuint, index); \ HookWrapper3(void, glGetBooleani_v, GLenum, target, GLuint, index, GLboolean *, data); \ HookWrapper3(void, glGetIntegeri_v, GLenum, target, GLuint, index, GLint *, data); \ HookWrapper3(void, glGetFloati_v, GLenum, target, GLuint, index, GLfloat *, data); \ HookWrapper3(void, glGetDoublei_v, GLenum, target, GLuint, index, GLdouble *, data); \ HookWrapper3(void, glGetInteger64i_v, GLenum, target, GLuint, index, GLint64 *, data); \ + HookWrapper2(void, glGetInteger64v, GLenum, pname, GLint64 *, data); \ + HookWrapper3(void, glGetShaderiv, GLuint, shader, GLenum, pname, GLint *, params); \ + HookWrapper4(void, glGetShaderInfoLog, GLuint, shader, GLsizei, bufSize, GLsizei *, length, GLchar *, infoLog); \ + HookWrapper4(void, glGetShaderPrecisionFormat, GLenum, shadertype, GLenum, precisiontype, GLint *, range, GLint *, precision); \ + HookWrapper4(void, glGetShaderSource, GLuint, shader, GLsizei, bufSize, GLsizei *, length, GLchar *, source); \ + HookWrapper4(void, glGetAttachedShaders, GLuint, program, GLsizei, maxCount, GLsizei *, count, GLuint *, shaders); \ + HookWrapper3(void, glGetProgramiv, GLuint, program, GLenum, pname, GLint *, params); \ + HookWrapper4(void, glGetProgramInfoLog, GLuint, program, GLsizei, bufSize, GLsizei *, length, GLchar *, infoLog); \ + HookWrapper4(void, glGetProgramInterfaceiv, GLuint, program, GLenum, programInterface, GLenum, pname, GLint *, params); \ + HookWrapper3(GLuint, glGetProgramResourceIndex, GLuint, program, GLenum, programInterface, const GLchar *, name); \ + HookWrapper8(void, glGetProgramResourceiv, GLuint, program, GLenum, programInterface, GLuint, index, GLsizei, propCount, const GLenum *, props, GLsizei, bufSize, GLsizei *, length, GLint *, params); \ + HookWrapper6(void, glGetProgramResourceName, GLuint, program, GLenum, programInterface, GLuint, index, GLsizei, bufSize, GLsizei *, length, GLchar *, name); \ + HookWrapper3(void, glGetProgramPipelineiv, GLuint, pipeline, GLenum, pname, GLint *, params); \ + HookWrapper4(void, glGetProgramPipelineInfoLog, GLuint, pipeline, GLsizei, bufSize, GLsizei *, length, GLchar *, infoLog); \ + HookWrapper5(void, glGetProgramBinary, GLuint, program, GLsizei, bufSize, GLsizei *, length, GLenum *, binaryFormat, void *, binary); \ + HookWrapper3(GLint, glGetProgramResourceLocation, GLuint, program, GLenum, programInterface, const GLchar *, name); \ + HookWrapper3(GLint, glGetProgramResourceLocationIndex, GLuint, program, GLenum, programInterface, const GLchar *, name); \ + HookWrapper4(void, glGetProgramStageiv, GLuint, program, GLenum, shadertype, GLenum, pname, GLint *, values); \ + HookWrapper0(GLenum, glGetGraphicsResetStatus); \ + HookWrapper5(void, glGetObjectLabel, GLenum, identifier, GLuint, name, GLsizei, bufSize, GLsizei *, length, GLchar *, label); \ + HookWrapper4(void, glGetObjectPtrLabel, const void *, ptr, GLsizei, bufSize, GLsizei *, length, GLchar *, label); \ + HookWrapper8(GLuint, glGetDebugMessageLog, GLuint, count, GLsizei, bufSize, GLenum *, sources, GLenum *, types, GLuint *, ids, GLenum *, severities, GLsizei *, lengths, GLchar *, messageLog); \ + HookWrapper4(void, glGetFramebufferAttachmentParameteriv, GLenum, target, GLenum, attachment, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetFramebufferParameteriv, GLenum, target, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetRenderbufferParameteriv, GLenum, target, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetMultisamplefv, GLenum, pname, GLuint, index, GLfloat *, val); \ + HookWrapper4(void, glGetQueryIndexediv, GLenum, target, GLuint, index, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetQueryObjectui64v, GLuint, id, GLenum, pname, GLuint64 *, params); \ + HookWrapper3(void, glGetQueryObjectuiv, GLuint, id, GLenum, pname, GLuint *, params); \ + HookWrapper3(void, glGetQueryObjecti64v, GLuint, id, GLenum, pname, GLint64 *, params); \ + HookWrapper3(void, glGetQueryObjectiv, GLuint, id, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetQueryiv, GLenum, target, GLenum, pname, GLint *, params); \ + HookWrapper5(void, glGetSynciv, GLsync, sync, GLenum, pname, GLsizei, bufSize, GLsizei *, length, GLint *, values); \ + HookWrapper4(void, glGetBufferSubData, GLenum, target, GLintptr, offset, GLsizeiptr, size, void *, data); \ + HookWrapper3(void, glGetVertexAttribiv, GLuint, index, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetVertexAttribPointerv, GLuint, index, GLenum, pname, void **, pointer); \ + HookWrapper3(void, glGetCompressedTexImage, GLenum, target, GLint, level, void *, img); \ + HookWrapper4(void, glGetnCompressedTexImage, GLenum, target, GLint, lod, GLsizei, bufSize, void *, pixels); \ + HookWrapper4(void, glGetCompressedTextureImage, GLuint, texture, GLint, level, GLsizei, bufSize, void *, pixels); \ + HookWrapper10(void, glGetCompressedTextureSubImage, GLuint, texture, GLint, level, GLint, xoffset, GLint, yoffset, GLint, zoffset, GLsizei, width, GLsizei, height, GLsizei, depth, GLsizei, bufSize, void *, pixels); \ + HookWrapper6(void, glGetnTexImage, GLenum, target, GLint, level, GLenum, format, GLenum, type, GLsizei, bufSize, void *, pixels); \ + HookWrapper6(void, glGetTextureImage, GLuint, texture, GLint, level, GLenum, format, GLenum, type, GLsizei, bufSize, void *, pixels); \ + HookWrapper4(void, glGetTextureLevelParameterfv, GLuint, texture, GLint, level, GLenum, pname, GLfloat *, params); \ + HookWrapper4(void, glGetTextureLevelParameteriv, GLuint, texture, GLint, level, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetTextureParameterIiv, GLuint, texture, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetTextureParameterIuiv, GLuint, texture, GLenum, pname, GLuint *, params); \ + HookWrapper3(void, glGetTextureParameterfv, GLuint, texture, GLenum, pname, GLfloat *, params); \ + HookWrapper3(void, glGetTextureParameteriv, GLuint, texture, GLenum, pname, GLint *, params); \ + HookWrapper12(void, glGetTextureSubImage, GLuint, texture, GLint, level, GLint, xoffset, GLint, yoffset, GLint, zoffset, GLsizei, width, GLsizei, height, GLsizei, depth, GLenum, format, GLenum, type, GLsizei, bufSize, void *, pixels); \ + HookWrapper3(void, glGetTexParameterIiv, GLenum, target, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetTexParameterIuiv, GLenum, target, GLenum, pname, GLuint *, params); \ + HookWrapper3(void, glGetSamplerParameterIiv, GLuint, sampler, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetSamplerParameterIuiv, GLuint, sampler, GLenum, pname, GLuint *, params); \ + HookWrapper3(void, glGetSamplerParameterfv, GLuint, sampler, GLenum, pname, GLfloat *, params); \ + HookWrapper3(void, glGetSamplerParameteriv, GLuint, sampler, GLenum, pname, GLint *, params); \ + HookWrapper7(void, glGetTransformFeedbackVarying, GLuint, program, GLuint, index, GLsizei, bufSize, GLsizei *, length, GLsizei *, size, GLenum *, type, GLchar *, name); \ + HookWrapper4(void, glGetTransformFeedbacki64_v, GLuint, xfb, GLenum, pname, GLuint, index, GLint64 *, param); \ + HookWrapper4(void, glGetTransformFeedbacki_v, GLuint, xfb, GLenum, pname, GLuint, index, GLint *, param); \ + HookWrapper3(void, glGetTransformFeedbackiv, GLuint, xfb, GLenum, pname, GLint *, param); \ + HookWrapper3(GLuint, glGetSubroutineIndex, GLuint, program, GLenum, shadertype, const GLchar *, name); \ + HookWrapper3(GLint, glGetSubroutineUniformLocation, GLuint, program, GLenum, shadertype, const GLchar *, name); \ + HookWrapper4(void, glGetActiveAtomicCounterBufferiv, GLuint, program, GLuint, bufferIndex, GLenum, pname, GLint *, params); \ + HookWrapper6(void, glGetActiveSubroutineName, GLuint, program, GLenum, shadertype, GLuint, index, GLsizei, bufsize, GLsizei *, length, GLchar *, name); \ + HookWrapper6(void, glGetActiveSubroutineUniformName, GLuint, program, GLenum, shadertype, GLuint, index, GLsizei, bufsize, GLsizei *, length, GLchar *, name); \ + HookWrapper5(void, glGetActiveSubroutineUniformiv, GLuint, program, GLenum, shadertype, GLuint, index, GLenum, pname, GLint *, values); \ + HookWrapper2(GLint, glGetUniformLocation, GLuint, program, const GLchar *, name); \ + HookWrapper4(void, glGetUniformIndices, GLuint, program, GLsizei, uniformCount, const GLchar *const*, uniformNames, GLuint *, uniformIndices); \ + HookWrapper3(void, glGetUniformSubroutineuiv, GLenum, shadertype, GLint, location, GLuint *, params); \ + HookWrapper2(GLuint, glGetUniformBlockIndex, GLuint, program, const GLchar *, uniformBlockName); \ + HookWrapper2(GLint, glGetAttribLocation, GLuint, program, const GLchar *, name); \ + HookWrapper7(void, glGetActiveUniform, GLuint, program, GLuint, index, GLsizei, bufSize, GLsizei *, length, GLint *, size, GLenum *, type, GLchar *, name); \ + HookWrapper4(void, glGetActiveUniformBlockiv, GLuint, program, GLuint, uniformBlockIndex, GLenum, pname, GLint *, params); \ + HookWrapper5(void, glGetActiveUniformsiv, GLuint, program, GLsizei, uniformCount, const GLuint *, uniformIndices, GLenum, pname, GLint *, params); \ + HookWrapper7(void, glGetActiveAttrib, GLuint, program, GLuint, index, GLsizei, bufSize, GLsizei *, length, GLint *, size, GLenum *, type, GLchar *, name); \ + HookWrapper3(void, glGetUniformfv, GLuint, program, GLint, location, GLfloat *, params); \ + HookWrapper3(void, glGetUniformiv, GLuint, program, GLint, location, GLint *, params); \ + HookWrapper3(void, glGetUniformuiv, GLuint, program, GLint, location, GLuint *, params); \ + HookWrapper3(void, glGetUniformdv, GLuint, program, GLint, location, GLdouble *, params); \ + HookWrapper4(void, glGetnUniformdv, GLuint, program, GLint, location, GLsizei, bufSize, GLdouble *, params); \ + HookWrapper4(void, glGetnUniformfv, GLuint, program, GLint, location, GLsizei, bufSize, GLfloat *, params); \ + HookWrapper4(void, glGetnUniformiv, GLuint, program, GLint, location, GLsizei, bufSize, GLint *, params); \ + HookWrapper4(void, glGetnUniformuiv, GLuint, program, GLint, location, GLsizei, bufSize, GLuint *, params); \ + HookWrapper3(void, glGetVertexArrayiv, GLuint, vaobj, GLenum, pname, GLint *, param); \ + HookWrapper4(void, glGetVertexArrayIndexed64iv, GLuint, vaobj, GLuint, index, GLenum, pname, GLint64 *, param); \ + HookWrapper4(void, glGetVertexArrayIndexediv, GLuint, vaobj, GLuint, index, GLenum, pname, GLint *, param); \ + HookWrapper3(void, glGetVertexAttribIiv, GLuint, index, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetVertexAttribIuiv, GLuint, index, GLenum, pname, GLuint *, params); \ + HookWrapper3(void, glGetVertexAttribLdv, GLuint, index, GLenum, pname, GLdouble *, params); \ + HookWrapper3(void, glGetVertexAttribdv, GLuint, index, GLenum, pname, GLdouble *, params); \ + HookWrapper3(void, glGetVertexAttribfv, GLuint, index, GLenum, pname, GLfloat *, params); \ + HookWrapper3(void, glGetNamedBufferParameteri64v, GLuint, buffer, GLenum, pname, GLint64 *, params); \ + HookWrapper3(void, glGetNamedBufferParameteriv, GLuint, buffer, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetNamedBufferPointerv, GLuint, buffer, GLenum, pname, void **, params); \ + HookWrapper4(void, glGetNamedBufferSubData, GLuint, buffer, GLintptr, offset, GLsizei, size, void *, data); \ + HookWrapper4(void, glGetNamedFramebufferAttachmentParameteriv, GLuint, framebuffer, GLenum, attachment, GLenum, pname, GLint *, params); \ + HookWrapper3(void, glGetNamedFramebufferParameteriv, GLuint, framebuffer, GLenum, pname, GLint *, param); \ + HookWrapper3(void, glGetNamedRenderbufferParameteriv, GLuint, renderbuffer, GLenum, pname, GLint *, params); \ HookWrapper1(GLenum, glCheckFramebufferStatus, GLenum, target); \ HookWrapper4(void, glBlendColor, GLfloat, red, GLfloat, green, GLfloat, blue, GLfloat, alpha); \ HookWrapper3(void, glBlendFunci, GLuint, buf, GLenum, src, GLenum, dst); \ @@ -580,8 +777,6 @@ HookWrapper4(void, glShaderSource, GLuint, shader, GLsizei, count, const GLchar *const*, string, const GLint *, length); \ HookWrapper1(void, glCompileShader, GLuint, shader); \ HookWrapper3(GLuint, glCreateShaderProgramv, GLenum, type, GLsizei, count, const GLchar *const*, strings); \ - HookWrapper3(void, glGetShaderiv, GLuint, shader, GLenum, pname, GLint *, params); \ - HookWrapper4(void, glGetShaderInfoLog, GLuint, shader, GLsizei, bufSize, GLsizei *, length, GLchar *, infoLog); \ HookWrapper0(GLuint, glCreateProgram); \ HookWrapper1(void, glDeleteProgram, GLuint, program); \ HookWrapper2(void, glAttachShader, GLuint, program, GLuint, shader); \ @@ -592,28 +787,30 @@ HookWrapper1(void, glUseProgram, GLuint, program); \ HookWrapper3(void, glUseProgramStages, GLuint, pipeline, GLbitfield, stages, GLuint, program); \ HookWrapper1(void, glValidateProgram, GLuint, program); \ - HookWrapper3(void, glGetProgramiv, GLuint, program, GLenum, pname, GLint *, params); \ - HookWrapper4(void, glGetProgramInfoLog, GLuint, program, GLsizei, bufSize, GLsizei *, length, GLchar *, infoLog); \ - HookWrapper4(void, glGetProgramInterfaceiv, GLuint, program, GLenum, programInterface, GLenum, pname, GLint *, params); \ - HookWrapper3(GLuint, glGetProgramResourceIndex, GLuint, program, GLenum, programInterface, const GLchar *, name); \ - HookWrapper8(void, glGetProgramResourceiv, GLuint, program, GLenum, programInterface, GLuint, index, GLsizei, propCount, const GLenum *, props, GLsizei, bufSize, GLsizei *, length, GLint *, params); \ - HookWrapper6(void, glGetProgramResourceName, GLuint, program, GLenum, programInterface, GLuint, index, GLsizei, bufSize, GLsizei *, length, GLchar *, name); \ HookWrapper2(void, glGenProgramPipelines, GLsizei, n, GLuint *, pipelines); \ HookWrapper1(void, glBindProgramPipeline, GLuint, pipeline); \ HookWrapper2(void, glDeleteProgramPipelines, GLsizei, n, const GLuint *, pipelines); \ - HookWrapper3(void, glGetProgramPipelineiv, GLuint, pipeline, GLenum, pname, GLint *, params); \ - HookWrapper4(void, glGetProgramPipelineInfoLog, GLuint, pipeline, GLsizei, bufSize, GLsizei *, length, GLchar *, infoLog); \ HookWrapper1(void, glValidateProgramPipeline, GLuint, pipeline); \ HookWrapper2(void, glDebugMessageCallback, GLDEBUGPROC, callback, const void *, userParam); \ HookWrapper6(void, glDebugMessageControl, GLenum, source, GLenum, type, GLenum, severity, GLsizei, count, const GLuint *, ids, GLboolean, enabled); \ HookWrapper6(void, glDebugMessageInsert, GLenum, source, GLenum, type, GLuint, id, GLenum, severity, GLsizei, length, const GLchar *, buf); \ HookWrapper4(void, glPushDebugGroup, GLenum, source, GLuint, id, GLsizei, length, const GLchar *, message); \ HookWrapper0(void, glPopDebugGroup); \ - HookWrapper5(void, glGetObjectLabel, GLenum, identifier, GLuint, name, GLsizei, bufSize, GLsizei *, length, GLchar *, label); \ HookWrapper4(void, glObjectLabel, GLenum, identifier, GLuint, name, GLsizei, length, const GLchar *, label); \ HookWrapper2(void, glEnablei, GLenum, target, GLuint, index); \ HookWrapper2(void, glDisablei, GLenum, target, GLuint, index); \ HookWrapper2(GLboolean, glIsEnabledi, GLenum, target, GLuint, index); \ + HookWrapper1(GLboolean, glIsBuffer, GLuint, buffer); \ + HookWrapper1(GLboolean, glIsFramebuffer, GLuint, framebuffer); \ + HookWrapper1(GLboolean, glIsProgram, GLuint, program); \ + HookWrapper1(GLboolean, glIsProgramPipeline, GLuint, pipeline); \ + HookWrapper1(GLboolean, glIsQuery, GLuint, id); \ + HookWrapper1(GLboolean, glIsRenderbuffer, GLuint, renderbuffer); \ + HookWrapper1(GLboolean, glIsSampler, GLuint, sampler); \ + HookWrapper1(GLboolean, glIsShader, GLuint, shader); \ + HookWrapper1(GLboolean, glIsSync, GLsync, sync); \ + HookWrapper1(GLboolean, glIsTransformFeedback, GLuint, id); \ + HookWrapper1(GLboolean, glIsVertexArray, GLuint, array); \ HookWrapper2(void, glGenBuffers, GLsizei, n, GLuint *, buffers); \ HookWrapper2(void, glBindBuffer, GLenum, target, GLuint, buffer); \ HookWrapper2(void, glDrawBuffers, GLsizei, n, const GLenum *, bufs); \ @@ -623,7 +820,6 @@ HookWrapper5(void, glFramebufferTexture2D, GLenum, target, GLenum, attachment, GLenum, textarget, GLuint, texture, GLint, level); \ HookWrapper5(void, glFramebufferTextureLayer, GLenum, target, GLenum, attachment, GLuint, texture, GLint, level, GLint, layer); \ HookWrapper2(void, glDeleteFramebuffers, GLsizei, n, const GLuint *, framebuffers); \ - HookWrapper4(void, glGetFramebufferAttachmentParameteriv, GLenum, target, GLenum, attachment, GLenum, pname, GLint *, params); \ HookWrapper2(GLsync, glFenceSync, GLenum, condition, GLbitfield, flags); \ HookWrapper3(GLenum, glClientWaitSync, GLsync, sync, GLbitfield, flags, GLuint64, timeout); \ HookWrapper3(void, glWaitSync, GLsync, sync, GLbitfield, flags, GLuint64, timeout); \ @@ -631,8 +827,6 @@ HookWrapper2(void, glGenQueries, GLsizei, n, GLuint *, ids); \ HookWrapper2(void, glBeginQuery, GLenum, target, GLuint, id); \ HookWrapper1(void, glEndQuery, GLenum, target); \ - HookWrapper3(void, glGetQueryObjectui64v, GLuint, id, GLenum, pname, GLuint64 *, params); \ - HookWrapper3(void, glGetQueryObjectuiv, GLuint, id, GLenum, pname, GLuint *, params); \ HookWrapper2(void, glDeleteQueries, GLsizei, n, const GLuint *, ids); \ HookWrapper4(void, glBufferData, GLenum, target, GLsizeiptr, size, const void *, data, GLenum, usage); \ HookWrapper4(void, glBufferStorage, GLenum, target, GLsizeiptr, size, const void *, data, GLbitfield, flags); \ @@ -644,7 +838,6 @@ HookWrapper4(void *, glMapBufferRange, GLenum, target, GLintptr, offset, GLsizeiptr, length, GLbitfield, access); \ HookWrapper1(GLboolean, glUnmapBuffer, GLenum, target); \ HookWrapper2(void, glDeleteBuffers, GLsizei, n, const GLuint *, buffers); \ - HookWrapper4(void, glGetBufferSubData, GLenum, target, GLintptr, offset, GLsizeiptr, size, void *, data); \ HookWrapper2(void, glGenVertexArrays, GLsizei, n, GLuint *, arrays); \ HookWrapper1(void, glBindVertexArray, GLuint, array); \ HookWrapper2(void, glDeleteVertexArrays, GLsizei, n, const GLuint *, arrays); \ @@ -656,11 +849,8 @@ HookWrapper3(void, glBindAttribLocation, GLuint, program, GLuint, index, const GLchar *, name); \ HookWrapper1(void, glEnableVertexAttribArray, GLuint, index); \ HookWrapper1(void, glDisableVertexAttribArray, GLuint, index); \ - HookWrapper3(void, glGetVertexAttribiv, GLuint, index, GLenum, pname, GLint *, params); \ - HookWrapper3(void, glGetVertexAttribPointerv, GLuint, index, GLenum, pname, void **, pointer); \ HookWrapper4(void, glBindVertexBuffer, GLuint, bindingindex, GLuint, buffer, GLintptr, offset, GLsizei, stride); \ HookWrapper2(void, glVertexBindingDivisor, GLuint, bindingindex, GLuint, divisor); \ - HookWrapper3(void, glGetCompressedTexImage, GLenum, target, GLint, level, void *, img); \ HookWrapper7(void, glBindImageTexture, GLuint, unit, GLuint, texture, GLint, level, GLboolean, layered, GLint, layer, GLenum, access, GLenum, format); \ HookWrapper2(void, glGenSamplers, GLsizei, count, GLuint *, samplers); \ HookWrapper2(void, glBindSampler, GLuint, unit, GLuint, sampler); \ @@ -686,18 +876,6 @@ HookWrapper5(void, glViewportIndexedf, GLuint, index, GLfloat, x, GLfloat, y, GLfloat, w, GLfloat, h); \ HookWrapper2(void, glViewportIndexedfv, GLuint, index, const GLfloat *, v); \ HookWrapper3(void, glViewportArrayv, GLuint, first, GLsizei, count, const GLfloat *, v); \ - HookWrapper2(GLint, glGetUniformLocation, GLuint, program, const GLchar *, name); \ - HookWrapper4(void, glGetUniformIndices, GLuint, program, GLsizei, uniformCount, const GLchar *const*, uniformNames, GLuint *, uniformIndices); \ - HookWrapper2(GLuint, glGetUniformBlockIndex, GLuint, program, const GLchar *, uniformBlockName); \ - HookWrapper2(GLint, glGetAttribLocation, GLuint, program, const GLchar *, name); \ - HookWrapper7(void, glGetActiveUniform, GLuint, program, GLuint, index, GLsizei, bufSize, GLsizei *, length, GLint *, size, GLenum *, type, GLchar *, name); \ - HookWrapper4(void, glGetActiveUniformBlockiv, GLuint, program, GLuint, uniformBlockIndex, GLenum, pname, GLint *, params); \ - HookWrapper5(void, glGetActiveUniformsiv, GLuint, program, GLsizei, uniformCount, const GLuint *, uniformIndices, GLenum, pname, GLint *, params); \ - HookWrapper7(void, glGetActiveAttrib, GLuint, program, GLuint, index, GLsizei, bufSize, GLsizei *, length, GLint *, size, GLenum *, type, GLchar *, name); \ - HookWrapper3(void, glGetUniformfv, GLuint, program, GLint, location, GLfloat *, params); \ - HookWrapper3(void, glGetUniformiv, GLuint, program, GLint, location, GLint *, params); \ - HookWrapper3(void, glGetUniformuiv, GLuint, program, GLint, location, GLuint *, params); \ - HookWrapper3(void, glGetUniformdv, GLuint, program, GLint, location, GLdouble *, params); \ HookWrapper3(void, glUniformBlockBinding, GLuint, program, GLuint, uniformBlockIndex, GLuint, uniformBlockBinding); \ HookWrapper2(void, glUniform1f, GLint, location, GLfloat, v0); \ HookWrapper2(void, glUniform1i, GLint, location, GLint, v0); \ diff --git a/renderdoc/driver/gl/wrappers/gl_debug_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_debug_funcs.cpp index 7139ee310..524507c06 100644 --- a/renderdoc/driver/gl/wrappers/gl_debug_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_debug_funcs.cpp @@ -27,11 +27,6 @@ #include "../gl_driver.h" -void WrappedOpenGL::glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label) -{ - m_Real.glGetObjectLabel(identifier, name, bufSize, length, label); -} - bool WrappedOpenGL::Serialise_glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label) { ResourceId liveid; diff --git a/renderdoc/driver/gl/wrappers/gl_get_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_get_funcs.cpp index 29f1f70ae..1db501e4d 100644 --- a/renderdoc/driver/gl/wrappers/gl_get_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_get_funcs.cpp @@ -32,6 +32,17 @@ GLenum WrappedOpenGL::glGetError() return m_Real.glGetError(); } +GLenum WrappedOpenGL::glGetGraphicsResetStatus() +{ + return m_Real.glGetGraphicsResetStatus(); +} + +GLuint WrappedOpenGL::glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, + GLenum *severities, GLsizei *lengths, GLchar *messageLog) +{ + return m_Real.glGetDebugMessageLog(count, bufSize, sources, types, ids, severities, lengths, messageLog); +} + void WrappedOpenGL::glFlush() { m_Real.glFlush(); @@ -47,9 +58,69 @@ GLboolean WrappedOpenGL::glIsEnabled(GLenum cap) return m_Real.glIsEnabled(cap); } -GLboolean WrappedOpenGL::glIsEnabledi(GLenum cap, GLuint index) +GLboolean WrappedOpenGL::glIsTexture(GLuint texture) { - return m_Real.glIsEnabledi(cap, index); + return m_Real.glIsTexture(texture); +} + +GLboolean WrappedOpenGL::glIsEnabledi(GLenum target, GLuint index) +{ + return m_Real.glIsEnabledi(target, index); +} + +GLboolean WrappedOpenGL::glIsBuffer(GLuint buffer) +{ + return m_Real.glIsBuffer(buffer); +} + +GLboolean WrappedOpenGL::glIsFramebuffer(GLuint framebuffer) +{ + return m_Real.glIsFramebuffer(framebuffer); +} + +GLboolean WrappedOpenGL::glIsProgram(GLuint program) +{ + return m_Real.glIsProgram(program); +} + +GLboolean WrappedOpenGL::glIsProgramPipeline(GLuint pipeline) +{ + return m_Real.glIsProgramPipeline(pipeline); +} + +GLboolean WrappedOpenGL::glIsQuery(GLuint id) +{ + return m_Real.glIsQuery(id); +} + +GLboolean WrappedOpenGL::glIsRenderbuffer(GLuint renderbuffer) +{ + return m_Real.glIsRenderbuffer(renderbuffer); +} + +GLboolean WrappedOpenGL::glIsSampler(GLuint sampler) +{ + return m_Real.glIsSampler(sampler); +} + +GLboolean WrappedOpenGL::glIsShader(GLuint shader) +{ + return m_Real.glIsShader(shader); +} + +GLboolean WrappedOpenGL::glIsSync(GLsync sync) +{ + return m_Real.glIsSync(sync); +} + +GLboolean WrappedOpenGL::glIsTransformFeedback(GLuint id) +{ + return m_Real.glIsTransformFeedback(id); +} + +GLboolean WrappedOpenGL::glIsVertexArray(GLuint array) +{ + return m_Real.glIsVertexArray(array); } void WrappedOpenGL::glGetFloatv(GLenum pname, GLfloat *params) @@ -62,6 +133,11 @@ void WrappedOpenGL::glGetDoublev(GLenum pname, GLdouble *params) m_Real.glGetDoublev(pname, params); } +void WrappedOpenGL::glGetPointerv(GLenum pname, void **params) +{ + m_Real.glGetPointerv(pname, params); +} + void WrappedOpenGL::glGetIntegerv(GLenum pname, GLint *params) { if(pname == GL_NUM_EXTENSIONS) @@ -79,6 +155,11 @@ void WrappedOpenGL::glGetBooleanv(GLenum pname, GLboolean *data) m_Real.glGetBooleanv(pname, data); } +void WrappedOpenGL::glGetInteger64v(GLenum pname, GLint64 *data) +{ + m_Real.glGetInteger64v(pname, data); +} + void WrappedOpenGL::glGetBooleani_v(GLenum pname, GLuint index, GLboolean *data) { m_Real.glGetBooleani_v(pname, index, data); @@ -129,6 +210,46 @@ void WrappedOpenGL::glGetTexParameteriv(GLenum target, GLenum pname, GLint *para m_Real.glGetTexParameteriv(target, pname, params); } +void WrappedOpenGL::glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat *params) +{ + m_Real.glGetTextureLevelParameterfv(texture, level, pname, params); +} + +void WrappedOpenGL::glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint *params) +{ + m_Real.glGetTextureLevelParameteriv(texture, level, pname, params); +} + +void WrappedOpenGL::glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params) +{ + m_Real.glGetTextureParameterIiv(texture, pname, params); +} + +void WrappedOpenGL::glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params) +{ + m_Real.glGetTextureParameterIuiv(texture, pname, params); +} + +void WrappedOpenGL::glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params) +{ + m_Real.glGetTextureParameterfv(texture, pname, params); +} + +void WrappedOpenGL::glGetTextureParameteriv(GLuint texture, GLenum pname, GLint *params) +{ + m_Real.glGetTextureParameteriv(texture, pname, params); +} + +void WrappedOpenGL::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params) +{ + m_Real.glGetTexParameterIiv(target, pname, params); +} + +void WrappedOpenGL::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params) +{ + m_Real.glGetTexParameterIuiv(target, pname, params); +} + void WrappedOpenGL::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels) { m_Real.glGetTexImage(target, level, format, type, pixels); @@ -144,6 +265,36 @@ void WrappedOpenGL::glGetCompressedTexImage(GLenum target, GLint level, void *im m_Real.glGetCompressedTexImage(target, level, img); } +void WrappedOpenGL::glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize, void *pixels) +{ + m_Real.glGetnCompressedTexImage(target, lod, bufSize, pixels); +} + +void WrappedOpenGL::glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize, void *pixels) +{ + m_Real.glGetCompressedTextureImage(texture, level, bufSize, pixels); +} + +void WrappedOpenGL::glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels) +{ + m_Real.glGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels); +} + +void WrappedOpenGL::glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels) +{ + m_Real.glGetnTexImage(target, level, format, type, bufSize, pixels); +} + +void WrappedOpenGL::glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels) +{ + m_Real.glGetTextureImage(texture, level, format, type, bufSize, pixels); +} + +void WrappedOpenGL::glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels) +{ + m_Real.glGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels); +} + void WrappedOpenGL::glGetCompressedTextureImageEXT(GLuint texture, GLenum target, GLint level, void *img) { m_Real.glGetCompressedTextureImageEXT(texture, target, level, img); @@ -159,14 +310,39 @@ void WrappedOpenGL::glGetInternalformati64v(GLenum target, GLenum internalformat m_Real.glGetInternalformati64v(target, internalformat, pname, bufSize, params); } +void WrappedOpenGL::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params) +{ + m_Real.glGetSamplerParameterIiv(sampler, pname, params); +} + +void WrappedOpenGL::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params) +{ + m_Real.glGetSamplerParameterIuiv(sampler, pname, params); +} + +void WrappedOpenGL::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params) +{ + m_Real.glGetSamplerParameterfv(sampler, pname, params); +} + +void WrappedOpenGL::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params) +{ + m_Real.glGetSamplerParameteriv(sampler, pname, params); +} + +void WrappedOpenGL::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params) +{ + m_Real.glGetBufferParameteri64v(target, pname, params); +} + void WrappedOpenGL::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params) { m_Real.glGetBufferParameteriv(target, pname, params); } -void WrappedOpenGL::glGetNamedBufferParameterivEXT(GLuint buffer, GLenum pname, GLint *params) +void WrappedOpenGL::glGetBufferPointerv(GLenum target, GLenum pname, void **params) { - m_Real.glGetNamedBufferParameterivEXT(buffer, pname, params); + m_Real.glGetBufferPointerv(target, pname, params); } void WrappedOpenGL::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data) @@ -174,11 +350,6 @@ void WrappedOpenGL::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeipt m_Real.glGetBufferSubData(target, offset, size, data); } -void WrappedOpenGL::glGetNamedBufferSubDataEXT(GLuint buffer, GLintptr offset, GLsizeiptr size, void *data) -{ - m_Real.glGetNamedBufferSubDataEXT(buffer, offset, size, data); -} - void WrappedOpenGL::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params) { m_Real.glGetQueryObjectuiv(id, pname, params); @@ -189,6 +360,31 @@ void WrappedOpenGL::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *par m_Real.glGetQueryObjectui64v(id, pname, params); } +void WrappedOpenGL::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params) +{ + m_Real.glGetQueryIndexediv(target, index, pname, params); +} + +void WrappedOpenGL::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params) +{ + m_Real.glGetQueryObjecti64v(id, pname, params); +} + +void WrappedOpenGL::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params) +{ + m_Real.glGetQueryObjectiv(id, pname, params); +} + +void WrappedOpenGL::glGetQueryiv(GLenum target, GLenum pname, GLint *params) +{ + m_Real.glGetQueryiv(target, pname, params); +} + +void WrappedOpenGL::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values) +{ + m_Real.glGetSynciv(sync, pname, bufSize, length, values); +} + const GLubyte *WrappedOpenGL::glGetString(GLenum name) { if(name == GL_EXTENSIONS) @@ -215,11 +411,6 @@ void WrappedOpenGL::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum m_Real.glGetFramebufferAttachmentParameteriv(target, attachment, pname, params); } -void WrappedOpenGL::glGetNamedFramebufferAttachmentParameterivEXT(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params) -{ - m_Real.glGetNamedFramebufferAttachmentParameterivEXT(framebuffer, attachment, pname, params); -} - GLenum WrappedOpenGL::glCheckFramebufferStatus(GLenum target) { return m_Real.glCheckFramebufferStatus(target); @@ -240,6 +431,31 @@ void WrappedOpenGL::glGetVertexAttribPointerv(GLuint index, GLenum pname, void * m_Real.glGetVertexAttribPointerv(index, pname, pointer); } +GLint WrappedOpenGL::glGetFragDataIndex(GLuint program, const GLchar *name) +{ + return m_Real.glGetFragDataIndex(program, name); +} + +GLint WrappedOpenGL::glGetFragDataLocation(GLuint program, const GLchar *name) +{ + return m_Real.glGetFragDataLocation(program, name); +} + +void WrappedOpenGL::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val) +{ + m_Real.glGetMultisamplefv(pname, index, val); +} + +void WrappedOpenGL::glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label) +{ + m_Real.glGetObjectLabel(identifier, name, bufSize, length, label); +} + +void WrappedOpenGL::glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label) +{ + m_Real.glGetObjectPtrLabel(ptr, bufSize, length, label); +} + void WrappedOpenGL::glGetShaderiv(GLuint shader, GLenum pname, GLint *params) { m_Real.glGetShaderiv(shader, pname, params); @@ -250,11 +466,36 @@ void WrappedOpenGL::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei * m_Real.glGetShaderInfoLog(shader, bufSize, length, infoLog); } +void WrappedOpenGL::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision) +{ + m_Real.glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision); +} + +void WrappedOpenGL::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source) +{ + m_Real.glGetShaderSource(shader, bufSize, length, source); +} + +void WrappedOpenGL::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders) +{ + m_Real.glGetAttachedShaders(program, maxCount, count, shaders); +} + void WrappedOpenGL::glGetProgramiv(GLuint program, GLenum pname, GLint *params) { m_Real.glGetProgramiv(program, pname, params); } +void WrappedOpenGL::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values) +{ + m_Real.glGetProgramStageiv(program, shadertype, pname, values); +} + +void WrappedOpenGL::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary) +{ + m_Real.glGetProgramBinary(program, bufSize, length, binaryFormat, binary); +} + void WrappedOpenGL::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog) { m_Real.glGetProgramInfoLog(program, bufSize, length, infoLog); @@ -290,6 +531,16 @@ void WrappedOpenGL::glGetProgramResourceName(GLuint program, GLenum programInter m_Real.glGetProgramResourceName(program, programInterface, index, bufSize, length, name); } +GLint WrappedOpenGL::glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name) +{ + return m_Real.glGetProgramResourceLocation(program, programInterface, name); +} + +GLint WrappedOpenGL::glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name) +{ + return m_Real.glGetProgramResourceLocationIndex(program, programInterface, name); +} + GLint WrappedOpenGL::glGetUniformLocation(GLuint program, const GLchar *name) { return m_Real.glGetUniformLocation(program, name); @@ -310,6 +561,36 @@ GLint WrappedOpenGL::glGetAttribLocation(GLuint program, const GLchar *name) return m_Real.glGetAttribLocation(program, name); } +GLuint WrappedOpenGL::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name) +{ + return m_Real.glGetSubroutineIndex(program, shadertype, name); +} + +GLint WrappedOpenGL::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name) +{ + return m_Real.glGetSubroutineUniformLocation(program, shadertype, name); +} + +void WrappedOpenGL::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params) +{ + m_Real.glGetUniformSubroutineuiv(shadertype, location, params); +} + +void WrappedOpenGL::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name) +{ + m_Real.glGetActiveSubroutineName(program, shadertype, index, bufsize, length, name); +} + +void WrappedOpenGL::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name) +{ + m_Real.glGetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name); +} + +void WrappedOpenGL::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values) +{ + m_Real.glGetActiveSubroutineUniformiv(program, shadertype, index, pname, values); +} + void WrappedOpenGL::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name) { m_Real.glGetActiveUniform(program, index, bufSize, length, size, type, name); @@ -330,6 +611,11 @@ void WrappedOpenGL::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufS m_Real.glGetActiveAttrib(program, index, bufSize, length, size, type, name); } +void WrappedOpenGL::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params) +{ + m_Real.glGetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params); +} + void WrappedOpenGL::glGetUniformfv(GLuint program, GLint location, GLfloat *params) { m_Real.glGetUniformfv(program, location, params); @@ -350,7 +636,148 @@ void WrappedOpenGL::glGetUniformdv(GLuint program, GLint location, GLdouble *par m_Real.glGetUniformdv(program, location, params); } +void WrappedOpenGL::glGetnUniformdv(GLuint program, GLint location, GLsizei bufSize, GLdouble *params) +{ + m_Real.glGetnUniformdv(program, location, bufSize, params); +} + +void WrappedOpenGL::glGetnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat *params) +{ + m_Real.glGetnUniformfv(program, location, bufSize, params); +} + +void WrappedOpenGL::glGetnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint *params) +{ + m_Real.glGetnUniformiv(program, location, bufSize, params); +} + +void WrappedOpenGL::glGetnUniformuiv(GLuint program, GLint location, GLsizei bufSize, GLuint *params) +{ + m_Real.glGetnUniformuiv(program, location, bufSize, params); +} + +void WrappedOpenGL::glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param) +{ + m_Real.glGetVertexArrayiv(vaobj, pname, param); +} + +void WrappedOpenGL::glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 *param) +{ + m_Real.glGetVertexArrayIndexed64iv(vaobj, index, pname, param); +} + +void WrappedOpenGL::glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint *param) +{ + m_Real.glGetVertexArrayIndexediv(vaobj, index, pname, param); +} + +void WrappedOpenGL::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params) +{ + m_Real.glGetVertexAttribIiv(index, pname, params); +} + +void WrappedOpenGL::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params) +{ + m_Real.glGetVertexAttribIuiv(index, pname, params); +} + +void WrappedOpenGL::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params) +{ + m_Real.glGetVertexAttribLdv(index, pname, params); +} + +void WrappedOpenGL::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params) +{ + m_Real.glGetVertexAttribdv(index, pname, params); +} + +void WrappedOpenGL::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params) +{ + m_Real.glGetVertexAttribfv(index, pname, params); +} + + void WrappedOpenGL::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels) { m_Real.glReadPixels(x, y, width, height, format, type, pixels); } + +void WrappedOpenGL::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) +{ + m_Real.glGetTransformFeedbackVarying(program, index, bufSize, length, size, type, name); +} + +void WrappedOpenGL::glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 *param) +{ + m_Real.glGetTransformFeedbacki64_v(xfb, pname, index, param); +} + +void WrappedOpenGL::glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint *param) +{ + m_Real.glGetTransformFeedbacki_v(xfb, pname, index, param); +} + +void WrappedOpenGL::glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param) +{ + m_Real.glGetTransformFeedbackiv(xfb, pname, param); +} + +void WrappedOpenGL::glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *param) +{ + m_Real.glGetFramebufferParameteriv(target, pname, param); +} + +void WrappedOpenGL::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *param) +{ + m_Real.glGetRenderbufferParameteriv(target, pname, param); +} + +void WrappedOpenGL::glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 *params) +{ + m_Real.glGetNamedBufferParameteri64v(buffer, pname, params); +} + +void WrappedOpenGL::glGetNamedBufferPointerv(GLuint buffer, GLenum pname, void **params) +{ + m_Real.glGetNamedBufferPointerv(buffer, pname, params); +} + +void WrappedOpenGL::glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint *param) +{ + m_Real.glGetNamedFramebufferParameteriv(framebuffer, pname, param); +} + +void WrappedOpenGL::glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params) +{ + m_Real.glGetNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, params); +} + +void WrappedOpenGL::glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint *params) +{ + m_Real.glGetNamedRenderbufferParameteriv(renderbuffer, pname, params); +} + +void WrappedOpenGL::glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint *params) +{ + m_Real.glGetNamedBufferParameterivEXT(buffer, pname, params); +} + +void WrappedOpenGL::glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, void *data) +{ + m_Real.glGetNamedBufferSubDataEXT(buffer, offset, size, data); +} + +void WrappedOpenGL::glGetNamedBufferParameterivEXT(GLuint buffer, GLenum pname, GLint *params) +{ + m_Real.glGetNamedBufferParameterivEXT(buffer, pname, params); +} + +void WrappedOpenGL::glGetNamedBufferSubDataEXT(GLuint buffer, GLintptr offset, GLsizeiptr size, void *data) +{ + m_Real.glGetNamedBufferSubDataEXT(buffer, offset, size, data); +} + +void WrappedOpenGL::glGetNamedFramebufferAttachmentParameterivEXT(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params) +{ + m_Real.glGetNamedFramebufferAttachmentParameterivEXT(framebuffer, attachment, pname, params); +}