From 6990c213777f98c1a0d243120f91c5138827c16b Mon Sep 17 00:00:00 2001 From: Ed_ Date: Mon, 13 Jan 2025 20:42:08 -0500 Subject: [PATCH] WSL LINUX WORKS --- backend/sokol/draw_text.odin | 34 ++++++++++++-------------- backend/sokol/draw_text.shdc.glsl | 6 ++++- scripts/helpers/odin_compiler_defs.sh | 3 ++- thirdparty/harfbuzz | 1 + thirdparty/stb/lib/stb_truetype.lib | Bin 380552 -> 380552 bytes 5 files changed, 24 insertions(+), 20 deletions(-) create mode 160000 thirdparty/harfbuzz diff --git a/backend/sokol/draw_text.odin b/backend/sokol/draw_text.odin index badda9e..6bd09e4 100644 --- a/backend/sokol/draw_text.odin +++ b/backend/sokol/draw_text.odin @@ -52,13 +52,13 @@ Ve_Draw_Text_Fs_Params :: struct #align(16) { void main() { - uv = vec2(v_texture.x, 1.0 - v_texture.y); + uv = vec2(v_texture.x, v_texture.y); gl_Position = vec4((v_position * 2.0) - vec2(1.0), 0.0, 1.0); } */ @(private="file") -ve_draw_text_vs_source_glsl410 := [261]u8 { +ve_draw_text_vs_source_glsl410 := [255]u8 { 0x23,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x34,0x31,0x30,0x0a,0x0a,0x6c,0x61, 0x79,0x6f,0x75,0x74,0x28,0x6c,0x6f,0x63,0x61,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20, 0x30,0x29,0x20,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x32,0x20,0x75,0x76,0x3b,0x0a, @@ -69,13 +69,12 @@ ve_draw_text_vs_source_glsl410 := [261]u8 { 0x76,0x65,0x63,0x32,0x20,0x76,0x5f,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x3b, 0x0a,0x0a,0x76,0x6f,0x69,0x64,0x20,0x6d,0x61,0x69,0x6e,0x28,0x29,0x0a,0x7b,0x0a, 0x20,0x20,0x20,0x20,0x75,0x76,0x20,0x3d,0x20,0x76,0x65,0x63,0x32,0x28,0x76,0x5f, - 0x74,0x65,0x78,0x74,0x75,0x72,0x65,0x2e,0x78,0x2c,0x20,0x31,0x2e,0x30,0x20,0x2d, - 0x20,0x76,0x5f,0x74,0x65,0x78,0x74,0x75,0x72,0x65,0x2e,0x79,0x29,0x3b,0x0a,0x20, - 0x20,0x20,0x20,0x67,0x6c,0x5f,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d, - 0x20,0x76,0x65,0x63,0x34,0x28,0x28,0x76,0x5f,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f, - 0x6e,0x20,0x2a,0x20,0x32,0x2e,0x30,0x29,0x20,0x2d,0x20,0x76,0x65,0x63,0x32,0x28, - 0x31,0x2e,0x30,0x29,0x2c,0x20,0x30,0x2e,0x30,0x2c,0x20,0x31,0x2e,0x30,0x29,0x3b, - 0x0a,0x7d,0x0a,0x0a,0x00, + 0x74,0x65,0x78,0x74,0x75,0x72,0x65,0x2e,0x78,0x2c,0x20,0x76,0x5f,0x74,0x65,0x78, + 0x74,0x75,0x72,0x65,0x2e,0x79,0x29,0x3b,0x0a,0x20,0x20,0x20,0x20,0x67,0x6c,0x5f, + 0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28, + 0x28,0x76,0x5f,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,0x2a,0x20,0x32,0x2e, + 0x30,0x29,0x20,0x2d,0x20,0x76,0x65,0x63,0x32,0x28,0x31,0x2e,0x30,0x29,0x2c,0x20, + 0x30,0x2e,0x30,0x2c,0x20,0x31,0x2e,0x30,0x29,0x3b,0x0a,0x7d,0x0a,0x0a,0x00, } /* #version 410 @@ -155,13 +154,13 @@ ve_draw_text_fs_source_glsl410 := [812]u8 { void main() { - uv = vec2(v_texture.x, 1.0 - v_texture.y); + uv = vec2(v_texture.x, v_texture.y); gl_Position = vec4((v_position * 2.0) - vec2(1.0), 0.0, 1.0); } */ @(private="file") -ve_draw_text_vs_source_glsl300es := [243]u8 { +ve_draw_text_vs_source_glsl300es := [237]u8 { 0x23,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x33,0x30,0x30,0x20,0x65,0x73,0x0a, 0x0a,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x32,0x20,0x75,0x76,0x3b,0x0a,0x6c,0x61, 0x79,0x6f,0x75,0x74,0x28,0x6c,0x6f,0x63,0x61,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20, @@ -171,13 +170,12 @@ ve_draw_text_vs_source_glsl300es := [243]u8 { 0x63,0x32,0x20,0x76,0x5f,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x3b,0x0a,0x0a, 0x76,0x6f,0x69,0x64,0x20,0x6d,0x61,0x69,0x6e,0x28,0x29,0x0a,0x7b,0x0a,0x20,0x20, 0x20,0x20,0x75,0x76,0x20,0x3d,0x20,0x76,0x65,0x63,0x32,0x28,0x76,0x5f,0x74,0x65, - 0x78,0x74,0x75,0x72,0x65,0x2e,0x78,0x2c,0x20,0x31,0x2e,0x30,0x20,0x2d,0x20,0x76, - 0x5f,0x74,0x65,0x78,0x74,0x75,0x72,0x65,0x2e,0x79,0x29,0x3b,0x0a,0x20,0x20,0x20, - 0x20,0x67,0x6c,0x5f,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x76, - 0x65,0x63,0x34,0x28,0x28,0x76,0x5f,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20, - 0x2a,0x20,0x32,0x2e,0x30,0x29,0x20,0x2d,0x20,0x76,0x65,0x63,0x32,0x28,0x31,0x2e, - 0x30,0x29,0x2c,0x20,0x30,0x2e,0x30,0x2c,0x20,0x31,0x2e,0x30,0x29,0x3b,0x0a,0x7d, - 0x0a,0x0a,0x00, + 0x78,0x74,0x75,0x72,0x65,0x2e,0x78,0x2c,0x20,0x76,0x5f,0x74,0x65,0x78,0x74,0x75, + 0x72,0x65,0x2e,0x79,0x29,0x3b,0x0a,0x20,0x20,0x20,0x20,0x67,0x6c,0x5f,0x50,0x6f, + 0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x28,0x76, + 0x5f,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,0x2a,0x20,0x32,0x2e,0x30,0x29, + 0x20,0x2d,0x20,0x76,0x65,0x63,0x32,0x28,0x31,0x2e,0x30,0x29,0x2c,0x20,0x30,0x2e, + 0x30,0x2c,0x20,0x31,0x2e,0x30,0x29,0x3b,0x0a,0x7d,0x0a,0x0a,0x00, } /* #version 300 es diff --git a/backend/sokol/draw_text.shdc.glsl b/backend/sokol/draw_text.shdc.glsl index 10233a0..a3278c7 100644 --- a/backend/sokol/draw_text.shdc.glsl +++ b/backend/sokol/draw_text.shdc.glsl @@ -10,7 +10,11 @@ out vec2 uv; void main() { - uv = vec2( v_texture.x, 1 - v_texture.y ); +#if SOKOL_GLSL + uv = vec2( v_texture.x, v_texture.y ); +#else + uv = vec2( v_texture.x, 1.0 - v_texture.y ); +#endif gl_Position = vec4( v_position * 2.0f - 1.0f, 0.0f, 1.0f ); } @end diff --git a/scripts/helpers/odin_compiler_defs.sh b/scripts/helpers/odin_compiler_defs.sh index 721aba0..9f1045f 100644 --- a/scripts/helpers/odin_compiler_defs.sh +++ b/scripts/helpers/odin_compiler_defs.sh @@ -62,4 +62,5 @@ flag_vet_using_stmt='-vet-using-stmt' # flag_msvc_link_debug='/DEBUG' # Assuming to be in default path, change if otherwise -odin_compiler='odin' +# odin_compiler='odin' +odin_compiler='/mnt/c/projects/SectrPrototype/toolchain/Odin/odin' diff --git a/thirdparty/harfbuzz b/thirdparty/harfbuzz new file mode 160000 index 0000000..834fd86 --- /dev/null +++ b/thirdparty/harfbuzz @@ -0,0 +1 @@ +Subproject commit 834fd866785786477b2c0bd5ce5aa1e2848efa12 diff --git a/thirdparty/stb/lib/stb_truetype.lib b/thirdparty/stb/lib/stb_truetype.lib index c21773696c3e9e759cbe17d06a4886e8a98cb021..6d2c66604be0b605d0dd99b7643c83fe802dc463 100644 GIT binary patch delta 1673 zcmYjPYfzL`7~c1s11yNRa$O2yxwH_PE{t5nl@?=iK|-{~EL7A%1xE=|E|UhUqOKIP zTqa*Hp+x4SgNEU9VllmkBYFbPY&i9g!vVAVgEm+Ii5JrwbRA~?Zpa$N);EX@W5 zE;4`)He-(ghRN41SknQ1_*V(MLCXFiai!2LW;U820OQM`fT*2t*$fiI|15)I3O#(& zPI!mfsh$3-&6_{i4cmY`bQOhxe9vAu3DARrP|5Qv;3sF;f|{$~&sWrd(VhI_hA~&c zk4LvcF(F2`u_}1q&#)ZG<1sb~^E*HVYW{r(WDzi;?*+IlDrJ$xpL<>ey#pK?v&1uh zz^72d1^X!s4AxlLb(r%nt|$U2+M8fL?88MScnu7Eg9)TS%G^*_1m0M61HvH(Lv9NF zzPtf;kSk(;`-JH^@@!>HeI6HRxq>Wpw^nTia*u!>I~mykg_vMNQb3K>He?>8BZ_!pcO>Z{Db8XG{?e_Z;s};n znJ9Kd*C-PH{})d{&X>+0OYF&h^{jp>#kd@Y70;}F31^?!^3wa(lo6gOU zJ_)Nar1X93`e)M*}F@CDsj>a>Ku(^(E6uo${ zN%lU*pU%CyEW^)u#9T7#+k>wCb?tQp>lU}3-;4@Q719-xdlSQU4*7B|r;kDE+!e6? z=G>CmsHvxe^8THwo{^gJrt~+%FSHyeYD`SV`i2wT8cb@SovP1=^~W=7wZ|K0dIf)0 zMTR{Nq%S}I#r1sss!N7w?}_!914olT_S=--aHMtfv67$#nA9jV{K2&R%wd`tf%-<; zEOou~;Vnn^_Hs;WqIuGDYtEKU9JqHIJDaFhDxLk-UeDxp3>7D7rQ(Ar@qb-AvvQy% zsPf8!&)S;5Q&taom|Rz9Y`8K~74u>>-Z)9+8sDi;wSAuZTc7qDu3z42c=*=z`*(D0 zTQU>MeG`2bw(d91?+Y&7Z9G(KjVIF#@VQ# z)Lz#illucMJ58IE?7`x7r?B%59b_p!?Q(wZF4Y5jzB@dGFErC?U~dKwH>0$drm@8B z(iU9bOBF0)=w&_b649Y=PF7=+h}s(`oA`}hssR>fI3JGz78=V|#3c6M8jFyg{KjrC zEV0lU)|&OHn#Vq*T~g*U-!GIap3#krWpDe&h?PU4<&S-~*dij?U_>%E579Qt4(2>L zjK@cW;GCmd9k6ReFpv6uZ!#)Ih1iH@jVH#6C~7q1Fs6+P-KmnptGxU6 zO>7&-6l_V!gj;A4W0Rs?lsL^%K5>|iW`F5?0ajncobLwyK7>~yQ delta 1673 zcmYjPdsK~C6u&`^e&@9Q#a{yFFO+xvI+w|{$onS1Or_t@us zB=ryQA2+t#xp$%wyrz`<{g7!yPe`WB@meD1cNFXoZU=5KsQH0CFfa^R(|E zl$r)w{nwil?|>}sY7T<;L?9(*dE3$##4=Ghs$ZU^#^Ksq)tvJuiyBP9zU5RXVn6fDO+DOoQL ztY1o8_zn}Y*^=Zsh*NRrA+|(g29{jdRkM|GPaeE*Bq;>27Z><3*Nh^sfn2s3=!-A* zB^f|EYzAKA;4!3*{B0z>cMO>cbg%ikpGol{YzdMG95i8yuLehaOG5!*`H1>K6I_fKHEsdU<;x;=8Z|P{Htjd1&&3iSgBGI>s&IyP;R!}y|%Q8W3A~~C8 zK{Qnjot@8*r^Ic1WFFT{5;ZTgH}^#AJ1$$i$eJ;yW%ZcKA?gC(XJMsSS4CCIyOmCU z*Eb$?IJ=>F(Ha-s(QW(sQ@kgyD?U`+J2t=nn(mBm8+NIdc?;J)}(MMNi zCnqko-@kHkWp+!-E@$fnf301gyJSR2gKNF(m6Dh?UD<)lDvUfW7`A%k=Qu8Lm@Q_W zrggF(%YJk8@H!KVku@|ymie^mfls)lB{tPiwXExn_5BOmQ^%t63@uT9I=Z6c*X>^{ zulFpuJ}X&YcgX$78+(K8s-&E!)>iVik=S~MI;gDOPZE7{*zgzKxh>bybDwAq=oPE9 zQzG;gjXvf3E~e_DpLyr+v|H)q_M)OyebD6Ej;M*!8$;s*oxi=BHGN7C2Gmkt2Tfno z_vK{|Z+1V7ZH!ub^M_bNRHMh%sw~vj(yx>jo3w}ZhL|fW+@|f!k_}gH>7MZD#F}4% z!ayhUHc_AB^0TzYoxSLAoQF+qw1@q9ZITDS^nhjp8*{g|kI!kRM}UnDEZv8)$8-g2 z?k&BFagV8zsdpc)#vLO1sjJKpYeZBZ)Y8sdA5#^usGocD(5;h(u-oHwlW}#YkdAm; zREK$;^f;Teq4o|Bc|vc=7`$G%k}F@)B*qR(Lo=}Cji4<5a;^gFMf9Nh&^q4!hUzKv zN>8lE%040Z`$%~M-s%&I`(HX%fXaR$Hnnqn5r&A!eEIenxT0ThQ(f6^ty{{pl+E^< znatZM`-HGa+5Q^tX~LEQQ{C9jd7dfjBFx8Rh%Ih5XDe7TPc&ecIm>3V_A8E|b`T3; zrKj5FqJ9ulGRv744`Zho^Xxbfi+&aY>I$Ad0+TFQ51Uq=WQz%wg06G$rYzhoqOYY8 g&g(3h17Y5Vt3&Y*YvChsyZd~GTF$syE>+e33oYV=wg3PC