-void Font::create_glyph_vertices(const Glyph &glyph, VertexArrayBuilder &va_builder)
-{
- va_builder.texcoord(glyph.x1, glyph.y1);
- va_builder.vertex(glyph.off_x, glyph.off_y);
- va_builder.texcoord(glyph.x2, glyph.y1);
- va_builder.vertex(glyph.off_x+glyph.w, glyph.off_y);
- va_builder.texcoord(glyph.x2, glyph.y2);
- va_builder.vertex(glyph.off_x+glyph.w, glyph.off_y+glyph.h);
- va_builder.texcoord(glyph.x1, glyph.y2);
- va_builder.vertex(glyph.off_x, glyph.off_y+glyph.h);
-}
-
-void Font::prepare_render() const
-{
- tex->bind();
- varray.apply();
- glPushMatrix();
+ create_glyph_vertices(j->second, bld);
+ bld.matrix() *= Matrix::translation(j->second.advance, 0, 0);
+ }
+ bld.end();