text instancing

This commit is contained in:
2023-11-24 23:21:08 +02:00
parent 11bca0e5a4
commit 638c67a99e
10 changed files with 197 additions and 77 deletions
+17 -7
View File
@@ -29,7 +29,7 @@ static const int quad_indices[] = {
static const Color mistake_color = {1.f, 0.f, 0.f, 0.5f};
static const wide_str *win_text = U"You won!";
static const char *win_text = "You won!";
static const char *help_texts[HELP_TEXT_SIZE] = {
"F1 - Toggle help",
@@ -58,15 +58,15 @@ void draw_win() {
/* set_width_constraint(&constraints, window.width, UI_CONSTRAINT_FIXED); */
/* set_height_constraint(&constraints, window.height, UI_CONSTRAINT_FIXED); */
Alignment align = ALIGN_CENTER;
int font_size = 72.0f;
Alignment align = ALIGN_TOP_LEFT;
int font_size = 84.0f;
/* Sizef text_size = calculate_text_size(win_text, font_size); */
Sizef text_size = calculate_text_size(win_text, font_size);
set_x_constraint(&constraints, 0, UI_CONSTRAINT_FIXED);
set_y_constraint(&constraints, 0, UI_CONSTRAINT_FIXED);
/* set_width_constraint(&constraints, text_size.width, UI_CONSTRAINT_FIXED); */
/* set_height_constraint(&constraints, text_size.height, UI_CONSTRAINT_FIXED); */
set_width_constraint(&constraints, text_size.width, UI_CONSTRAINT_FIXED);
set_height_constraint(&constraints, text_size.height, UI_CONSTRAINT_FIXED);
/* set_rotation_constraint(&constraints, 0); */
/* UIConstraints circle_const; */
@@ -76,7 +76,7 @@ void draw_win() {
/* set_height_constraint(&circle_const, 90, UI_CONSTRAINT_FIXED); */
/* draw_circle(circle_const, NULL, ALIGN_LEFT_CENTER); */
/* draw_quad(constraints, &bg_color, 0.0, align); */
draw_quad(constraints, &bg_color, 0.0, align);
/* set_x_constraint(&constraints, -50, UI_CONSTRAINT_FIXED); */
/* draw_quad(constraints, &bg_color, 25.0, ALIGN_TOP_RIGHT); */
/* set_x_constraint(&constraints, 0, UI_CONSTRAINT_FIXED); */
@@ -87,7 +87,17 @@ void draw_win() {
set_width_constraint(&constraints, 1, UI_CONSTRAINT_FIXED);
set_height_constraint(&constraints, 1, UI_CONSTRAINT_FIXED);
/* set_rotation_constraint(&constraints, 0); */
draw_text(win_text, font_size, constraints, &text_color, align);
/* for (int i = 0; i < 100; i++) { */
/* int x = rand() % window.width; */
/* int y = rand() % window.height; */
/* set_x_constraint(&constraints, x, UI_CONSTRAINT_FIXED); */
/* set_y_constraint(&constraints, y, UI_CONSTRAINT_FIXED); */
/* draw_text(win_text, font_size, constraints, &text_color, align); */
/* } */
}
void set_scale_factor(int width, int height, float *x, float *y) {