From 6c23507910e883c8aae4db1488634e6c76e39b77 Mon Sep 17 00:00:00 2001 From: David Herrmann Date: Sun, 22 Apr 2012 16:38:53 +0200 Subject: [PATCH] console: avoid unneeded matrix transformations We now assume a screen of -1,-1 to 1,1 instead of 0,0 to 1,1 to avoid matrix transformations. Signed-off-by: David Herrmann --- src/console.c | 2 -- src/font_pango.c | 5 +++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/console.c b/src/console.c index 8bc5fb2..771473a 100644 --- a/src/console.c +++ b/src/console.c @@ -768,8 +768,6 @@ static void kmscon_buffer_draw(struct kmscon_buffer *buf, } gl_m4_identity(m); - gl_m4_translate(m, -1, -1, 0); - gl_m4_scale(m, 2, 2, 1); font_screen_draw_perform(fscr, m); } diff --git a/src/font_pango.c b/src/font_pango.c index 069b654..835c4f2 100644 --- a/src/font_pango.c +++ b/src/font_pango.c @@ -729,14 +729,15 @@ int font_screen_draw_char(struct font_screen *screen, kmscon_symbol_t ch, int font_screen_draw_perform(struct font_screen *screen, float *m) { - static const float val[] = { 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1 }; + static const float ver[] = { -1, -1, 1, -1, -1, 1, 1, -1, 1, 1, -1, 1 }; + static const float tex[] = { 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1 }; if (!screen) return -EINVAL; gl_tex_load(screen->tex, screen->buf->width, screen->buf->stride, screen->buf->height, screen->buf->data); - gl_shader_draw_tex(screen->shader, val, val, 6, screen->tex, m); + gl_shader_draw_tex(screen->shader, ver, tex, 6, screen->tex, m); cairo_restore(screen->cr); return 0;