diff options
author | David Herrmann <dh.herrmann@googlemail.com> | 2012-04-22 16:38:53 +0200 |
---|---|---|
committer | David Herrmann <dh.herrmann@googlemail.com> | 2012-04-22 16:38:53 +0200 |
commit | 6c23507910e883c8aae4db1488634e6c76e39b77 (patch) | |
tree | 8cb3438327a46299380520184009e18e5e357c36 | |
parent | 0310a4c054447c2123fc15e86c6b9a498b88dc7b (diff) |
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 <dh.herrmann@googlemail.com>
-rw-r--r-- | src/console.c | 2 | ||||
-rw-r--r-- | 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; |