[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> #include <MG_State/GLState/FramebufferState/FramebufferObject.h>
#if MOBILEGL_BACKEND == MOBILEGL_BACKEND_TYPE_DIRECT_GLES #if MOBILEGL_BACKEND == MOBILEGL_BACKEND_TYPE_DIRECT_GLES
#include <MG_Backend/DirectGLES/DirectGLES.h> #include <MG_Backend/DirectGLES/DirectGLES.h>
#include "MG_Util/BackendLoaders/OpenGL/Loader.h"
#endif #endif
namespace MobileGL { namespace MobileGL {
@@ -817,7 +818,11 @@ namespace MobileGL {
*params = 0; // TODO *params = 0; // TODO
break; break;
case GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT: 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; break;
case GL_UNIFORM_BUFFER_SIZE: case GL_UNIFORM_BUFFER_SIZE:
*params = 0; // TODO *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() { void InitGLES() {
@@ -576,6 +576,8 @@ namespace MobileGL {
Version version; Version version;
Bool hasPersistentMapping; Bool hasPersistentMapping;
Bool hasNorm16Texture; Bool hasNorm16Texture;
Int uniformBufferOffsetAlignment;
}; };
} // namespace Caps } // namespace Caps