From e11f54f3a1110cc50bab9c2c5e74708315508657 Mon Sep 17 00:00:00 2001 From: Alessandro Mauri Date: Fri, 24 Feb 2023 14:58:10 +0100 Subject: [PATCH] bruh --- text_rendering/.gitignore | 2 ++ text_rendering/atlas.png | Bin 11001 -> 10914 bytes text_rendering/ren.c | 32 +++++++++++++++++++++----------- text_rendering/test | Bin 306392 -> 306752 bytes 4 files changed, 23 insertions(+), 11 deletions(-) create mode 100644 text_rendering/.gitignore diff --git a/text_rendering/.gitignore b/text_rendering/.gitignore new file mode 100644 index 0000000..e179b20 --- /dev/null +++ b/text_rendering/.gitignore @@ -0,0 +1,2 @@ +*.png +test \ No newline at end of file diff --git a/text_rendering/atlas.png b/text_rendering/atlas.png index e27682cfcc2c98d0660fa50bc4db6cfd3f6edcc8..24279e18cc1977d94da5c4fe451aed65ff3183b6 100644 GIT binary patch literal 10914 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 diff --git a/text_rendering/ren.c b/text_rendering/ren.c index 5a54a3e..b68078a 100644 --- a/text_rendering/ren.c +++ b/text_rendering/ren.c @@ -452,17 +452,27 @@ int ren_set_scissor(int x, int y, int w, int h) // TODO: implement font size int ren_render_text(const char *str, int x, int y, int w, int h, int size) { - // x4,y4 x3,y3 - // +-------------+ - // |(x,y) /| - // | / | - // | 2 / | - // | / | - // | / | - // | / 1 | - // |/ | - // +-------------+ - // x1,y1 x2,y2 + + /* x4,y4 x3,y3 + * +-------------+ + * |(x,y) /| + * | / | + * | 2 / | + * | / | + * | / | + * | / 1 | + * |/ | + * +-------------+ + * x1,y1 x2,y2 */ + + // TODO: stop drawing when outside the bounding box + // TODO: check size, if the current font is not of the same size then load + // load a new font and use that texture instead, this implies making + // a system to store and use different fonts, like: + // struct font_atlas * font_by_size(int size); + // FIXME: the bounding box (scissor) logic does not work + // TODO: create a method for calculating the total bounding box of a string + // given the box size const struct font_glyph *g; struct font_glyph c; diff --git a/text_rendering/test b/text_rendering/test index 454bb4846fdcb1a73b4e3ea79f8855477c06bb5c..3215d3f3113759f82e96faecf3c7bf5dd7e86465 100755 GIT binary patch delta 40866 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

^5TT-!x0nI_wkwl{58PdgAR}z&B6PtplCy81H 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 delta 40323 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

ViqM&vKeA=3_R$3YH z#k?FudRuJ4ay`5f3O=Q}70AAotVyycs%0!zvaWU(=!vHVw%Yx?jZ;@1MNq~o?EcJp z230V;0&qMYI2JC{n5r4;sTwd2hO}#}ma2ZEy4=strzn0Ebe&bW+Zt(-u7iv(rSy*q zzcWqX-C9)}Dn)4=P}Nw0ES)NG70L;~E+b&Xm5NCYOJB2#WqpHNc=W3r{N2!<0r{txL5mgZ^5n;M`VMpMJH+V zyQ|!N&PXrFxnXy^8g{>}E|{;y+?xkQDo@u5(+TiGDYi!8m!A@EKA=`?Qu*IhK1$_V z$>iR)$1WYHQI>n3>zEDWj2dof@Df;T`9zoH|5ACOOWs;~bZ4qXRe^4u#82+?Rnl!% zAV=YQ`R9a?n$*xyHk>;_;fIF`JRS2irxKOBx5LUHXIp2vY7gm z@Th7{4N7f}v)@;_`6 z@@3o&KE?u#larg&z~VpQPRhy24^i?Sh@WXIVkiF(DuUP-r;}V9ZQo;MHlL>HoT_=4 z8unNroFiJa7do7qpp&noN{D^y-WB`T)tuRDwTQxzS`GWG!KQf^CGWQ~Tm5;i%$GmK z(zN|nU*Fl4a-Bz&fPHsH$%GS44SdT(RjbSY0jQb&9smFU