misc(buffer, texture): more logs

This commit is contained in:
Swung0x48 2025-02-23 17:47:28 +08:00
parent ee4b73b768
commit 62f8520dd7
3 changed files with 21 additions and 8 deletions

View File

@ -21,6 +21,7 @@ static GLenum get_binding_query(GLenum target) {
void* glMapBuffer(GLenum target, GLenum access) {
LOG()
LOG_D("glMapBuffer, target = %s, access = %s", glEnumToString(target), glEnumToString(access))
if (get_binding_query(target) == 0) {
return NULL;
}
@ -40,7 +41,7 @@ void* glMapBuffer(GLenum target, GLenum access) {
GLbitfield flags = 0;
switch (access) {
case GL_READ_ONLY: flags = GL_MAP_READ_BIT; break;
case GL_WRITE_ONLY: flags = GL_MAP_WRITE_BIT | GL_MAP_INVALIDATE_BUFFER_BIT; break;
case GL_WRITE_ONLY: flags = GL_MAP_WRITE_BIT; /*| GL_MAP_INVALIDATE_BUFFER_BIT*/; break;
case GL_READ_WRITE: flags = GL_MAP_READ_BIT | GL_MAP_WRITE_BIT; break;
default:
return NULL;
@ -105,4 +106,12 @@ void glBufferStorage(GLenum target, GLsizeiptr size, const void* data, GLbitfiel
LOAD_GLES_FUNC(glBufferStorageEXT)
gles_glBufferStorageEXT(target,size,data,flags);
CHECK_GL_ERROR
}
void glBindBuffer(GLenum target, GLuint buffer) {
LOG()
LOG_D("glBindBuffer, target = %s, buffer = %d", glEnumToString(target), buffer)
LOAD_GLES_FUNC(glBindBuffer)
gles_glBindBuffer(target, buffer);
}

View File

@ -35,6 +35,8 @@ GLAPI GLAPIENTRY void *glMapBuffer(GLenum target, GLenum access);
GLAPI GLAPIENTRY void glBufferStorage(GLenum target, GLsizeiptr size, const void* data, GLbitfield flags);
GLAPI GLAPIENTRY void glBindBuffer(GLenum target, GLuint buffer);
#ifdef __cplusplus
}
#endif

View File

@ -287,13 +287,13 @@ void glTexImage2D(GLenum target, GLint level,GLint internalFormat,GLsizei width,
auto& tex = g_textures[bound_texture];
tex.internal_format = internalFormat;
tex.format = format;
LOG_D("mg_glTexImage2D,target: %s,level: %d,internalFormat: %s->%s,width: %d,height: %d,border: %d,format: %s,type: %s",
LOG_D("mg_glTexImage2D,target: %s,level: %d,internalFormat: %s->%s,width: %d,height: %d,border: %d,format: %s,type: %s, pixels: 0x%x",
glEnumToString(target),level,glEnumToString(internalFormat),glEnumToString(internalFormat),
width,height,border,glEnumToString(format),glEnumToString(type));
width,height,border,glEnumToString(format),glEnumToString(type), pixels);
internal_convert(reinterpret_cast<GLenum *>(&internalFormat), &type, &format);
LOG_D("gles_glTexImage2D,target: %s,level: %d,internalFormat: %s->%s,width: %d,height: %d,border: %d,format: %s,type: %s",
LOG_D("gles_glTexImage2D,target: %s,level: %d,internalFormat: %s->%s,width: %d,height: %d,border: %d,format: %s,type: %s, pixels: 0x%x",
glEnumToString(target),level,glEnumToString(internalFormat),glEnumToString(internalFormat),
width,height,border,glEnumToString(format),glEnumToString(type));
width,height,border,glEnumToString(format),glEnumToString(type), pixels);
GLenum rtarget = map_tex_target(target);
if(rtarget == GL_PROXY_TEXTURE_2D) {
int max1 = 4096;
@ -304,8 +304,7 @@ void glTexImage2D(GLenum target, GLint level,GLint internalFormat,GLsizei width,
set_gl_state_proxy_intformat(internalFormat);
return;
}
LOAD_GLES(glTexImage2D, void, GLenum target, GLint level,GLint internalFormat,GLsizei width, GLsizei height,GLint border, GLenum format, GLenum type,const GLvoid* pixels);
gles_glTexImage2D(target, level, internalFormat, width, height, border, format, type, pixels);
if (tex.format == GL_BGRA && internalFormat == GL_RGBA8 && width <= 128 && height <= 128) { // xaero has 64x64 tiles...hack here
LOG_D("Detected GL_BGRA format @ tex = %d, do swizzle", bound_texture);
if (tex.swizzle_param[0] == 0) { // assert this as never called glTexParameteri(..., GL_TEXTURE_SWIZZLE_R, ...)
@ -333,6 +332,9 @@ void glTexImage2D(GLenum target, GLint level,GLint internalFormat,GLsizei width,
CHECK_GL_ERROR
}
LOAD_GLES(glTexImage2D, void, GLenum target, GLint level,GLint internalFormat,GLsizei width, GLsizei height,GLint border, GLenum format, GLenum type,const GLvoid* pixels);
gles_glTexImage2D(target, level, internalFormat, width, height, border, format, type, pixels);
CHECK_GL_ERROR
}
@ -924,7 +926,7 @@ void glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, co
void glPixelStorei(GLenum pname, GLint param) {
LOG_D("glPixelStorei, pname = %s, param = %s", glEnumToString(pname), glEnumToString(param))
LOAD_GLES_FUNC(glPixelStorei)
LOAD_GLES_FUNC(glPixelStorei)
gles_glPixelStorei(pname, param);
}