mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-12 13:00:32 +00:00
Add compressed texture manipulation functions
This commit is contained in:
@@ -89,6 +89,9 @@ enum GLChunkType
|
||||
TEXSUBIMAGE1D,
|
||||
TEXSUBIMAGE2D,
|
||||
TEXSUBIMAGE3D,
|
||||
TEXSUBIMAGE1D_COMPRESSED,
|
||||
TEXSUBIMAGE2D_COMPRESSED,
|
||||
TEXSUBIMAGE3D_COMPRESSED,
|
||||
PIXELSTORE,
|
||||
TEXPARAMETERF,
|
||||
TEXPARAMETERFV,
|
||||
|
||||
@@ -420,6 +420,126 @@ void WrappedOpenGL::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, G
|
||||
}
|
||||
}
|
||||
|
||||
bool WrappedOpenGL::Serialise_glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *pixels)
|
||||
{
|
||||
SERIALISE_ELEMENT(GLenum, Target, target);
|
||||
SERIALISE_ELEMENT(int32_t, Level, level);
|
||||
SERIALISE_ELEMENT(int32_t, xoff, xoffset);
|
||||
SERIALISE_ELEMENT(uint32_t, Width, width);
|
||||
SERIALISE_ELEMENT(GLenum, fmt, format);
|
||||
SERIALISE_ELEMENT(uint32_t, byteSize, imageSize);
|
||||
SERIALISE_ELEMENT(ResourceId, id, m_TextureRecord[m_TextureUnit]->GetResourceID());
|
||||
|
||||
SERIALISE_ELEMENT_BUF(byte *, buf, pixels, byteSize);
|
||||
|
||||
if(m_State == READING)
|
||||
{
|
||||
m_Real.glBindTexture(Target, GetResourceManager()->GetLiveResource(id).name);
|
||||
m_Real.glCompressedTexSubImage1D(Target, Level, xoff, Width, fmt, byteSize, buf);
|
||||
|
||||
delete[] buf;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void WrappedOpenGL::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *pixels)
|
||||
{
|
||||
m_Real.glCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, pixels);
|
||||
|
||||
if(m_State >= WRITING)
|
||||
{
|
||||
RDCASSERT(m_TextureRecord[m_TextureUnit]);
|
||||
|
||||
SCOPED_SERIALISE_CONTEXT(TEXSUBIMAGE1D_COMPRESSED);
|
||||
Serialise_glCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, pixels);
|
||||
|
||||
m_TextureRecord[m_TextureUnit]->AddChunk(scope.Get());
|
||||
}
|
||||
}
|
||||
|
||||
bool WrappedOpenGL::Serialise_glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *pixels)
|
||||
{
|
||||
SERIALISE_ELEMENT(GLenum, Target, target);
|
||||
SERIALISE_ELEMENT(int32_t, Level, level);
|
||||
SERIALISE_ELEMENT(int32_t, xoff, xoffset);
|
||||
SERIALISE_ELEMENT(int32_t, yoff, yoffset);
|
||||
SERIALISE_ELEMENT(uint32_t, Width, width);
|
||||
SERIALISE_ELEMENT(uint32_t, Height, height);
|
||||
SERIALISE_ELEMENT(GLenum, fmt, format);
|
||||
SERIALISE_ELEMENT(uint32_t, byteSize, imageSize);
|
||||
SERIALISE_ELEMENT(ResourceId, id, m_TextureRecord[m_TextureUnit]->GetResourceID());
|
||||
|
||||
SERIALISE_ELEMENT_BUF(byte *, buf, pixels, byteSize);
|
||||
|
||||
if(m_State == READING)
|
||||
{
|
||||
m_Real.glBindTexture(Target, GetResourceManager()->GetLiveResource(id).name);
|
||||
m_Real.glCompressedTexSubImage2D(Target, Level, xoff, yoff, Width, Height, fmt, byteSize, buf);
|
||||
|
||||
delete[] buf;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void WrappedOpenGL::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *pixels)
|
||||
{
|
||||
m_Real.glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, pixels);
|
||||
|
||||
if(m_State >= WRITING)
|
||||
{
|
||||
RDCASSERT(m_TextureRecord[m_TextureUnit]);
|
||||
|
||||
SCOPED_SERIALISE_CONTEXT(TEXSUBIMAGE2D_COMPRESSED);
|
||||
Serialise_glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, pixels);
|
||||
|
||||
m_TextureRecord[m_TextureUnit]->AddChunk(scope.Get());
|
||||
}
|
||||
}
|
||||
|
||||
bool WrappedOpenGL::Serialise_glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *pixels)
|
||||
{
|
||||
SERIALISE_ELEMENT(GLenum, Target, target);
|
||||
SERIALISE_ELEMENT(int32_t, Level, level);
|
||||
SERIALISE_ELEMENT(int32_t, xoff, xoffset);
|
||||
SERIALISE_ELEMENT(int32_t, yoff, yoffset);
|
||||
SERIALISE_ELEMENT(int32_t, zoff, zoffset);
|
||||
SERIALISE_ELEMENT(uint32_t, Width, width);
|
||||
SERIALISE_ELEMENT(uint32_t, Height, height);
|
||||
SERIALISE_ELEMENT(uint32_t, Depth, depth);
|
||||
SERIALISE_ELEMENT(GLenum, fmt, format);
|
||||
SERIALISE_ELEMENT(uint32_t, byteSize, imageSize);
|
||||
SERIALISE_ELEMENT(ResourceId, id, m_TextureRecord[m_TextureUnit]->GetResourceID());
|
||||
|
||||
SERIALISE_ELEMENT_BUF(byte *, buf, pixels, byteSize);
|
||||
|
||||
if(m_State == READING)
|
||||
{
|
||||
m_Real.glBindTexture(Target, GetResourceManager()->GetLiveResource(id).name);
|
||||
m_Real.glCompressedTexSubImage3D(Target, Level, xoff, yoff, zoff, Width, Height, Depth, fmt, byteSize, buf);
|
||||
|
||||
delete[] buf;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void WrappedOpenGL::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *pixels)
|
||||
{
|
||||
m_Real.glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, pixels);
|
||||
|
||||
if(m_State >= WRITING)
|
||||
{
|
||||
RDCASSERT(m_TextureRecord[m_TextureUnit]);
|
||||
|
||||
SCOPED_SERIALISE_CONTEXT(TEXSUBIMAGE3D_COMPRESSED);
|
||||
Serialise_glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, pixels);
|
||||
|
||||
m_TextureRecord[m_TextureUnit]->AddChunk(scope.Get());
|
||||
}
|
||||
}
|
||||
|
||||
bool WrappedOpenGL::Serialise_glGenerateMipmap(GLenum target)
|
||||
{
|
||||
SERIALISE_ELEMENT(GLenum, Target, target);
|
||||
@@ -918,6 +1038,27 @@ void WrappedOpenGL::glTexImage3D(GLenum target, GLint level, GLint internalforma
|
||||
RDCUNIMPLEMENTED();
|
||||
}
|
||||
|
||||
void WrappedOpenGL::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *pixels)
|
||||
{
|
||||
m_Real.glCompressedTexImage1D(target, level, internalformat, width, border, imageSize, pixels);
|
||||
|
||||
RDCUNIMPLEMENTED();
|
||||
}
|
||||
|
||||
void WrappedOpenGL::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * pixels)
|
||||
{
|
||||
m_Real.glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, pixels);
|
||||
|
||||
RDCUNIMPLEMENTED();
|
||||
}
|
||||
|
||||
void WrappedOpenGL::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * pixels)
|
||||
{
|
||||
m_Real.glCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, pixels);
|
||||
|
||||
RDCUNIMPLEMENTED();
|
||||
}
|
||||
|
||||
bool WrappedOpenGL::Serialise_glActiveTexture(GLenum texture)
|
||||
{
|
||||
SERIALISE_ELEMENT(GLenum, Texture, texture);
|
||||
|
||||
@@ -46,6 +46,9 @@ const char *GLChunkNames[] =
|
||||
"glTexSubImage1D",
|
||||
"glTexSubImage2D",
|
||||
"glTexSubImage3D",
|
||||
"glCompressedTexSubImage1D",
|
||||
"glCompressedTexSubImage2D",
|
||||
"glCompressedTexSubImage3D",
|
||||
"glPixelStore",
|
||||
"glTexParameterf",
|
||||
"glTexParameterfv",
|
||||
@@ -1046,6 +1049,15 @@ void WrappedOpenGL::ProcessChunk(uint64_t offset, GLChunkType context)
|
||||
case TEXSUBIMAGE3D:
|
||||
Serialise_glTexSubImage3D(eGL_UNKNOWN_ENUM, 0, 0, 0, 0, 0, 0, 0, eGL_UNKNOWN_ENUM, eGL_UNKNOWN_ENUM, NULL);
|
||||
break;
|
||||
case TEXSUBIMAGE1D_COMPRESSED:
|
||||
Serialise_glCompressedTexSubImage1D(eGL_UNKNOWN_ENUM, 0, 0, 0, eGL_UNKNOWN_ENUM, 0, NULL);
|
||||
break;
|
||||
case TEXSUBIMAGE2D_COMPRESSED:
|
||||
Serialise_glCompressedTexSubImage2D(eGL_UNKNOWN_ENUM, 0, 0, 0, 0, 0, eGL_UNKNOWN_ENUM, 0, NULL);
|
||||
break;
|
||||
case TEXSUBIMAGE3D_COMPRESSED:
|
||||
Serialise_glCompressedTexSubImage3D(eGL_UNKNOWN_ENUM, 0, 0, 0, 0, 0, 0, 0, eGL_UNKNOWN_ENUM, 0, NULL);
|
||||
break;
|
||||
case PIXELSTORE:
|
||||
Serialise_glPixelStorei(eGL_UNKNOWN_ENUM, 0);
|
||||
break;
|
||||
@@ -1853,6 +1865,11 @@ void WrappedOpenGL::glGetTexImage(GLenum target, GLint level, GLenum format, GLe
|
||||
m_Real.glGetTexImage(target, level, format, type, pixels);
|
||||
}
|
||||
|
||||
void WrappedOpenGL::glGetCompressedTexImage(GLenum target, GLint level, void *img)
|
||||
{
|
||||
m_Real.glGetCompressedTexImage(target, level, img);
|
||||
}
|
||||
|
||||
void WrappedOpenGL::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
|
||||
{
|
||||
m_Real.glGetInternalformativ(target, internalformat, pname, bufSize, params);
|
||||
|
||||
@@ -328,6 +328,9 @@ class WrappedOpenGL
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *pixels));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * pixels));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * pixels));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glTexParameterf(GLenum target, GLenum pname, GLfloat param));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glTexParameteri(GLenum target, GLenum pname, GLint param));
|
||||
@@ -375,6 +378,9 @@ class WrappedOpenGL
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data));
|
||||
IMPLEMENT_FUNCTION_SERIALISED(void, glGenerateMipmap(GLenum target));
|
||||
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));
|
||||
|
||||
@@ -383,6 +389,7 @@ class WrappedOpenGL
|
||||
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));
|
||||
|
||||
@@ -76,6 +76,8 @@ struct GLHookSet
|
||||
PFNGLTEXIMAGE1DPROC glTexImage1D;
|
||||
PFNGLTEXIMAGE2DPROC glTexImage2D;
|
||||
PFNGLTEXIMAGE3DPROC glTexImage3D;
|
||||
PFNGLTEXSUBIMAGE1DPROC glTexSubImage1D;
|
||||
PFNGLTEXSUBIMAGE2DPROC glTexSubImage2D;
|
||||
PFNGLTEXPARAMETERFPROC glTexParameterf;
|
||||
PFNGLTEXPARAMETERFVPROC glTexParameterfv;
|
||||
PFNGLTEXPARAMETERIPROC glTexParameteri;
|
||||
@@ -107,9 +109,13 @@ struct GLHookSet
|
||||
PFNGLTEXSTORAGE1DPROC glTexStorage1D;
|
||||
PFNGLTEXSTORAGE2DPROC glTexStorage2D;
|
||||
PFNGLTEXSTORAGE3DPROC glTexStorage3D;
|
||||
PFNGLTEXSUBIMAGE1DPROC glTexSubImage1D;
|
||||
PFNGLTEXSUBIMAGE2DPROC glTexSubImage2D;
|
||||
PFNGLTEXSUBIMAGE3DPROC glTexSubImage3D;
|
||||
PFNGLCOMPRESSEDTEXIMAGE1DPROC glCompressedTexImage1D;
|
||||
PFNGLCOMPRESSEDTEXIMAGE2DPROC glCompressedTexImage2D;
|
||||
PFNGLCOMPRESSEDTEXIMAGE3DPROC glCompressedTexImage3D;
|
||||
PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC glCompressedTexSubImage1D;
|
||||
PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC glCompressedTexSubImage2D;
|
||||
PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC glCompressedTexSubImage3D;
|
||||
PFNGLGENERATEMIPMAPPROC glGenerateMipmap;
|
||||
PFNGLGETINTERNALFORMATIVPROC glGetInternalformativ;
|
||||
PFNGLGETINTERNALFORMATI64VPROC glGetInternalformati64v;
|
||||
@@ -204,6 +210,7 @@ struct GLHookSet
|
||||
PFNGLDISABLEVERTEXATTRIBARRAYPROC glDisableVertexAttribArray;
|
||||
PFNGLGETVERTEXATTRIBIVPROC glGetVertexAttribiv;
|
||||
PFNGLGETVERTEXATTRIBPOINTERVPROC glGetVertexAttribPointerv;
|
||||
PFNGLGETCOMPRESSEDTEXIMAGEPROC glGetCompressedTexImage;
|
||||
PFNGLGENSAMPLERSPROC glGenSamplers;
|
||||
PFNGLBINDSAMPLERPROC glBindSampler;
|
||||
PFNGLSAMPLERPARAMETERIPROC glSamplerParameteri;
|
||||
|
||||
@@ -76,6 +76,8 @@
|
||||
HookInit(glTexImage1D); \
|
||||
HookInit(glTexImage2D); \
|
||||
HookInit(glTexImage3D); \
|
||||
HookInit(glTexSubImage1D); \
|
||||
HookInit(glTexSubImage2D); \
|
||||
HookInit(glTexParameterf); \
|
||||
HookInit(glTexParameterfv); \
|
||||
HookInit(glTexParameteri); \
|
||||
@@ -118,9 +120,13 @@
|
||||
HookExtension(PFNGLTEXSTORAGE1DPROC, glTexStorage1D); \
|
||||
HookExtension(PFNGLTEXSTORAGE2DPROC, glTexStorage2D); \
|
||||
HookExtension(PFNGLTEXSTORAGE3DPROC, glTexStorage3D); \
|
||||
HookExtension(PFNGLTEXSUBIMAGE1DPROC, glTexSubImage1D); \
|
||||
HookExtension(PFNGLTEXSUBIMAGE2DPROC, glTexSubImage2D); \
|
||||
HookExtension(PFNGLTEXSUBIMAGE3DPROC, glTexSubImage3D); \
|
||||
HookExtension(PFNGLCOMPRESSEDTEXIMAGE1DPROC, glCompressedTexImage1D); \
|
||||
HookExtension(PFNGLCOMPRESSEDTEXIMAGE2DPROC, glCompressedTexImage2D); \
|
||||
HookExtension(PFNGLCOMPRESSEDTEXIMAGE3DPROC, glCompressedTexImage3D); \
|
||||
HookExtension(PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC, glCompressedTexSubImage1D); \
|
||||
HookExtension(PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC, glCompressedTexSubImage2D); \
|
||||
HookExtension(PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC, glCompressedTexSubImage3D); \
|
||||
HookExtension(PFNGLGENERATEMIPMAPPROC, glGenerateMipmap); \
|
||||
HookExtension(PFNGLGETINTERNALFORMATIVPROC, glGetInternalformativ); \
|
||||
HookExtension(PFNGLGETINTERNALFORMATI64VPROC, glGetInternalformati64v); \
|
||||
@@ -216,6 +222,7 @@
|
||||
HookExtension(PFNGLDISABLEVERTEXATTRIBARRAYPROC, glDisableVertexAttribArray); \
|
||||
HookExtension(PFNGLGETVERTEXATTRIBIVPROC, glGetVertexAttribiv); \
|
||||
HookExtension(PFNGLGETVERTEXATTRIBPOINTERVPROC, glGetVertexAttribPointerv); \
|
||||
HookExtension(PFNGLGETCOMPRESSEDTEXIMAGEPROC, glGetCompressedTexImage); \
|
||||
HookExtension(PFNGLGENSAMPLERSPROC, glGenSamplers); \
|
||||
HookExtension(PFNGLBINDSAMPLERPROC, glBindSampler); \
|
||||
HookExtension(PFNGLSAMPLERPARAMETERIPROC, glSamplerParameteri); \
|
||||
@@ -309,6 +316,8 @@
|
||||
HookExtension(PFNGLTEXIMAGE1DPROC, glTexImage1D); \
|
||||
HookExtension(PFNGLTEXIMAGE2DPROC, glTexImage2D); \
|
||||
HookExtension(PFNGLTEXIMAGE3DPROC, glTexImage3D); \
|
||||
HookExtension(PFNGLTEXSUBIMAGE1DPROC, glTexSubImage1D); \
|
||||
HookExtension(PFNGLTEXSUBIMAGE2DPROC, glTexSubImage2D); \
|
||||
HookExtension(PFNGLTEXPARAMETERFPROC, glTexParameterf); \
|
||||
HookExtension(PFNGLTEXPARAMETERFVPROC, glTexParameterfv); \
|
||||
HookExtension(PFNGLTEXPARAMETERIPROC, glTexParameteri); \
|
||||
@@ -382,6 +391,8 @@
|
||||
HookWrapper8(void, glTexImage1D, GLenum, target, GLint, level, GLint, internalformat, GLsizei, width, GLint, border, GLenum, format, GLenum, type, const void *, pixels); \
|
||||
HookWrapper9(void, glTexImage2D, GLenum, target, GLint, level, GLint, internalformat, GLsizei, width, GLsizei, height, GLint, border, GLenum, format, GLenum, type, const void *, pixels); \
|
||||
HookWrapper10(void, glTexImage3D, GLenum, target, GLint, level, GLint, internalformat, GLsizei, width, GLsizei, height, GLsizei, depth, GLint, border, GLenum, format, GLenum, type, const void *, pixels); \
|
||||
HookWrapper7(void, glTexSubImage1D, GLenum, target, GLint, level, GLint, xoffset, GLsizei, width, GLenum, format, GLenum, type, const void *, pixels); \
|
||||
HookWrapper9(void, glTexSubImage2D, GLenum, target, GLint, level, GLint, xoffset, GLint, yoffset, GLsizei, width, GLsizei, height, GLenum, format, GLenum, type, const void *, pixels); \
|
||||
HookWrapper3(void, glTexParameterf, GLenum, target, GLenum, pname, GLfloat, param); \
|
||||
HookWrapper3(void, glTexParameterfv, GLenum, target, GLenum, pname, const GLfloat *, params); \
|
||||
HookWrapper3(void, glTexParameteri, GLenum, target, GLenum, pname, GLint, param); \
|
||||
@@ -424,9 +435,13 @@
|
||||
HookWrapper4(void, glTexStorage1D, GLenum, target, GLsizei, levels, GLenum, internalformat, GLsizei, width); \
|
||||
HookWrapper5(void, glTexStorage2D, GLenum, target, GLsizei, levels, GLenum, internalformat, GLsizei, width, GLsizei, height); \
|
||||
HookWrapper6(void, glTexStorage3D, GLenum, target, GLsizei, levels, GLenum, internalformat, GLsizei, width, GLsizei, height, GLsizei, depth); \
|
||||
HookWrapper7(void, glTexSubImage1D, GLenum, target, GLint, level, GLint, xoffset, GLsizei, width, GLenum, format, GLenum, type, const void *, pixels); \
|
||||
HookWrapper9(void, glTexSubImage2D, GLenum, target, GLint, level, GLint, xoffset, GLint, yoffset, GLsizei, width, GLsizei, height, GLenum, format, GLenum, type, const void *, pixels); \
|
||||
HookWrapper11(void, glTexSubImage3D, GLenum, target, GLint, level, GLint, xoffset, GLint, yoffset, GLint, zoffset, GLsizei, width, GLsizei, height, GLsizei, depth, GLenum, format, GLenum, type, const void *, pixels); \
|
||||
HookWrapper7(void, glCompressedTexImage1D, GLenum, target, GLint, level, GLenum, internalformat, GLsizei, width, GLint, border, GLsizei, imageSize, const void *, data); \
|
||||
HookWrapper8(void, glCompressedTexImage2D, GLenum, target, GLint, level, GLenum, internalformat, GLsizei, width, GLsizei, height, GLint, border, GLsizei, imageSize, const void *, data); \
|
||||
HookWrapper9(void, glCompressedTexImage3D, GLenum, target, GLint, level, GLenum, internalformat, GLsizei, width, GLsizei, height, GLsizei, depth, GLint, border, GLsizei, imageSize, const void *, data); \
|
||||
HookWrapper7(void, glCompressedTexSubImage1D, GLenum, target, GLint, level, GLint, xoffset, GLsizei, width, GLenum, format, GLsizei, imageSize, const void *, data); \
|
||||
HookWrapper9(void, glCompressedTexSubImage2D, GLenum, target, GLint, level, GLint, xoffset, GLint, yoffset, GLsizei, width, GLsizei, height, GLenum, format, GLsizei, imageSize, const void *, data); \
|
||||
HookWrapper11(void, glCompressedTexSubImage3D, GLenum, target, GLint, level, GLint, xoffset, GLint, yoffset, GLint, zoffset, GLsizei, width, GLsizei, height, GLsizei, depth, GLenum, format, GLsizei, imageSize, const void *, data); \
|
||||
HookWrapper1(void, glGenerateMipmap, GLenum, target); \
|
||||
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); \
|
||||
@@ -521,6 +536,7 @@
|
||||
HookWrapper1(void, glDisableVertexAttribArray, GLuint, index); \
|
||||
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); \
|
||||
HookWrapper2(void, glGenSamplers, GLsizei, count, GLuint *, samplers); \
|
||||
HookWrapper2(void, glBindSampler, GLuint, unit, GLuint, sampler); \
|
||||
HookWrapper3(void, glSamplerParameteri, GLuint, sampler, GLenum, pname, GLint, param); \
|
||||
|
||||
Reference in New Issue
Block a user