gpu/internal/opengl: avoid UNPACK_ROW_LENGTH/PACK_ROW_LENGTH on GLES2

Similarly to WebGL1, they're not supported in OpenGL ES 2.0.

References: https://todo.sr.ht/~eliasnaur/gio/469
Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2023-01-06 18:40:22 -06:00
parent 827e20d84d
commit 1a84517b12
+10 -8
View File
@@ -303,14 +303,16 @@ func (b *Backend) EndFrame() {
func (b *Backend) queryState() glState { func (b *Backend) queryState() glState {
s := glState{ s := glState{
prog: gl.Program(b.funcs.GetBinding(gl.CURRENT_PROGRAM)), prog: gl.Program(b.funcs.GetBinding(gl.CURRENT_PROGRAM)),
arrayBuf: gl.Buffer(b.funcs.GetBinding(gl.ARRAY_BUFFER_BINDING)), arrayBuf: gl.Buffer(b.funcs.GetBinding(gl.ARRAY_BUFFER_BINDING)),
elemBuf: gl.Buffer(b.funcs.GetBinding(gl.ELEMENT_ARRAY_BUFFER_BINDING)), elemBuf: gl.Buffer(b.funcs.GetBinding(gl.ELEMENT_ARRAY_BUFFER_BINDING)),
drawFBO: gl.Framebuffer(b.funcs.GetBinding(gl.FRAMEBUFFER_BINDING)), drawFBO: gl.Framebuffer(b.funcs.GetBinding(gl.FRAMEBUFFER_BINDING)),
clearColor: b.funcs.GetFloat4(gl.COLOR_CLEAR_VALUE), clearColor: b.funcs.GetFloat4(gl.COLOR_CLEAR_VALUE),
viewport: b.funcs.GetInteger4(gl.VIEWPORT), viewport: b.funcs.GetInteger4(gl.VIEWPORT),
unpack_row_length: b.funcs.GetInteger(gl.UNPACK_ROW_LENGTH), }
pack_row_length: b.funcs.GetInteger(gl.PACK_ROW_LENGTH), if !b.gles || b.glver[0] > 2 {
s.unpack_row_length = b.funcs.GetInteger(gl.UNPACK_ROW_LENGTH)
s.pack_row_length = b.funcs.GetInteger(gl.PACK_ROW_LENGTH)
} }
s.blend.enable = b.funcs.IsEnabled(gl.BLEND) s.blend.enable = b.funcs.IsEnabled(gl.BLEND)
s.blend.srcRGB = gl.Enum(b.funcs.GetInteger(gl.BLEND_SRC_RGB)) s.blend.srcRGB = gl.Enum(b.funcs.GetInteger(gl.BLEND_SRC_RGB))