blob: 983ffd6c6e122e4fac34e55dd7b86318be0ce0c1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
/**
* @brief
*/
#pragma once
#include <stb_truetype.h>
#include "darray.h"
#include "defines.h"
#include "ral.h"
#include "render_types.h"
// struct core;
// /** @brief internal font struct */
// typedef struct font {
// const char *name;
// stbtt_fontinfo stbtt_font;
// stbtt_bakedchar c_data[96];
// texture_handle bitmap_tex;
// } font;
// typedef struct draw_text_packet {
// char *contents;
// f32 x;
// f32 y;
// } draw_text_packet;
// KITC_DECL_TYPED_ARRAY(draw_text_packet)
// typedef struct text_system_state {
// font default_font;
// shader_handle glyph_shader;
// u32 glyph_vbo;
// u32 glyph_vao;
// draw_text_packet_darray *draw_cmd_buf;
// // TODO: fonts array or hashtable
// } text_system_state;
// void text_system_render(text_system_state *text);
// // --- Lifecycle functions
// bool text_system_init(text_system_state *text);
// void text_system_shutdown(text_system_state *text);
// // --- Drawing
// /**
// * @brief immediate mode draw text.
// * @note immediately emits draw calls causing a shader program switch if you weren't previously
// drawing text in the current frame.
// */
// void draw_text(struct core *core, f32 x, f32 y, char *contents);
|