diff options
Diffstat (limited to 'in_practice/breakout/text.h')
-rw-r--r-- | in_practice/breakout/text.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/in_practice/breakout/text.h b/in_practice/breakout/text.h new file mode 100644 index 0000000..1056498 --- /dev/null +++ b/in_practice/breakout/text.h @@ -0,0 +1,27 @@ +#ifndef TEXT_H +#define TEXT_H + +#include "types.h" +#include "my_math.h" + +struct text_char { + u32 texture; + v2 size; + v2 bearing; + u32 advance; +}; + +struct text_renderer { + struct text_char chars[128]; + u32 shader; + u32 vao; + u32 vbo; +}; + +struct text_renderer init_text_renderer(i32 width, i32 height); +void load_font(struct text_renderer *renderer, const char *dir, const char *filename, u32 size); +v2 get_text_size(struct text_renderer renderer, const char *text, f32 scale); +void render_text(struct text_renderer renderer, const char *text, v2 pos, f32 scale, v3 color); +void render_text_centered(struct text_renderer renderer, const char *text, v2 pos, f32 scale, v3 color); + +#endif |