From 8a7c3d811250c85b44d395d15c1d0f0b34fcb6a6 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Thu, 7 Aug 2014 21:05:40 -0400 Subject: [PATCH] GL.draw_text: use baseline_offset when rendering text --- src/GL.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/GL.cc b/src/GL.cc index 37b39fe..d913816 100644 --- a/src/GL.cc +++ b/src/GL.cc @@ -48,6 +48,7 @@ static VALUE GL_draw_text(VALUE klass, VALUE r, VALUE g, VALUE b, VALUE a) { int x_int = FIX2INT(x); + int y_int = FIX2INT(y) + FIX2INT(rb_iv_get(font, "@baseline_offset")); glUseProgram(programs[PROGRAM_TEXT]->id); glUniform1i(programs[PROGRAM_TEXT]->uniforms[UNIFORM_TEXTURE], 0); glUniform4f(programs[PROGRAM_TEXT]->uniforms[UNIFORM_COLOR], @@ -61,7 +62,7 @@ static VALUE GL_draw_text(VALUE klass, int advance = FIX2INT(rb_iv_get(font, "@advance")); for (int i = 0; i < length; i++) { - glUniform2i(programs[PROGRAM_TEXT]->uniforms[UNIFORM_POSITION], x_int, FIX2INT(y)); + glUniform2i(programs[PROGRAM_TEXT]->uniforms[UNIFORM_POSITION], x_int, y_int); Font_RenderGlyph(font, string_ptr[i]); x_int += advance; }