From 6f67bfe5ab111881f2c066502b845d35c0c24a30 Mon Sep 17 00:00:00 2001 From: Alexander Orzechowski Date: Mon, 22 May 2023 14:26:53 -0400 Subject: [PATCH] renderer/gles2: Interpret matrix as column major in shader Avoids us needing to transpose. --- render/gles2/renderer.c | 8 -------- render/gles2/shaders/common.vert | 2 +- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/render/gles2/renderer.c b/render/gles2/renderer.c index 518068a3..6648fb65 100644 --- a/render/gles2/renderer.c +++ b/render/gles2/renderer.c @@ -309,10 +309,6 @@ static bool gles2_render_subtexture_with_matrix( float gl_matrix[9]; wlr_matrix_multiply(gl_matrix, renderer->projection, matrix); - // OpenGL ES 2 requires the glUniformMatrix3fv transpose parameter to be set - // to GL_FALSE - wlr_matrix_transpose(gl_matrix, gl_matrix); - push_gles2_debug(renderer); if (!texture->has_alpha && alpha == 1.0) { @@ -368,10 +364,6 @@ static void gles2_render_quad_with_matrix(struct wlr_renderer *wlr_renderer, float gl_matrix[9]; wlr_matrix_multiply(gl_matrix, renderer->projection, matrix); - // OpenGL ES 2 requires the glUniformMatrix3fv transpose parameter to be set - // to GL_FALSE - wlr_matrix_transpose(gl_matrix, gl_matrix); - push_gles2_debug(renderer); if (color[3] == 1.0) { diff --git a/render/gles2/shaders/common.vert b/render/gles2/shaders/common.vert index 9cebb458..4f855a5d 100644 --- a/render/gles2/shaders/common.vert +++ b/render/gles2/shaders/common.vert @@ -4,6 +4,6 @@ attribute vec2 texcoord; varying vec2 v_texcoord; void main() { - gl_Position = vec4(proj * vec3(pos, 1.0), 1.0); + gl_Position = vec4(vec3(pos, 1.0) * proj, 1.0); v_texcoord = texcoord; }