limit uniform blocks to 64kb.

The GL uniform code is not capable of dealing with large blocks, so restrict it to what most drivers report as their maximum.
This commit is contained in:
Christoph Oelckers 2024-02-04 13:36:25 +01:00
parent 3f72f8acd5
commit d0a2713820

View file

@ -184,7 +184,7 @@ void gl_LoadExtensions()
glGetIntegerv(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, &v); glGetIntegerv(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, &v);
gl.maxuniforms = v; gl.maxuniforms = v;
glGetIntegerv(GL_MAX_UNIFORM_BLOCK_SIZE, &v); glGetIntegerv(GL_MAX_UNIFORM_BLOCK_SIZE, &v);
gl.maxuniformblock = v; gl.maxuniformblock = max(65536, v);
glGetIntegerv(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT, &v); glGetIntegerv(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT, &v);
gl.uniformblockalignment = v; gl.uniformblockalignment = v;