[Feat] (MG_Util/BackendLoaders/OpenGL, MG_Impl/Getter): retrieve real GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT from backend

This commit is contained in:
2026-01-29 16:48:01 +08:00
parent ffec1618f1
commit 77aa26661d
3 changed files with 12 additions and 1 deletions
+6 -1
View File
@@ -18,6 +18,7 @@
#include <MG_State/GLState/FramebufferState/FramebufferObject.h>
#if MOBILEGL_BACKEND == MOBILEGL_BACKEND_TYPE_DIRECT_GLES
#include <MG_Backend/DirectGLES/DirectGLES.h>
#include "MG_Util/BackendLoaders/OpenGL/Loader.h"
#endif
namespace MobileGL {
@@ -817,7 +818,11 @@ namespace MobileGL {
*params = 0; // TODO
break;
case GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT:
*params = 256; // TODO: get real value from backend
#if MOBILEGL_BACKEND == MOBILEGL_BACKEND_TYPE_DIRECT_GLES
*params = MG_External::GLES::g_glesCaps.uniformBufferOffsetAlignment; // TODO: get real value from backend
#else
*params = 256;
#endif
break;
case GL_UNIFORM_BUFFER_SIZE:
*params = 0; // TODO
@@ -529,6 +529,10 @@ namespace MobileGL {
}
}
}
MGLOG_I("OpenGL ES capabilities:");
MG_External::GLES::glGetIntegerv(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT, &MG_External::GLES::g_glesCaps.uniformBufferOffsetAlignment);
MGLOG_I(" GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT: %d", MG_External::GLES::g_glesCaps.uniformBufferOffsetAlignment);
}
void InitGLES() {
@@ -576,6 +576,8 @@ namespace MobileGL {
Version version;
Bool hasPersistentMapping;
Bool hasNorm16Texture;
Int uniformBufferOffsetAlignment;
};
} // namespace Caps