From 2dd9e560364cd0e8ecd0ca1a86c653b6f755cec0 Mon Sep 17 00:00:00 2001 From: Phillip Trudeau-Tavara Date: Tue, 22 Aug 2023 02:54:09 -0400 Subject: [PATCH 1/9] Replace squidward grunts with boops --- assets/grunt_0.wav | Bin 48172 -> 302546 bytes assets/grunt_1.wav | Bin 37344 -> 302546 bytes assets/grunt_2.wav | Bin 36182 -> 302546 bytes assets/grunt_3.wav | Bin 31966 -> 302546 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/grunt_0.wav b/assets/grunt_0.wav index fdb89a65a5107a76eaddf1fa069616ef8d90ed32..ccc9abf9a778ca4116deb64b8b183afce7198712 100644 GIT binary patch literal 302546 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
%>eF!N~?2&?gHoqHwPdxqww*`W^DdrQp&4 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 HQ{n#uIKq(e diff --git a/assets/grunt_1.wav b/assets/grunt_1.wav index 5009823db19be5d1ec2c186bb000340624dcaa6a..47fc5fd4360c2120939f82782c038b765fc4a1b2 100644 GIT binary patch literal 302546 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 zPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC z0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI z6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^c zPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC z0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI z6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^c zPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC z0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI z6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^c zPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC z0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI z6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^c zPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC z0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI z6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^c zPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC z0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI z6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^cPyrQC0ToaI6;J^c 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�E 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μLSC_>mMpp6hRTz&E^~mmtwwi-A8tBmY6u zc3YA^3oYn{K8l?rmGJV*vszgK52-fV*_PURP;W0JU#urgLgvS!3q$dgy3m@Mu#)2V z6-i79FXIab^M-qgovADgf~>Oyd@F+?S{4vqzwbC|Dyk`;RAvXW&4klrv#D0;N__)wJaFb zn)dZ4zBbXq+J)eVSif2aKbVcyPGscT(dRO>BNtK9P=4*e7feBEd1#^7S5u!y9gwUo z^>?K#5&2jHf?foJ-&zdo5!iW!aoh&}Mp&cRo>nyitNzE-1P3ZgSz;}`74?aI8G^CR zVn$aouL61I(Vj_+>?jMr=kd+|ye1K2*#~3$huORdT0g~S`p8^<<>3bvxM2>ck^~&k zKm#A2i23$d{}rf&0ZO>|J`Iwa85GKa{EEniz?c%)w~F|Ee;~agJ}KBuSM1;jWPdhx zb0>Ow3T;10JmETg{2?eHq5)4pklP@^EuNo%CBh#OHvJ;!id`(1&?4boh?UU4`K@?= z7wr-Y;MxcS+ z(7XEJVoqlg;1LNE7P0s5NLK*K5tb?&zf4XW zQt;Xa4-nBXK~n8l9*xgZb5;u8rQsnF-}?^E{L66<-MEJ2?!{YLf~-%4=?{Xt58~+0 z8s~5{U1}#=9$v5)-ZL9! z&;@NP%o;@~5!a9GlMp+R?isg0l5Zf86EvuZPWDH`=Ad)y@%p!e1mbxwoaP#==Lzk7 z2@eve_>fQT!9B$Po78xnejKsc$DUm1u+TegsPp>_O~$75?F7{tKUU zF?|=S?2|yuX=wKf&fLqd{-)H&jQ%TlRsw#Yu-&nYdm{gZ6?ZV&!mc|QX9qLjWX3`m z?Mz5c8s4YiQ<)JL=O!>)u}G4Emy?n?&WFU6<`CLl6dRQbo-Wqg{MP!Numk@hbAnNb z7+D^qGC$|!Mlwq93t_$fWa1+E39RD=uZbv^vd}1D)d?^|zyr1=G%Mw0W0LxehL*Hfb_)EQB05zbG%Q7|t1LR!1p7S*D?JW2Fpu+>TV>Cq z^qG7z4qX?x(39T_>s^bZF5}e%y%%xowzRu1<2D)`=|eBt(hITQsWGG4h%?1ri8g%N zo-)MB!w}AI4^#NxZZU3U#B8Ty=AF#4iG)NGtMghi62sitVUgLHU9ry55rpak?u?`+ zvEJI2vc)c{N_=08c`XX!i`{AYndRKbPbjhzi&yd!-M^2lUqHUMVTtBr!KUMvN8qDJ zAi2x&LylwJZgJjM>UUf9+CdIGEX73IqbTJyQY<_a?$&``UI&35^2ujp(r?LF8ZacC zC9_GaeIVb#oEvyC$KW2@(1#UhWCXe~nxj8_d;k_wFmG>x#>^+}7;hd|Sd!BK*#o71&<6mz3B}T|J2kg zWJ~OH6sRF0Bz2Iz#%PmRm#f163VibizI-jDzb*9+L@R`q9bi4U(+e%E$FFLm8Nv&% z&o8Rcw*r)%nbF9}NR&sz+SAg}cq$@_B4X8xERCN|#Bm{-xdueq1AqS?j{FV7xD10i z1_m7lwGLY7vJW1x&Wdf1qwc;~bTK;JcphYxEn*le@H;kvNIN)I@_HrpMSv9l^K%-| zBeB;>=z2Rwvj@Ey%_uGcXN1pk5M&e&;UNjXWjC*OgO^*tIq}#5YKr3+?K#BfJ3tk& zGiWTMPzU>*-(m@2jK2r{6msz#eG+ShH<1|O6$?xCm03w(O+Z-jB=89*8XZ8}e0=(e z*)7;q#}megf}XzzKB+yp#~9$TMTkcN6R9>lCkK{2y|%-Hh$#) zzaGMSVd*EJV}sEz5wY*d|E_3#SL}Ibyp4{0(%JIZ+v9IHV;6v6Yj~`k z3^psOp9L?aICa#7Q?!KlcL9rffD_?XyE;-+Q>!&1_S=Sct$2u)1##VIHCj@iU-Y8C zg2At`xP}(5|3`cZ0o4sqRaC;Hft^22%VZH>@S%L|wfYue77iS>|EjO-;V zM)?$3cmiUGh>ci5`GJ1Mf*ZeJfWLV6o#PYIBEEfP#Xg^aPGY7XgGR4GrARzW@f$H~ qf&)m{krb9j3xrO>I|E#oiIAFTe31P)Aux_q;7V2`vjAvRQu;p({|@v3 diff --git a/assets/grunt_2.wav b/assets/grunt_2.wav index ba48193c9dd435fb75867217982605c69e134ebc..8e934744705a39dc559e8c095692957efc0d2f41 100644 GIT binary patch literal 302546 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

@EwF29HXk33g|Pdb z?4;EXui_WjJgOhw#37^xQUk;A0WP9Nuto4O>_iB?YkJqb1zVG8T-&&I0=6Q6J41Jd z-oR1V+TD0;Mm2gkd$6KA-+2(}u5{M}ScP1)3TqYiBzC|Ln=j77SFruRi@S?^CU&9> zH+gRIOn}Wb?LM&hi1>&*@iacgDa1s^M0Umm*jnJ%xPthoc<%UVA2kd%M)&}B9z2aI zBzu#+H{ebThpl1H!P{7gO|WCf_xKHe!tPHyg)=yflQ@P$u>JEJ?7$~@A8+7U*mcNz z(G}Oh?r|%PDvdgdFR%npV+ib6W*5%wXV{BHcm&;%jO>W)i0ya@_u?89dI~+eFc40J*u7zloi7tk9lGY0<*{25q+QD}iuf2sc~ zyn=ht1jW_G)qC+49zr|V8sO=w(^XqBAEVI)c7C&+^Du0`cpKAT_W*T46WDQr-L>*8 z_Tvkzg^h<_#cVu@Nf?6%a3B7Kd;i1!J`DEUSWJeEL7u~FSb}xfg=dfj!~SDddn_rVrrTe(`f#=*`VhhX<`+4*EDY#ez6o^VfiM~uf}{D3lW z%bU9&p2AAl{kz;U=(hVrx?wC{!Ke5Q1&E1=iD-%57z3LxEXF4MfRiYKGtybNA6*-H zZDdqpJp*xJ+r%)~ehLN~NRL&U?0@~ZNx9N2Z~zwjGu zeQO_V{`&>CW7~h&-|b`eoV~_gYoBAEYhS~@mVHe-0or-DK5oEm7=Tfj4m%gye!By< z?_P$(@9<}#0|wzyypB(?A6F3_h_0I-4G0VfJdTCfg)^}0=+|QarsI8l54#UKr6#53 zHarYFm+!(w#MZ{vc7$DndmVN^?FGbyV(QjuMu$e%o!`F*eG$5VSVt@~`A&|}cpW=% z4pGi1XFJ$#a11u~UW+$j`|$nfj%J90?aOu_>{h&s85oLA$bel8JBA&w*3&Qutr3SjXP)zC ztj1hCgxkRF15AYx8S=#V4@+ ze%25D~Ya&u4#f>F&K~FC9J@1{E0$D)<)J|i>|PB*6H{+Ho&gET|@|W+_v@D z!FUv}!shSa;w-9R$NSdki-$1>%V7KdL0p9mA{*dl+=KCW4vVn~Kf1v2} zu6nd|VE=!}LcEWUuoiaj z&}MAIPVB;$*n_WNe;WIkJ!kWi&tdl#e~LA*G0QU8*S7bt_pUp&-0-=4b@L$m`F_P7Y{2_?9nWAAhQS)$jHXBg%c{0Z=P~Gq8sN<;P8*IdTuyy%IaX;+b-VQd8^TNjUcAozOd$0}*@d9jHc>p#ZyahJb zPenLv{BP%wL-+<;@Dc33uDP&n@nP6CzrL_-v<;de6LwB=!B^wssF7cD0VnVWe!|z- zflXM4m9X)}LM*^*uzlhMJcnoTUw8`B@g$!3zu3p7!JfC*&4hj4^O%d5VPDt2zP-;< z*gm%g8}T{pTGzL*@y=nKgq>sUXQ)6eY`;uGeKd#t++ENcgD?_y?6gL6@CKG*4Q$T6 z7YA?x*(inW$9BH9`=#vn&>lTtYjO8u0%l+??B40+_yjxgJ#2mc46dRQF8;r|c+^94 z*cjjb->SRuFFb_Fm;pN$yoQCa_5Jm*`*-%>2iUdVWB406CVdu(Q&>pQ}->dCoO<>2r4A}l=KNr&rrwcWXn!2C4 z#8KkNLpH3(3H*rz_!0YH>uA<*1J+;#mf#)Oc?aMuI zD>}fA-!0J;jgW;D*zei)bvNu`3qH2rm!S~0OuLdfn4!aIbq~`FpQ^jR#MgK6c`xjoY+wIQ|FD_$!P6 literal 36182 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 diff --git a/assets/grunt_3.wav b/assets/grunt_3.wav index 0bdaebdd6a2be2d36470aa118c530a6c68410f11..c1372bc4cfb459116dd54d7791d228ac40f31cd0 100644 GIT binary patch literal 302546 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

  • !RF}+^Rjm8znbNuHX{vy3PgI+dp9+y9#dMD9L~w%M5=d zB(K`ft>&%9T~3X;+HkM83m(I0Ov4g<2>aQ7!e!WfZ8kREfi4(<*;s|$I13vCY)rim zwzm5RY)|qKQW0JrUe#|{`LOc&_#D5(i~7F$zCM_Sk8upes8><1;!(_ottn5#HY1u> zHm@9p#n=HGCu~m99ur_=#bM;3wxf2{crnv4lRI-ZR_$R_I4T@XolUFu$zOH8TDAXq z&Uw!1bU9tkFc@>O33k1{7E{Hk5)?N!Di$CcwchR?77 zHnz7#JaU{l&ZGDg^Dqpy=8Qm^Bh7ITA7VOe&*DzlUwFlTrD}e$(!a85-D+b-V>ofS z@^a;Ocn>e3AM7<3inNNfil49%i!cV=&JX@vDfqycnCHx2?N^{ zRrBQ^%YQ82g7;y^gzb+EMOU;!9oV&8JC|nT3QplL_FxM>!3TH~i!cY%F$EK0*K|h1 z?r9%^;jr_xy|wr4O9jwx7(4`9FRA)H4xJU)-FCR)Re|1p>g+h^X6<4A?8!c|cVZ7~=x!q$tn2k|p( zF6gRsRn|cVJPBKCe1KgzgM7sJWBe`gC?;VkKF3c;fo*u%I@Q)A!!a9nO?4-1?=u^A zV_;)+!3fO4N^FC@4sU{KjWf}e$Q9U@tX_J$Mq&ou!bW_LQ@90|P_8I52N@wb{`Hnzr?$E1!K_< z51>B6Q0ORhT*gn>hE;eK&%yo=KnFC2%{NQ^rT!Z@f!+8R%PRU21oAPnUd!R{}(^1s;o_HkQZ-Gm*FHpXSa=1q2u zu@sfClVJ#=kO=!3>}P3)dtq~Z+ZVR|!=V_3iI|4@SO(iKSdXpv4mQ@>dEfSktW7C` zxbPT{`nVep;ZfLeZ|g%l_Lsn#Z-R{hw(nr$fXxXD;PSitv9N!$R_KKOuzye6$FzCm zTlffDu@A@b7jDB|6TyyPyUoDS2(8ftc8(c=NwD$5=BV#sJ?wS154I;}_kmtRCcJPv z-BoMgYR+oThPVs%dbM$;4+g`=n{k)|+l!x%*I{$x_pt_cZRQKucw~Dh-{A-Rh@Wu` zzu`2_;sR_PehGhr|0d+T2D>)+Uv4;W{P&;jb5~){y$t(*GIq~_9d~DN3MXJ=;ZHaO z`}_A|7i^8T8JqA4K7{Q7*zfQL7Q&9%>39L-F$#8Gw|#;~@Gu^Po#&gO0c@`^4t8u? z%Q8oqBOmFo&KK}Ie#XDC8(U#>!ZlclWmo|FcY6^NFba>u{#|>b6CS|bxC3>Oj2MK# zg>rwnZNb^C0sdRCxyA*Y#xWehzwsSx&GHrOJhTD!dixh_Ua}lE&Md|P%*AX>$IF-k zJCE6%cPyU8C_Ihfust?gI}e5312PzcFc6Pnz<=25{{Qt~pR?!L^X=>G>+Sp4_p|T& z1fIeO*m3g=>}Rl_Wjvn4^RVOTCD?dr`#JVI%)xvtg#CVR!2bW0{m$>;Jy?e|Scmo4 zgfFlK+prxr9$QB{KCS5?Sl?e@txv-4rL?_+bGV30_#4+?TXRGkm^>f60vuYuhMMeyhDed-RJI_=pBFVt<-%HjAw DUT}~M literal 31966 zcmW(-1$Yx#yB^7C+*9{bf#UA&&f>0%FTS|@;;^{e;_mKRywtsElE&Re?)fkCqwO&m9W+)c30MCcH- z9~uj7geo8hR16hCzoA>uLTDt^0un%9_;Nmvf6Tw+-Mj$u@ilxD^an&kxA;r^8~z^u zh_B|QP%Q|9lA*caNNb@fV4DkVhu%SMCQFp*nbE3Spm^-7kDXr4xS3vhx@^E z;3@DxxCPuBo(J!SFT*?Fc5nhX-Z$tH`2XYK&F}>9GQg3D6Mh8Wfq%l4a2afeYv6o1 z3h98vAZFMC2jD_*%%*S#TnDCL4NSlY48tC%1bPKM0(asyvbBoWadwUEZh-^gj?BT|7xp}o+7s0Mw9{6KP$ z{YY1&6|w-?ip)d?A$^fyNF#7{SKx!-ZyEznglEHh;BRm)IQDsXCwv!Ne=J-BMZgQ; z7w|23AMAriBHa-!@&*14|AOzq|G_vi0a=F}1ZR7UTtsFgnMfFZ03QMShhY&Che#0` z!4U?&0Iszz+!Bs}?NA6J;TYHkodDz13bOOZ`L+B~{xV+%#?r}ap#jhWs0)NbX8t+9 zl^@A(=dFBws4dhBIt<-`PC{G2=xzX`JOmmC&4-3VouSrHUC0XdtIONDr`!f^GS{1{ z%{2vE9Ztsa>|1sct6@D%4Rf6t!N?djlg7xI-{BqM-r=~gJ@gH1FGCMQ*&#Mm89E*s z7$QT(!Nb9c!8O6{!3)8gL4R;>s5JC%Xk6$`NER**O%Lq|$-_i=PADa`E_5q2D)buc z|0Xytcrma(us0AF`0lSA$PL^JRQsR!hXk$#ng?e3`}*_!nStSf6@gEIfx)4{aG)^o zGH@xdA>i_V@iz(d3rGW2zak(EZ1SJ>jrMK!8NC-gL3b0+4o^?dTlXsWICrAk=5o9K zbFFk0x%#@3JO?}{JwH8dy>Gn+ug|-{x8J`zkQCGhnNS4dWY)9yxu5(YC>8mQPRIVk z=MWRfN-9P8NtiB55W6L~?6I_)G+o+NnkP9cJ|UVTN)(+Iwh{8QlU_vkqZpz-aTyB*4mj$M4{?c@>le z$)O~$9}gXZJ#c5_H?j}yB)BDr#~hd)e?p8VV<|7SllIVqg*SwaMDIoO#7!jcC9%@+ z(qgG!dP3Ssx?I{=RxRr-H^^@&+A8CfqZLv`ilVi`D<3KUQ*M&G<(uS9<-cT&WTT}+ zB#XtrM9V~C(RAS#x)*($DkSrXIN}4o0ykp^v8UK6tQ*!D>y1st)`8D{tRtR@H^S%P zGx0z0&R{PY(VOT`yd=7iTgd;&edIdwCRs>|skYP@>H?KXcc(=(O9d$t^?>?|+DUz; zK2h(fGt^dUDg{w*$rF(vSnCrnJ1X{n)Nl;O;3zQ;{?-B<1K^0@VMHfA5ayp2vzK;99Frz;zRk{ z@=+Cz@;hZw#pH^572C_tl>brDto&EW&EhE~oy+{?`4!u%MjCrr z%Irtoqx>VnGCm*GQ!^y_@^sCYsN-?&_=yR+Byq~#hYBF~i7mkbd?R5tz-HG?Sh0Q%0YW#_O%xh-5FdxX8nHfAH(WOg8<3!8$v zU|K-q>+NpotgwH!y|#X^bhXT~{IC>QMpL@5ycx4UM6}IOB0tTPD}8{U5M=(b2&;H`CWHaJ6MCLC8}?V zO!-%-TxtN)S)&)Du*h1Oe^&6b;%0oMAqC_CvG;%ww@?)CXD1j<4P`-qzi)k7YkFxDS`PxPhU z)7?Zi@pdU8@2l9U?5%pF(y3>w`>6|6b5w0q9aO2RYs#+57$vM+qu3_@DO(}yB)cOG zN`^~1NF3sF(JkRlx-+$xc!AM^6^InpK?C^>+$#18qhUIQ`-JWUrvz&Pg91$hR|8Nm zKDas9Jmd=X2_Fh~Vx(+0uAH9)UqXfncH=ilmRc`dChjX0$|7aYWT)g7`F{B-`BV9L z`2pD&*?L*A^tWUJ*yNHK;-=zeV!P;o=$z=Rs8V=~PN992n#v_w5i(*Pz5$EJQn9y! zA{0TVAy433C>C1JpXaLCMQmNx%q(QuGEEqIRWiQL-mkG;8m3=5%R$g4*vplMzW7SXn9{sGU##J%;-}+|y5&EL)tH#~c#OajO={X}Ic>gXi+ZP~rH<2X z)3nsI(KJ!tSKe1VklhhwlRUl_?~ZT7y@ZbbO24Dpkf-s5f-}fmxCiu$({f4NOisw{ zWb@fHE|J|3o)9`0JQ4H-r-d>?9fJo06@fQ_KK}RKf!--zjd!(YpJ%Q&-*+PrA3n#r z`DsWO>3%&|j!<|_ZcK|AeQ_+6~Ke0FX zC1Nw#nfi|s(I@FxVX6=ly66{l7QKn8OUWn;X(BT~+#W|y6>boX5Wf&V6fXv|78RAy z#gv5VOgJ@6A` zEm}{o2s=x}Q`4z`saezvvNo{=zlP`GxAE45mi&X1kk!OOqAQ+^Wnl^UI$S^`QV!u^ zaWjcp3dwd#|CFGT{t{C1Ues9BPt;uWOIR%ID#{UVqY03C`cZw!3ZjyzB2E$82$(!c zjKl9@ud&gXK=1@qV(rmiXg@&=b``T@-?43&S&)YwK(50AcsZz%2`C!6&BI{boZtp= z%h*%QdM2B>!kl2jOcZ;YX~aAUw+{~p4Gorp%48eJG@U_gND9me6bEVop941n>jH}d zvjdw06T!FXfgynjfd+v*e~G`?U*8|$+vEM}?c#0a(Rls^HOm8#jrO{IuGP-Ij#RM4 z+izRjSq0W(=5wYw#udg##vDU};Xw6KeO^_1)wasD6?tVxO0Sn5FP&Yoy?9!2WO1-C zsjyMu_5vi|k!#KCUXWWbyKr#P{Ne?AhL19TdRfLGdo(5h{Zm3~G{{ zL^^RD$B1*pG-5tpi8a7a;6nVpU1?s{2!gur?Iz#wDI9AkD{D)+_bfYX?zFq!M{!ad%ytBMOHdgjs8j{$=8%2ol z5j7Fa{chxE{5a8yzC@>xb?|d|EUt$evc=&9=0Hg2=e#!m%wXftQpU(%gkz9G!FZ}v zcuiC;IjyLt`k*)>*D8|asgiD@ZK8bP-{d*GDfyUsL+&CLlHKVL)sciqBRP>8O)dm$ zA(PxlY$tY+|5BwCN39iJ5mV9v=~B5`^_O~}npI6v%~39u%cKRORrD;fIq?|R;0>?> zK}YN^_5&mEPdG=MAwQ8*sf|pHGv@UE6pJFDlS6DZ5ID9E|GdMU9 z<9B-dd$YVBJ-0lFccOQ{cc_>4-uVBz?V7uRJKHIAoU^H{lg$pJ*pP1cWO!8lcU6z7 z4%M-S;;PdXfr=%S11n~g78Q*x8ei0^a7A9%-*2*`p2u^SMu%_b}RqafLoT?Y8<`XPrX>+XlOE{XAh%YMV#`g?pjo8yf^t( z>c?bd%Fwj!8UJN8%IKW=Dsw^xls+rXn|dPYL%ck;Fba#*N8F0M8j+^EqwS&fsK&}V zieCvq1jo)m2ib1nxZri)UQbhZN0-yl$R4z`t=Vn7VCYi)xJq9>y6j?^p!{1|eA&m+ ziDj3{lPi9dpQ?z~7a5OPto9N&8obN~pnNnPk05VTH|Q_IiQ+ZVx{6n-CE6bmzoUA_ zG>q*U3&+lm?HM;9-Un(mCUHzsYLX$Lcl^HC6VXi~yK7IV>!?-gWL1q~o1&-UrOY4> z(lKNT)*iXdbqu!*z`oyZt#gpAjis!nw`qXkg8pvRqN=@BXRDI*O{*UpWF|$;{hDFs z9CMaso#nD+lr?B8b%b4Ayovx7e$M9eJK!>e5Y)o5@UFyL@+y5ylp$Fu{VJ=i&?r|b zBUNTq1I;Y$Hk~%o6g4Tv67wQP6;m0N7RhSgtIsMg%2C-Q$$8OdT1xdN+F=f46*Q3B zz+4VF0+apIeUH39Jr~{gToJBKPNh@sn&)}yD+}haZ{V9)1^GlYRqB>Zmb8&v5dS3_ zM6aO+gW9eT-;6cJyaFxihx?$kAW3i-iZ7sGAr`Wh^bncs!Wc{Oro1qbD|DTVHSh{NWpw$4$>KYioGW9(KAG4 zl54UTvS?`o2`A_U*P3>qKk3g{ny~qK28(lk`U_$5&*R zN0)UgZdPzKZ*1lJf3S{1F1?4UENn<_R- z4D@Ea6a15z9$FVT>fP~)jeJJO5Nu5+Sfl?zi$1ay0WahnM>2`$!Q6Q;d`impl=+C;t}6V2*tn>g>;U&v1OP)hB9uq&ebZ1QSslIWc-!?DhEBiF=aTCXY+Loiqq^ftO=*qe~(ybx$>Y zRqN%wBzx)e_)8?r%?yYA*&fU_-%eUjgAp&(=T&|!e^ZKTI+^qc1bK zYj)V*dVUAihif<8j|l4KMzquo(W-TM5w9cXMixe% zh`JbgUUx&gR(CRjifkCUFOrKGr`xE>Rkc>ullPL%ln+w;lHZq2l4Z&w#kHy7#27qP z&>H%SZO<~yg;2kMIxsyj%HP!2CQuN53_4Xa{|)IX_yp=umiR)Aqi`yZ>PfXGNW2~X z7+;0I!H1Ids4z)W^Qfy-4>BL)1e-A-HU=Ogd-35Qk<=jlP#e+`Nk!fvv(bm>CP5Qy zjUWo`fyBTcxfM)JXjy1l@Q$yYcfI!r$SLbQq;I+ZrEipv3b+FG0s_CtopRT8 zr-AO+VBKeKWlpV`W+1Dxs>kV*E1Q=0C~s8$t@v=k-2yKEY0ijmN4}i>_Up^058k($ z_y2r6_F>Z7%D2-$)cUmUTTYeg>UlS?tK5phhHD$A9j5Re4PBr^!fg` z<-Z>mtt)LvbR8 zy<_*4T}O8~-=bH8K>Cw}hf!$6bnPQmk>b33fV7Ajfi~iMhxhxwy6U-lc=9}nZnf)@ zbFCxKI@8>_X1wW<;Z3#FP_O#misL0$3JrN-YMu&l3I~a?Kff8srGDV zmFI4thIs`i6Pcn(vaw2B{YX7c{YAA$^;LCQU7$gAZ*_ZgleM?iUzF_>TjgH)3*})= zkI2%PU-8Do$|PO#v802EdlK%(i{o3xy^r}X>YFZF{X!NNb|bzb8@c77BR+w9ru~)K zVi;K!S3a?1Y>~g9LBYp-YyRNE&c*FY>XyDPzfet>hgt79>iN1cr{P1GmYORQirMyC23YLY3)U+&?~Ngos3y@6 zS>>n_8x~isD_vV`EB;p0H8=TZTEmT~Hyq!YS zi*0ej2j%I8bcMC)h+HJaWoq{V+p zXz2^d5%E^xRC23eJ@hxTHgLo<&FQ!Oumo$8O!W+6eKF|x>XdqmI~H#&{#8;{wx@DQ z^&Qg{OTMkjzRUqRUpT|A*4|Hn)$B>+7@-l(lrEA}ir(@P>3qpBu~2+a{8`dUwp<>i z&?(x>zeqPqev6-qH%g|+f{K^w7CJg|Xw8@p&W3H!epjNn? zImpIxJf9%wO70Y5a<^`D{I%rnX|1!$>l^CTtsBUCP<6&33!AK;l`oq0DrmS zZR6b!I_M3ae!gtqegD6q?@R=%8^b{3 zU~61pHn~{aB>rrzG4&cE z73R`;k_M_c%`&AyJe8OS8`ZMw%W{u{t#;bvK zr=#rgby6;+HOC;Y8c%CR8!mpPEkJ z6FwGcKsWECXHn(E6MP09z;$FEHAl2d`d(pDLlMiPe9<}4e@5l%)~NrI4;6o*l8N3} z0R4sh1-IheVW0oG`+z;e5?^!4)Ujrlxq-EbZItbc^@b(UyvLMpoMwtLFR|`%bn~bK z$>D7*!KXoS@SiA0I7N?S3YA;CA@X2ENZT$#74<2yR^;v|e~c++Y4pA5|6(lB*^xsd zA4Y$Tjf(9bqmQkQEdW(&y9idNS3gvciZ1d-(p{qe=wwPooE1z*w}a{^42|ZeajlrS zLAQUO|G3}dZy1~t`Zqj}Im7&9Fiy{(f*S}X5*Q7O_KROjmP+q~?VEJ0OeJe3O_t_^ zPunC@B#fj;@2BP8&NaqW z<=X60IB(daZA~lzQ?cQ4wM|dymseF*{m=`l7wKQ>XI1;FN#kkbK4XM&h;fwZq^Z)> zv_@?1Wa(iUV*a-##eBoOwPt~7qiJ)^IP)oxWj0r@u9{lOm&cXs%I}vMO6L~eElA31 z_uKqSlQST*|GOl4pS=Nm#b5=p!7j*=+xTJZt%G0N2yveMUbv#3qFgT*Is!Vd0 zY(|}sZdbliW-Di?Qx!X?ztDMb1%DvCH)smo32h0?^`-i~K8O33>x!p|Z<6PuYp1iu z+Qrba;#paf(yHRhl9v@3;0`RRjIE5Qz{-x5n+#9vbplJ_)k3jSqsiB-)lSmJsVAs9 zXqm_nF^%JPB_^cQPWh5VBsmlA$GwPY6|*R2Q*^UvBBo)?zft`n?r8g}^W{4vV?v=@sw4eE_*@h(>P?>@UZFJqHJI*IJNsKd*AO*FO@wKMG1?fe)>qZ8JPP6u ztuHY4w9%f2fnLmh&H*^272#f?9-*G$@9b4LADc$OqH^(1$ydn=$vDYVNge5VsaRGa z9U>hh=`1c59TNR5nkBj}DiWOl@7W?ka!mSD{!X=7+aqE@M04GAbu0N2QG2ohhM_xQ z6m+u__>S!E&;|c>59*rlNO7!p1RSfKF6S=i97hv-N82>(|9Gk8*828lu6^D=0&sW| zHxfRJ>_9gV-^4z^ajujPQLa#CNPCKkMdu_RB{5Q3Y0?gfTo-vXdVO5a_^)yG6I3Z< zQt4!8!sdkNxZKEV+GgrCiZc?KXs~cOol4CEsPzkQzfy=qvVdAneI_LUVs}YfBUBVr#kel&z<2jPO(n(x zQ(;XHb1(CXnysc|runALU=_VGeKZ?uh8T^|UH+g{&;TgeksI zhUvH0oO5*doe0%qn{oBIxoive72BHs32zm|5@M=5-3!c!ERj*vO}s$dQ+!QSEqq8< zQd*?*^5_WTP zkquTRs5_~< zY4&Rqv@0~zG%C$x)qVvnkCBcR&li?cb*P18Lt+HrifrUs!T^|_>DUfzu)vP?5Ts!F zg0<)Z)Q3Jpd!Vb(8CVJNg!(SDi2F&uN>gQZW$Cg!X;bMj2_x<=7Kr?GIW>-)L9`*J z6N?BDnN4C8L0u<*60?Z~!~=XH_LqP|r=bZ*Aymz`<7K>;Q}XNi+k7)Fvs|R z`Rm*UR>kgP4usDIKl#)Ab$rddX8~T!dI$NEecOHW{fGR&eb;>}{n@?--m#tmoo$wcYMEe;uspWRHcv1qOgW|{Cb$}}$gF5p)va=9DOJ+1Y<=n5 zf?s*B3L6$REZ_=nmxfBG6n!YvlqyT}3RL-u;wPnx3#GZ6@|qU*$!nF9~@JUdq?v+QPL&A-02hD!wRrCZ;7~;Y#ccvJfDRE0HPaI)sLj*yG_D%uT>e-whoI zPY>S@Zu5DZ->nTz)2hZ-G^lJ_QMYV(`P0hD6^lxn1E#1`>D02u)rajf{WWYP{#M*k zUaY85xzr`^0>a~@+(Yn^U{So?z&sw#{ zr(ULd4paxTrI*A8VF}Gq3#rl6CMtp+OOK{r;m?r;Y;AuB=MKwH(;DLz!_Vr5)m^IQ zl&>#+QvAN~UEzk3;)*qfZ!&=BN;;1WKYd_=XRkJ1f<4Mp|D zIpUws4ekdJ8&zs7jtE?Gudg`Ds{=+bUVvJ|;WlPXHnO2sW~NBoY~lDA9e?OjY+(Vak5;jZ%Ynl4uw`f>?}Q5L`g-!wsQ*{1C1lb1YPs z*~)F?Lwr7bL2wV-3^@L`SPb3_dn6!nl4QwCl$$mP#|lr;zvy;CH;52VgkQu$={0FP z*+N-BI#aSt+)4aev=!(Drqepw50o|46iz>%=Dfu3!_;(D;GAYz-`iw*n?J zlbg!!Vj2J*|3|2IctrSVxSILO>e&=Fi%DXxg@=XWgKXe0pq^P92nF^8n+LB3x(81N zcLifYM?;p-_0ZhVf1&vB{P6P7;h-64ZOp#&?$6E(4ypaSrPORT_qU{2JT+v^pC+ww zO|?ots&aaH@3Nxud6hZk&r5Ftmj7tc;oQjIjdMTzp7^^_zPETy$>pLA#m3Uq;`+I3 za+c>Y`L}<^{JQ)*y8tUXP*9#%KmSmE{UUMc^HRD(Y^0&Tt`-0mwrEGLTZQfPZ^1s!!jLdSxMoj2CBsp8Pyg?iH`Jh(HU__(pu`Ke+U{w z822w*%`D<3L3vutL5(PC@J!-Ito>8Eb@3i9&_2mC!64Df(9=6*m+&6DjE~ zgax_EzW1+j#o3aH~2l& zm)Xc2g_~eA$ylLVL`(KboRWjmow9TCQHp~KL}8a5mF|>iCAB4P$q{KtIziS;c3J9> zcqF;fE%Fb_WPqZnB4Q&Xx*GKoBEW(e4A|VUcm2JSz2fCOROgE+;XXi-X zz}a{jisk2Xjrig4U2qjk1xkE6v72a5E~G``X%b2{Nbya%K~<>Qq(W3mkRM59rh<}x zkSIjQsK*42X9;Mu6_NuL@pt);d;+iM%7C_tIJ6;D z5Q4+?!$-oy!Vf~mkTUEGtq)&eaJC&wa;v#KPR6g{8U7Bm8m@qy0E2rDv>RW!hTI-@ zGUExi3TuO#ee*mzcRxqaQqO$4Mq`?%KUOK#3-voHdX@LDOw_lmdQy43YN38gm9nCs z+*0wVd`hXg^lF8!k}Rt%o>Wp?a;&If{>uE}MOnqVLPNoUk`?7=OPdzGESd-KBU%2P zJWJ7p(ow}_g{w;amBy;WRiyE!HP6xBwZK;sjze(zq*5OJccM7`M4drdMVX7!m!=Cc zPNzlH@~3uB8<1Kr@mlPF$l;n5ijC4-(Fr<8ZxoKA^N9=1?v)bho7 z7rSdY>p1p0J??{^LeE!EvO8eco2M9K^d~Atmb=UTESFaNT~SpLQ7NcQsHCczRKGVJ zu?_XC3@wAV6Uicx?4**{ICP&P&POs)?&$Z?&0|clOkCUe;qe*q!{UC#^olNwtQXN! z+fQRtJ5`&M*^2%Ok1SK#R@_FIKo#L8!2#3`@}>*^3^#$hLufNCX8?N z{j1smHf&<~jWS8u?9$bxm&(EwHvJQm*4Eb5(I*NWW)DLsIs)59^rz0#B|@QCERAnigAkl3ZZh5@{kfzZkE52;()=tCTuLcCHzlxOk7ve zTk=tSQj|-tClS0G+724V?hhUJZ}Z%6HnAHldcd?68O~Ne(YM$41!|}A>Se}VHRmjc zY$F^lXG?b-kJYosyW01`KP5OZe2LA3b|Ijvz!wtBfHr6~JyzI4v|ZduS}b=fmFif) zt`60eYEvV=MyDk`Nt<4KW8L!&#x#nr-=)se%!!$g(_SUFOzaZZD6)^Tjd&QDizf0P z!d(EG_McDYaeEBjY)__F>~9@7=Fjo{;cMYr?=5xRaozUx_xA7{_Y%P#q5GkX@E^=> z7Uw#$VfHmVMUai@iQhCS+9||AFSuATTGmQ&N9EUi)lG}28(9=JHCh*46Lkh)Z>zLo z^&a^!$t=+Tkl#6=2|Y;GAsM_aRxMZwSlYJ&J9Y`54iu;5ptcMnLTC=#ow*S@6A%DR zaKqr=0c`*ctO}U?aelpjSFle=1eC@Gk5{D(PO|d19N?adjiT)8WK+{p#TJ}a%NJUcbKtGv}tVQM_aqx5g zF^92nq0YVp&oXzM>y-1fE88RV2SFD9?QiT$@YZs(_UGW*tu>W318TmS9-I88E2de- z{|xsGZH@g+PD{`k_Tu3#a4a!R7?u>t+bY9KPBlpLpLT(+7pQN9(OJ=7qpBm9MD);U zwHmclSuXDc*w9ttXQG?Jee_Ezmuy9Z1e1^m=wEIZ+mh|eW^x8z3AceKL8G{>;rzf6 zUqjDt=X=L0N5Fo^7H@T!57vw`A*On!-=?8}OK9r2<=XDO8MqO?!5xI-1xa`nv5q=M z9}!lHT1$-5SMozjx%#`>rf#V=Df=j1%lb+GkW`DWh&zZEiN*>|R9kW_UL}}^4hLF& z5z+;@j&wqwqc6}E=qAJlsrfio9Y%t^{VBdW-a(!v?pLmS=MBdbI|Wp}r)^f-H9POP z;#%w(;Ts;95K3fDvw2(rZ-=@g2J}95jrc|V60Q`ll@LJj6D!>Zs?d1xbJ0SPKy*sD zOgLUB5YD14pdyw6{mn}3rERc?-EvK2z~VIaN7T-dt89St;sD z52qFZ9nA-Prr-k75<1EJ2+j^Vg6o0i{YU6S_$`>t9YRTASGbt*v4wmS;G!4^_d*{C zP6;wF6P`*cNgZmGeF(s$`R3Tl9P69f;lVJTR#Afk8Ni)f6@pUmRO_Oz%y^!vf zUY4v9wWUcane^c#ZWG{wUkC{!Jjp#`F?K)DhFX~OK;4!Y?jQC5WoSzHZaA752P#Bc zNXtxSvY1oMdv*XP;2Lq~cq0@Ge}&e-+mYVLSGWZ-2~89HB}l`jV3mSIpn+c`cqw=& z7>FtG`uI+)RIo*`3;l}7kxpPM5>88IV$ zEzeK}m1k8Fb$7K!eOI+rm9FZjj8Pb6jMOaIBAy`H57ePIDHZjN3=u2v7T9h<4jO+9k^qXeS!UNM}q6S zd#g9-KM~4h?r@i(`^ZT_U3?9ZPe##tda|&wsFC=YI0$A~iNqoqD+!6SBx#b@;_2eG z;(x`YxRGeGa6X+veI!cpQFtD<1lxpB_(Gt>I}dQ7sdypQ6x$&p=N8mI}HL+`^!nXzmJ_leue&xHoV$%q#z zMV|^5V@muvK7_CkOGpT)2v$*Zs0mbmil&|dXTlb84B3=yK<*?%K)dFluF@lg&xCFv z4Ai1+gpFtg^^)j^UlDkb?(kavBKwqi!7gLZhRvb=!2R-XK6-Uq{>159Hsn`eQ0 zYBpcN-Cz*Fr!qH>NjPjhYAnT z6|__6q#IH7DVFL%q2zx=K2SG)5~L$b;rmc)pmXR9lto{d@5~_<vxIWtCAtTFnfgU?!~o(Y?!z_i9$`$1t1$-6r?K+#nR?mi63(d4;v1P6KKhrCt!O*?BysC{}Xb>9n3>S^# zYns*&#wG^N(9T%L*xYC^^|f@ewzT-nCd+v1M(Y-<-qOd)+Y6mr9W(7?U6nu;_|nzg zmFlkL`e18nIR)ZF1Jg0X08_)7L&lYc%SNkdUX9u;vIShv{M{KBG63j@$BL)O4grV2 za^)kHOe@rF(Nw5BO0WEhG+z8hbWwa=)E{s`E2%ZaXtX!z2jWffG3Z$ceORMy#n=Hs(XvK zo&R|73A2ZXk)YrjxmC1QI!F<#KBH-;{i3aby;2z~laL#ZHcN}y$98;Yct^{`%&r$C`{yHI!Imy>XdI;WO7x5(GDAAP6qQ=wr zh1sG};$7l1;=bbTqNl=tglB}Oh0BFo!TSOsN1vf*(1YmKbXS0Yx2Ej?JDo+fp^~UL zDu!aof5>OVGW@yV8FCpq&pl*v0IGe|AMy_O6uZ_sn>teLb8JyI%vQ&C($?SJ(Xr5Z z!gbqS<%#fR_{09Ufu+Gwq0ZrShGNy68aNrxLpX?6P2fhrKR6EF4ZM4MkT&Qiw430L z0Kp^MG&V2O$33UUD{C%Y2k@m1J4!9H{b(gAJ_3HUec5@vL`bEs!< zdf+bb1O4mk;%n|3;X4Q_!V3S3z`P(I{1arjN#XC|Cd?0}oV7xK;70N-xsm=LsVBvR z9jM;IEXh}Kx>ze~t9qd_%eO09s75FzNPo!Mshr9)p#D!+O;=r4K2l^WPAlrldP_{A z&h$k5wV)^HBE{$i^dFQ$AAx@4AE*vAnLouwFpGh6V=nswtkDuKfnUYG2ptKH4<8I& z3S}}Mx#mz39EW(2186t&4^$wi5F8P_5)8)b0k70Z%!%#5bBN_&MZ%;Z*uf#Xbx4}Ed)5KlRHQm|WdB*v}*$2#$=H8dy?Ladx z^Un9&b+vHDJC{0jPJ<)gdB`=-$=TXj7hAs7^f7)h95lW)-Zl<4ZK^TV)G^0cf>yWf zh_$`-tNoDcq4Qsd*5e4`+!=m4l1{L6wy=TlgeXPYU)orDMvkeg)eTi$RR;i0QzT6h zbrQ)%ZfYuE)O=JW`GLgfwX~WtfS!vZ&k>`r^@8t$8gw9X3K0SSKpW&PYyxV5Q9!@_ zCHw?zu}AZP4d7F3sug&(PDHmg5=tG@yy|;xWVNxemnPs{mf8|D{Kls06wL`VNXaB@&>N@m-(K1mwI=4Wj@m1IdDCg z65ha+u`T)8&|-KI(jR?;$^`cWOR#Dz4nKy+6Y<1BT!rt#9Dt0x}uM8Ebz>32D9ula9NB*)W}g-2cLqPLf`qJd=b|l;BRM{ z2Vp-z6qO-=a7w6qxF^$&?Zu4*YK!MkZ{P(U32Ju~?Sjq)T*5!-7IX>P8fC!DeS}Ow zcsLu*gN<;(|9fiRA#S7uc>{d4Q^Bl`0IuFnz+an*-UD^$8o?Vum7oCRwLU=Y>p>5p zBT*H48MuJ|fdkNBpnmGbd$?TA$))i#_y>F>aLx9FZ^JaQ1hF77Xfw1oIt(3zHbFDN z`MaY-&{60Fv@IG!ULYHQhgbsqx-b#|BOZdQfeUyTEQhP1Lg*Rv8TdSV0;h8|xEJk_ z705Lt8~8b&BbNXYp#-bQ4V+nipuDQh8@at)7tX|>3V9V}M zP3TMLEa>1XLU+S|F&)@HK{PxF{IRQn*S#M+7oG{Pg&%@5M8cEc;Ycs^652xWQLta| z0!;=Z`U~~~cXJ}}y(K|GzB%xzPk~|pbF`ihac8*$+vNvV7C9J zuaQp!qSZL>c<&wWec;E51o@!5ua$3%@4heSOYvXxp9-`IRs>oGO8o!%6a9mI3BGr} zgMKV9An+?NG0H{wHUz&fC@1eJrFT#Jyf5Sg4zyulu>j!TKHv{xS9S(;lFt@`~ z!V4Jpp}*i-V0GMrNw6kM;4m}_V3+aGBj9m*3OMdm;0a#@jW z_z`?O$O7y5f#CN=TqXA&xCaNbb=cWVPv8Sj2N>t`(1XyjFwI0UO_iNC= z6i{P5hYrK7kh*~DdWcFfGnRvUh)-lPHJF-9b)gQCMq(>bjvFwGpeb>B5MQ|%Ywf2!;1*OA>0WSRk#HzR8 znFB>|G5ieV$7Apc;J%*?K21V2=x6kqU=`K`zlhf*o)L3N72vt7)F1Q&T0n27LS#p> zFYv2XU}Hg7yFgF}^txBkj%W_D5owG307qH`PY2H*5P;_#Ool>WbawIM`E;J+esV{- z834iF$bI3$Tnyio9{}!s0K}os+y~&_G;uA#-$4NPW^3>igT;sdor>N@DZv!MH$g*C z^YNGpcZ2t)*aJab!6h^vy^oASeDHSgTm=;v*H6$k@FavG;NETm&QAqc0YzL1NAs=u zHheukf=9sJKFuux+hK480=_vvhVRa2@-Mi)oR8fKkZLjT3^!qC0!K~>TZ>!A;b0|B zf$AUz!2x13HCQ-PybSbtlSSpiY+*BDfBHQ&i1HHzzC)0X4u?;JbCz%~SP|10_(&TA z_o$fZ!5Y|itP$w(X0u(GJpdiA2t|eN2aTZS$^*0M&+sVVJIxAB43a^Apm{JS_zQR- zvY1xPGRDKK173*QJaEy&J&`WxB*7l+1pb030Bm6f-3=fv6RCVMnVe3z@w0d&J_*YO z8EO}L2`L7nSqk{#mf#r~PoXIIZxEes07U8?R1aFnJGesrFpQ%y0u0-VnJ^TO#uf>h zVKeYEcrE-kHUX=TeHV-pWD52O?t<7gU+@lfBPz6wU^q4q*8-mU6Ol?1F(2Go!NXi%`LlMt8dw;*Rd#`<+^PIEK-g~We5C8jr-)rynSYu*t zdU$F{d^jo;jms5}c1N4zd8q@b7O6Mll5wH9NBm=aMQTFo%Jl8&i>zs}I6XMiMBJ@c zpiqIqh`^n+=scvxooa_R4vN)eDDHUZ4+7IrrdVk`C#tv>~rQ( zuFp=DQ~#ao9LT z`%kuLE-!axu5Rw`+y%Kzu5fO%WBX)3%bu3&>+YFpQC55nS6#&3mPHrEUEoZAD_OLQ zFW?Oq#Umw{JSqNFwnes3c3}R`Cx)GP@kF;1 zr=D1FyzBAnkC#7Q;rLa@8ysJ9yupd_C&sBDO+E38^(HFjx5;0TU&`2`{4=s|W{c$R z%8kxdWAk;R3!=;DWLj>F5#M6vi!xDHy&UX47d>Hyr>Hv%_QoyZGviz1YvRt)h}IZmasI>k`*Esw^8cIPEIT6GGCL>RIM*h(Bl}~vY3_mCVhH%(?A+{& z{;tX{%ntSBXkKn)?xox(s%Gy*4I$|&lI@YJnmd>sn;n?#mTjn3Fe!g@{__0Y`4jT5 z${%NCgF8;tK5@>8^V}JKM{X31r&Z&T{G z)WeYQKN!m=Sk-YWt=tX0&P=bsV-8tk<`k<{q^wUd-)b`F$r0wpE8=FU{%~f5)nAIG zkES-_PM@XTPIXK@o%+E3b8Vr@^jdt9RZ2cg9Z$8l7D{9dmU}Wo+3%dpu}s6f$8n4H zd9(Ajm>v8h@1z2^6c{YS=~$paf%^(nb7#r)yl#07@-E2xDYG@R6pw0%S@z9*h)HeD z#5hUgyq0R!%_o^RAbks5_fC=@5`PwNiVLP1q+U)B}>xWag)D%WTO^^6bp*nf{pyvX_ol>?xg|lB!60@5Q^L+oEF8tla6= zL6~T@ftJ<{Sd}f4yEpeZ|5=?|lzZ2jF+b$~aG&=(Vr{$lO@4cTt!#_OLZKdf=>Ou< zaRW^I*7$1oQ{N%hofV(%bvBGz7(YZmr(02Htmni3!A;6!?i4?_!0BQ7zS`(&)5a?> z^C!{#*62v?pIk|?{GzC7G>qT=B%pWzENJVjp8YD}x3 zUP<<}F`62+v6jg|cC{fofeZD3h7H-tQ}F~5;i6P0t1IoYl28qrP*qRAtkurx##S`y zi22sC&d|B(llbjitNXNNRn_p^z0h)1ywPZO#R319S>fld_z+9kfVu5~1TVw?uguHN zvtGmz*i{^oH=@faaB4CH>YRNBT1}zb{n^4WzrRTFt%$u^%=p8W7uAe9Vo@uj)8pD~ z^ON{^T!x4Lt+jC^S{rVr;{(wy`NQ1kg{X0K2V1RVhM;ZqVl)A>`8$gIHZr<1Iw$%y zHxVnWArd{BE1p~EE~e$$9x4i*$Tq+nmuYuu?mdxfFAnllZg_5f?itUIJ>#zbve9+X z8!WAATmhH48hc5{8>2#erAge`iaK#zQ6})P3hh&H>mBP+?M{_VH%&JYV+*BsrQWax z(rKRV&yyW|Lu#Y>>7_VW>-cs2xlpQR>KebE8I1<*zLFJHR*Zuf2Fk@Hm2q|uCKMVHY6)+eVM)|vnX?Z zUdOy?c`MCtP0Jge*8_@m%j+yd{o5*2N74_c7o{qv78_N$_fG(3RMDd$E2NcE2t<5?vZMSNG`?zb_A18h>w%sS>G5scXrko_wk;iB2?vo2{hv zH{9r(`82aDlgTTRS1|9W8r9y+Mi@NNfIxEiPiNPE9Z@5G4rCicmo)xXk)nPmt|7JZBqr+z1vNFvh`b z=6cyj6aDB9sVBzM;xSg(YOiWc{xFsXL8efBMo)4gG49x!1ZKtLVC{ z>|liPpPJeumV6;!y@aMVN1v#zHMKfd%cy#kj^^YZF*7$U+a_B!`*;4f{Db+Ym|Zy2 z$}|978IK+c?);ETxK;nvn=zC z>dd^%DC}}*W~^vhPK{+*UVh%iGMP+)&-0$J8roTTyBs-At)rgR$-YkyP2a?dzjw9w zS#d93*2r38)vR1qo>$exs;^De;sIB~;ZpWAhEdB>MKIhU>9y&TGM9?|J>*BPXFkY$ zL>*=2d&b!hh62Y`?g(uXPc-vJ3T5r1vZaQ4^Q{8N?hG^k@PI}iXY=a za+wp*=#ywhv=Cn%EyG_E{eo$pF6U_zcZ-L@sAI-H06)3Sx@}+cs?XCCMV0=l2*X`> z9!q;uEWRZDvMeGRjC+_HNWVSwE+jXSQ#ZiI=uc+VSk> z?5A++QER2O^Y{Ji7ul`ym802%*^HQ3iA4-^kKI-By(!U7s8tqX-4l0(I&0%!z4wiZ%a^tICuh*{=B1c(sh)kfI!{UBY*IL)#9J?g??D84E4u&e-kI z93H%bhZlrpcl&jSIQMz{E!KCstM)ekmlfrnu_oXA^dg=$-}-fri79oVS23&cmGu5+ z64ky+O=6KRr21fO&xvhg#I;{j|D=vu>F-OP+?&=PvGUvlw0kqYa|}{UhIY+G;o5S{ zYmKjY;!mF&s~#+piqF#ota zaEHwNOjj9+&y{2&?~=#*RFK;5sU22OTnQZq%k^uSXFW6Zm!oEj0VCzkqs65k==v=E ztw?IsNusIIf5w+`Y7q~LBQN3JAE&=eEPp#*xR%Av;Q`}$?Fd}GKhF3pt$pl>0-0JW zY;WMu8!|goMfXA8&*1*`nLl7>b2#_4cyVLuh}wQ@OlQBC{1O{%5Bcj_>8~90FCSeR z)nL;Dp#QJz<|-AR9`b}ytbQfrFUB4p73=0%XY#L9VZ5W3h}T8kWWK)bm*Jk`sh?9b z2i(WDJ^c;OdKJdjaoo>rwy}}!ND#JpT%RVdR^=%gpNs)*)|c5lb_(t`Bl_6;Cwedn zV!iL%jA(hZPfg^0b*zQ)(fCTzY=RT@#HQM^yRIbs7WA2x`jJhZCaRXjRxh#^;xf>Vcp&0x-@;dcF)83I;gh3BYT-oFMEtHw&GqT+_HJX)!tVtn{E3P`}!J7 z-{xw2Qh%h5*$!DB^ROuVIZx~%lGXO?LOp%y%s&RCo~Orw{Nw|<{5-2*ekVfibxtAo z-4;scr3+#Q|EOX9!h^Chk@My7)ofRp)vAt@T<-5JxO*dcL393CULE}_ETtj)F32C| zi%QSXVww0DHn&`kJQ34=5uQeE`(KWueBi~UBApXABqL>azR67r0l~;QD;TARht}N_LjJ&@bd$3G@X0$ds9Gyo8kMQR=pz%_xRu<>$ zUFh#Ca@tAGv!OtHk>g}J&q~`=I_eE`>#06Qs#Z(!<=5pu&E+B2MmJ!gk43MkBQ>TBsIFtI(UHP$X& ziIKg?n{R}?KgI8|lPWU*gBa@)ncwqj;YFiOxyiYw#sBuX=W`QsD`X&LWFn6l>)ZOb z4lbN5o4G8m&w8MnKoFrs}~|QCVs^mRpX-OGDoX z>)&ABU>!_Z3l}zeeZwk;ibzf5gauLu@$K*8tt9!U_rUtssnza?_w(1wtnFDL z^?z26{hsx|%4V(+9sb0+mqefQv6+eIEikh0MT{+ay$7Zpl7*ZrYFuaKp02dNM!sH; zRezy3hh%0ItipJW*9GkPPcmCaYO7(w29leRngYoOSYz~A@6Q-tS6%SvYn$KT{v4_^Yu#TA96vKRtg^o#mHBhHy-I84;l+it zf0oyEyt)^LHj003Cc9GUda}q#BFfMB^WOBX^Z`+1QF=ytj6OY~Z{@6|yM>gdu+Uzq zhgiVn5d2*82*tH>E&IDgF5A$Un#1oTrUQ(VEupO5KKST!POWzy#K8|B~c(a`|9YQ{>gWi3T$_$O#Il;j)6mEq4( z+-@P3H$=SZB7<%X>v~4dM9)Rfny>0;>k>T<`#M01*6N-i|7_&Ac77Qk#%zd=tApJI z7sk;~Mm|^Bh+6W=_N*k>Y-1Qvjm;Lcn(jJ%p9r(MV^}vOnPyRbv_pk*BV7GfO>KYT zH)*`2qPj*$nZ&zlHs84R*X|P^i;Fz1@9lY1AJ>^n8d(@{qu4Zpl#jR(U{r6R1V^(yqMFM7jJ+;5KOFW=Gv%%HudgNA_8lB^NXQ za*z%-V`1O(->n$HZ{kAClk#9xMup~(&%62a)&yODgQr)(kRE(^2914V{42<2ZGwKA z{at64ca?94Qw5=T<@BxTX6iFfdUZ-SOy9@j+;^fXS5?F>s6M(M4jjM$is0HMX4^JVYok4{z_vDy2wvF5 z-5ZaKVilqPH?A>A484ctR^dGt!H{CM3&qN6_I87IW3j6>r0@rhbr7C?OOF#-#7njz z^f_82UO*3FrRiV&z8C7GV9O=^^L{hux3Phc&!CajaN>IP*B#>1 zOyhYC3!WB#Me;|*;u~C{J3p9U46~9LFwqEKf>#~+e`Q)t!;jszy>zmdKDLw1S{(md zv2P1Wg+6W2tKIUOUAE1%x*>^;E3~r0YS_y#o<%-?>&zbwMC)&ndUxER6}$`8 zz{cvw9Wj{UB=-S7{emPni}O2;IG+@MCyB2`n_(hTD@WH9DGKxZwfyaaXq;_kv`WrW zfbOq?VGUtXA1L*@c4ugFkv=Yka~sI>4;Jtj39X~6_r$rjn7~8osgFXh-f*Ig%&sQP zxDCtdAyfK*ZOpSxu}v`2sm>Z?d(!dE)N~$9swV@~9>(kU3R*g#u6B_KP+J6O!ZzB7 z9^LST7e(~R_}8bTI~VTE!p}yD599IsSz^}*@a{>G{N)B1U-)gSW$`yLk%LHdG zR^bbtxg1ih^zAd}j(3%J%}(@?tKLSxRlRD{cn8|-LvNiDyuX!xZ-*k){a#V5J0>6h zlfC`G);8$(0($wFw8nXTN?wat;CyyGoS(diZwyOV?HBegjF*$$c+!1AmNAf?N6`NS z$oLWoc9WO(v<;)>cN{gAWejt~Ajh^R>09N@)x6gs-}a7w-Em_@kwq+eBaI)yXn-S~ zZ=>^tdhnsMM>uApetqh=?~>!v7{IOYq&qg&pN;l|5W~q~6r25AR!`^Msb0zFtEw0Q@^ghLTV^X7Wzrp;f zGwn8nYb~_XjRph8-A8}7LWhR57(Dl0-)i%?kpIU?_Oh1Nmf~U?p~c_sEeQVu;TPDk zjP@q;zxP!3Uf}`Hi7?Ny)JN&%8MBaYvga=##Y%bMdgm{t_Zj%}WYQf;7kwSm&wCel zEi@D3ZjnpYi|Rknk&H`VQ}S zjX(5Aa-xT!*$|#H%82JVZxJcafzgXeehoQ%#e-%W%?KKLhGs(jrJ9_#EVfcAsn%Sa z;MmQo35_69D;U!e$LbB$hS2R~SUAg7zjV!&y!Tf&ag^t*A;}luX>C4M(G~A@<)`%P zZP*o}#DB=?D7JnnglJ*Z&9Ld~Ax%2vmV$wT}XFdyEUMTesSp}Oqtm;@&pRXf~ zrlLVhdje-@3)SyqZ8wre8LgkC^?#DqLzG&Z`1NmCQN-T@XZur+f6?+<9D}mhO(4j_S_wAZ6Mnsnd4$|^8kRc~`YaJc=6Ed?N9JO^qoLejKF|`& zsn2U}BB|1(8suA=Y-%PEzo9EvA?b7M4Kll&2Ctxnv-nBAJ|6V?n`NCU8!PRXy2ksY zmPd(D>(!Nx`_CSy`#&b9s1Su$MqT|c`Oxop;(os#^X*Tlxeh{3B*8wU)PcMj(p~LD zMwRueWYVv*v|AFY1bv+l$9J)>EGZR%jul9=oZeln-#6hYb)El!v9%x*_xnMDXIWgB z#q8JRb8@Y$uT>L6S!D#BlEOjq-pYmKmOQZabg zi0k`Qm7N!1joQoZ!q_XtkS-2mkv4 zCM<{COL_k$`;X96K~;*gwNQza0!w%r8|^E4_U1VQ`A%QZ8s!LUJYz@gm zBpO6cV@T;+-gJZp&mfbtdH4AV^SOjBgMAfJ2ilaN!7NC+0CIlk`#QL=*~q^)zU_&( z{$!jBMUY`+9dvOQ{#HGyisz~3{Sy5spWP;lJyqqZ91Y&+h?aUC&~!OZI-ONFF!CvQ z)mC|WxNl%HFPXu6hLFzVByyX$ay5@H1O2X|vpd;L7xL=M&xVQS!*PP);>v5J_$=fJ zsOFA#hz=-c}z2!kPFsghuvu5DK^=O{oW3v zuIGW5vY8U3bT-YD(}Vijcp8g&Ghykk=*Qqhi~ZDC2J*j=a@YZS*v(a1iH86FN1QWp zg~j6NlUR3E`l+A~W#vxw;r**3%1<)Il15k$nsjvbORhf^%lr&xEKyHgrUymu$5t>(WANo=w@m**j1&Jx^cw@kLM>R+h+U22B+GPSjHVZZ^*X%eJ-+$d^6 z|5`lZN_j|4y}aEk{1=%}c@BBY9Z=vVd+Iv2nJPx$NG)380W;e3z#m5IbYLI9dxXe^CUd}#4HW2>P&2^Bd z3l9s`zAq9cIG3EpknIa_s1a+roK}yp?5VEZk5@g;r@Cspm(QKF(OZV}s+K3?4xeE^ zvvG>g^m#G=2od93e(||2f_=%!AR5jJ&&N9duo7;*;>xd00Y z(JDl;tt7CH$Nnr{77?SaNOdwnf6ZD zNK3kC32{5)vqSYMM6GLh*mdlnWP&?67@hUYQTp4OaFW2M`_V-Y8tEq^8lEt|_gF+g z*VQEVgLZ%A!CN8ncd%(a1mkb3l?%0iL_%S zPx0gzy!!F(aDPn|y$aQbL$1EbsOO1IGoAOf@7r;J1G4>-VP`p`xQ^dE=sIo5x1+y} zpimv0xD34%W96rcnum<~cc`~t?EKTW6WTB4{J;xCt>7N#G)z3LEf({F`I%36^#qRs8ijzS=;0_wk{&?5m4j4~07u`QRw*A|T>G@w~4suQM z6~)2xwEb^gs#p>M%Gg&WLE4)B)`krAyx*PVK-G-!D!ML-i4>Jr1P*XQJ|AJGCE0LQ z7}1D7y#NWuC0X?p>}NDfe<@*PEulsYc6P27kI>i#RvlRMeDQt-&FxIM;W14041Fml z$GP40+OW>9Ftn4aJkMvIrlF_pX~*W9`TZU;sGl&<7LIwGJr5>>vDnWB{N{w3S&{S^ zUPaS6c(jr4Sr^~6o`%Zz>v2`Se*w-_SgbgW4Tri-$p5cklQ$T5;B~FVf-bzJCylgD z+I=uV$lKUQsLM37uM2L|)e)WbZvd^mkz}*8)fpyg@qLjj+$R){X{EP8qPJ?HI=Nj2 zA&RrHlX+l9KQd&S5q&esz9RqQTZehu780As>OZtiX2~ByjLC9`nQStA4^}=CHZ9;0 zTcN-{x+#pCm8Q}1;$e-Xc2rJ#MKSo0AABcvui!;fdBp3y{n^CFI`j0->M{@F992cg z3iv~L+0n%!Ruy&E8uHRQqG&DeHO)U&HS1bazIumhZ(ErCMB=5d>($bPEf>^-@ZaL< z;FS$n_XBLIHrpzX*9MOL7f)IaaYF6teclCKBv|V_2sQ?i3^CHa+VAMR2BdYT%1S-bsZM66 zB~Sc>JMA~%KffugoS{Zm&M%jf+`Z1~lZ^FC?SCUb{LENGC2y=Nf0}4{qN>hQ$(+-( z#`G4M%!h~D_{mY87l|#W&|@A>@sE8wVcD84xgVX)0?d~Gck=>{Qo_@4EGa^#*}91=OjHE>5BcK zbI5)=Lb|pPth0FB!M8`ruB9v9uXpue{Jq+2t(T#u`KY79w}w8qf{#s|(aUv4!QD{d zn&9e_VDEJAV==Vh&_B$5Hcs&DPN)?a#GSIV8zFi{cyN+z;}BlIj%{zC=TQCrfu8?{ zL`89coH+RBG`6EF14*-8;jY?VxQM0zI8%WJRA2q)47G<*#XzykVNTS z$xOg;)^=DP{ReB>|G&Rs)?_W4o0e2AL-q3Cn$HYYAF2S~i`DyBsO6!Y^PLzUc-R<- zF%ee@74T5W3XCaKD;Fe|9WZdav20}J-)ZYFm4j1lId;CzF_RoU4350W7ekiyC_fGe z&|IF^0giR!D{sS}`3ZW2+3;O@u{jy{7kqSLa{h}jr>oaHUKPugd zqdVD!I&^pOB+QnF3i24oj#jOE&-+;C%p;*6wXz!$|2sz(?pmrKMm6F|_p#1UpDD%D z&&OR$^Z&}eR}!tOz>+G-tVv*8m$Tq9NzA?wnDSFT1U_w%KPv8;Q=sMfHe7v?eqCX9dt@AKDCxqb`78Ooo> z^YS?f;)J`gzgBDh(VY}q@Q(GqPvYBsoZkvV3pr${j+9OE*ANMV_Umh>h2O&wjf^;O zxxi+EXWs1h8qlSReqCbpVO%A6Q&D3J^`VM>eGu~xTw^H22?#Y+UqYQ}S~ADg$rx@R zwbF?n7BR+xB87jyfy;(U;`t<36&{58cc`Itgy7v0hVl%2c^K+mjRTc~%%?dc%r&j! zn{()Y7OM!e6(QdVS->8?e4ZZN4z0S9&C5{eU8ouOP7@=lgjHn|1Xu?j0^genE56_# ztLQ&e&`TL_b4R~MzN5)^wDaFFis4Ca-(OsL7Sc6>gg5C^_|L_Aw7Y;61s)$}F-EYg zke!8R6X$pZ#0b5eqo3nh>Kh_n$RfiG%e>^M+5hu}Ir_3e%nP`ZbN_Xa@A>TM8q%qm z=q*U_ERqZV>3B15{>ruII6G`JM94)f`D?E=ep>?>Le8}vO8lN6&n7suNE98X_3*^w zb9hD5_+~7sRC33~g&4tg@}yh%`5oePsBQJO1=cblVHtsGgvh^8%j;m-W>VV@4ZkD7 zwIcOSx(RoQ9EYeUymBl%Fv!3UPKCc0@~Y~xtB~E_#3m~H{(o#BaPUxR8%=^Q-~~P5 zM`t;A$h@C|FQMN3B7c4k(hPu1VRmr3k$&Z`WWREe2ySqY$b4YJ8 z?DP`8dNWIG&boSvjlF5PM-toGCUNXBk?av(aKC<)A^Wtu4Z?iI9wXf8wbix1#l6BT z;$jk*2k`^fovtsl5*wW6`&8Hx=E}mXW0?7x2!kh*+GzWyv)Dy+@HMpg3DzCauP{G* zDgEB37G`bMk=SOv`jdW1pPYeGKNt#Xj From 9807f180e5161a6a5e14505b334d7f8cbd884a78 Mon Sep 17 00:00:00 2001 From: Phillip Trudeau-Tavara Date: Tue, 22 Aug 2023 06:08:58 -0400 Subject: [PATCH 2/9] Stereo audio; Linearly interpolate samples --- main.c | 47 ++++++++++++++++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 11 deletions(-) diff --git a/main.c b/main.c index 2f625ee..d5d4b60 100644 --- a/main.c +++ b/main.c @@ -312,6 +312,7 @@ typedef struct AudioSample { float *pcm_data; // allocated by loader, must be freed uint64_t pcm_data_length; + unsigned int num_channels; } AudioSample; typedef struct AudioPlayer @@ -328,18 +329,19 @@ AudioPlayer playing_audio[128] = { 0 }; AudioSample load_wav_audio(const char *path) { - unsigned int channels; unsigned int sampleRate; AudioSample to_return = { 0 }; - to_return.pcm_data = drwav_open_file_and_read_pcm_frames_f32(path, &channels, &sampleRate, &to_return.pcm_data_length, 0); - assert(channels == 1); + to_return.pcm_data = drwav_open_file_and_read_pcm_frames_f32(path, &to_return.num_channels, &sampleRate, &to_return.pcm_data_length, 0); + assert(to_return.num_channels == 1 || to_return.num_channels == 2); assert(sampleRate == SAMPLE_RATE); return to_return; } -uint64_t cursor_pcm(AudioPlayer *p) +void cursor_pcm(AudioPlayer *p, uint64_t *integer, float *fractional) { - return (uint64_t)(p->cursor_time * SAMPLE_RATE); + double sample_time = p->cursor_time * SAMPLE_RATE; + *integer = (uint64_t)sample_time; + *fractional = (float)(sample_time - *integer); } float float_rand(float min, float max) { @@ -2878,29 +2880,51 @@ float decode_normalized_float32(PixelData encoded) void audio_stream_callback(float *buffer, int num_frames, int num_channels) { - assert(num_channels == 1); + assert(num_channels == 2); const int num_samples = num_frames * num_channels; double time_per_sample = 1.0 / (double)SAMPLE_RATE; - for (int i = 0; i < num_samples; i++) + for (int i = 0; i < num_samples; i += num_channels) { - float output_frame = 0.0f; + float output_frames[2] = {0}; for (int audio_i = 0; audio_i < ARRLEN(playing_audio); audio_i++) { AudioPlayer *it = &playing_audio[audio_i]; if (it->sample != 0) { - if (cursor_pcm(it) >= it->sample->pcm_data_length) + uint64_t pcm_position_int; + float pcm_position_frac; + cursor_pcm(it, &pcm_position_int, &pcm_position_frac); + if (pcm_position_int + 1 >= it->sample->pcm_data_length) { it->sample = 0; } else { - output_frame += it->sample->pcm_data[cursor_pcm(it)]*(float)(it->volume + 1.0); + const int source_num_channels = it->sample->num_channels; + float volume = (float)(it->volume + 1.0); + if (source_num_channels == 1) { + float src = Lerp(it->sample->pcm_data[pcm_position_int], pcm_position_frac, it->sample->pcm_data[pcm_position_int + 1]) * volume; + output_frames[0] += src; + output_frames[1] += src; + } else if (source_num_channels == 2) { + float src[2]; + src[0] = Lerp(it->sample->pcm_data[pcm_position_int * 2 + 0], pcm_position_frac, it->sample->pcm_data[(pcm_position_int + 1) * 2 + 0]) * volume; + src[1] = Lerp(it->sample->pcm_data[pcm_position_int * 2 + 1], pcm_position_frac, it->sample->pcm_data[(pcm_position_int + 1) * 2 + 1]) * volume; + output_frames[0] += src[0]; + output_frames[1] += src[1]; + } else { + assert(false); + } it->cursor_time += time_per_sample*(it->pitch + 1.0); } } } - buffer[i] = output_frame; + if (num_channels == 1) { + buffer[i] = (output_frames[0] + output_frames[1]) * 0.5f; + } else if (num_channels == 2) { + buffer[i + 0] = output_frames[0]; + buffer[i + 1] = output_frames[1]; + } } } @@ -3149,6 +3173,7 @@ void init(void) saudio_setup(&(saudio_desc) { .stream_cb = audio_stream_callback, .logger.func = slog_func, + .num_channels = 2, }); load_assets(); From c3a4445dcdfe7639fcd88879d3e8adfaaa43332e Mon Sep 17 00:00:00 2001 From: Phillip Trudeau-Tavara Date: Tue, 22 Aug 2023 06:12:21 -0400 Subject: [PATCH 3/9] Fix GPT errors causing infinite request loops --- main.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/main.c b/main.c index d5d4b60..b621421 100644 --- a/main.c +++ b/main.c @@ -514,6 +514,8 @@ void generation_thread(void* my_request_voidptr) WinAssertWithErrorCode(WinHttpQueryHeaders(hRequest, WINHTTP_QUERY_STATUS_CODE | WINHTTP_QUERY_FLAG_NUMBER, WINHTTP_HEADER_NAME_BY_INDEX, &status_code, &status_code_size, WINHTTP_NO_HEADER_INDEX)); Log("Status code: %lu\n", status_code); + WinAssertWithErrorCode(status_code != 500); + DWORD dwSize = 0; MD_String8List received_data_list = {0}; do From c054ecbfa964c6d8f94e541b205265cc23ebd8a3 Mon Sep 17 00:00:00 2001 From: Phillip Trudeau-Tavara Date: Tue, 22 Aug 2023 06:15:56 -0400 Subject: [PATCH 4/9] Use one custom assert for all code --- main.c | 15 +++++++++++++-- utility.h | 44 +++++++++++++++++++++++++++++--------------- 2 files changed, 42 insertions(+), 17 deletions(-) diff --git a/main.c b/main.c index b621421..9df3d27 100644 --- a/main.c +++ b/main.c @@ -28,6 +28,12 @@ #define SOKOL_GLES2 #endif +#define DRWAV_ASSERT game_assert +#define SOKOL_ASSERT game_assert +#define STBDS_ASSERT game_assert +#define STBI_ASSERT game_assert +#define STBTT_assert game_assert + #include "utility.h" #ifdef WINDOWS @@ -67,11 +73,14 @@ __declspec(dllexport) uint32_t AmdPowerXpressRequestHighPerformance = 0x00000001 #pragma warning(pop) #define STB_TRUETYPE_IMPLEMENTATION #include "stb_truetype.h" -#define STB_DS_IMPLEMENTATION -#include "stb_ds.h" #include "HandmadeMath.h" #define DR_WAV_IMPLEMENTATION #include "dr_wav.h" +#define STB_DS_IMPLEMENTATION +#include "stb_ds.h" // placed last because it includes + +#undef assert +#define assert game_assert #pragma warning(pop) @@ -179,6 +188,8 @@ void web_arena_set_auto_align(WebArena *arena, size_t align) #define STBSP_ADD_TO_FUNCTIONS no_ubsan #define MD_FUNCTION no_ubsan #include "md.h" +#undef MD_Assert +#define MD_Assert assert #include "md.c" #pragma warning(pop) diff --git a/utility.h b/utility.h index 6e59483..dc00fab 100644 --- a/utility.h +++ b/utility.h @@ -4,29 +4,43 @@ #include #ifdef WEB -//#include #include -#endif +#define game_debugbreak() raise(SIGTRAP) + +#define game_assert_4127_push +#define game_assert_4127_pop -static void assert_impl(bool cond, const char *expression) -{ - if(!cond) - { - fprintf(stderr, "Assertion failed: %s\n", expression); -#ifdef WEB - raise(SIGTRAP); - //assert(false); #elif defined(DESKTOP) - __debugbreak(); +#define game_debugbreak() __debugbreak() + +#define game_assert_4127_push __pragma(warning(push)) __pragma(warning(disable:4127)) +#define game_assert_4127_pop __pragma(warning(pop)) + #else #error "Don't know how to assert for current platform configuration" +#define game_debugbreak() (void)(0) #endif - } + +static void assert_impl(const char *func, const char *file, long line, const char *expression) +{ + fprintf(stderr, "Assert fail in %s(%s:%ld):\n \"%s\"\n", func, file, line, expression); } + +#ifdef NDEBUG +#define game_assert(cond) game_assert_4127_push do { (void)0; } while (0) game_assert_4127_pop +#else +#define game_assert(cond) game_assert_4127_push do { \ + if (!(cond)) { \ + assert_impl(__func__, __FILE__, __LINE__, #cond); \ + game_debugbreak(); \ + } \ +} while (0) game_assert_4127_pop +#endif + + #ifdef assert #undef assert #endif +#define assert game_assert -#define assert(cond) assert_impl(cond, #cond) - -#define Log(...) { printf("%s Log %d | ", __FILE__, __LINE__); printf(__VA_ARGS__); } \ No newline at end of file +#define Log(...) { printf("%s Log %d | ", __FILE__, __LINE__); printf(__VA_ARGS__); } From 90ee13a929f2c4bf4a6402d0d9f8e09677cb8aa4 Mon Sep 17 00:00:00 2001 From: Phillip Trudeau-Tavara Date: Tue, 22 Aug 2023 06:16:11 -0400 Subject: [PATCH 5/9] Add Visual Studio solution file and use it with 10x --- 10x.10x | 2 +- main.sln | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 main.sln diff --git a/10x.10x b/10x.10x index f7935a8..797c393 100644 --- a/10x.10x +++ b/10x.10x @@ -18,7 +18,7 @@ remedybg.exe start-debugging - + main.sln true Debug diff --git a/main.sln b/main.sln new file mode 100644 index 0000000..a810336 --- /dev/null +++ b/main.sln @@ -0,0 +1,32 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.6.33723.286 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{911E67C6-3D85-4FCE-B560-20A9C3E3FF48}") = "main", "main.exe", "{AA54BC1E-3360-4F83-9947-C1A78675D72C}" + ProjectSection(DebuggerProjectSystem) = preProject + PortSupplier = 00000000-0000-0000-0000-000000000000 + Executable = .\main.exe + StartingDirectory = .\ + Environment = Default + LaunchingEngine = 00000000-0000-0000-0000-000000000000 + UseLegacyDebugEngines = No + LaunchSQLEngine = No + AttachLaunchAction = No + IORedirection = Auto + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {AA54BC1E-3360-4F83-9947-C1A78675D72C}.Release|x64.ActiveCfg = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {8FA0C944-81FC-4BE6-A866-162F58D74D4F} + EndGlobalSection +EndGlobal From b35ff295e43738c54aa5b7db5d04d00fa5fab17b Mon Sep 17 00:00:00 2001 From: Phillip Trudeau-Tavara Date: Tue, 22 Aug 2023 06:16:54 -0400 Subject: [PATCH 6/9] Go server: Use embedded SQLite instead of CGO --- server/go.mod | 13 ++++++++++++- server/go.sum | 26 ++++++++++++++++++++++++++ server/main.go | 2 +- 3 files changed, 39 insertions(+), 2 deletions(-) diff --git a/server/go.mod b/server/go.mod index 07d4bcf..691ce3c 100644 --- a/server/go.mod +++ b/server/go.mod @@ -3,13 +3,24 @@ module github.com/creikey/rpgpt/server go 1.19 require ( + github.com/dustin/go-humanize v1.0.1 // indirect + github.com/glebarez/go-sqlite v1.21.2 // indirect + github.com/glebarez/sqlite v1.9.0 // indirect + github.com/google/uuid v1.3.0 // indirect github.com/jinzhu/inflection v1.0.0 // indirect github.com/jinzhu/now v1.1.5 // indirect + github.com/mattn/go-isatty v0.0.17 // indirect github.com/mattn/go-sqlite3 v1.14.16 // indirect + github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect github.com/sashabaranov/go-gpt3 v1.2.1 // indirect github.com/sashabaranov/go-openai v1.5.8 // indirect github.com/stripe/stripe-go/v72 v72.122.0 // indirect github.com/stripe/stripe-go/v74 v74.13.0 // indirect + golang.org/x/sys v0.7.0 // indirect gorm.io/driver/sqlite v1.4.4 // indirect - gorm.io/gorm v1.24.6 // indirect + gorm.io/gorm v1.25.2 // indirect + modernc.org/libc v1.22.5 // indirect + modernc.org/mathutil v1.5.0 // indirect + modernc.org/memory v1.5.0 // indirect + modernc.org/sqlite v1.23.1 // indirect ) diff --git a/server/go.sum b/server/go.sum index 2489ef7..e342be8 100644 --- a/server/go.sum +++ b/server/go.sum @@ -1,14 +1,27 @@ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= +github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= +github.com/glebarez/go-sqlite v1.21.2 h1:3a6LFC4sKahUunAmynQKLZceZCOzUthkRkEAl9gAXWo= +github.com/glebarez/go-sqlite v1.21.2/go.mod h1:sfxdZyhQjTM2Wry3gVYWaW072Ri1WMdWJi0k6+3382k= +github.com/glebarez/sqlite v1.9.0 h1:Aj6bPA12ZEx5GbSF6XADmCkYXlljPNUY+Zf1EQxynXs= +github.com/glebarez/sqlite v1.9.0/go.mod h1:YBYCoyupOao60lzp1MVBLEjZfgkq0tdB1voAQ09K9zw= +github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= +github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E= github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= github.com/jinzhu/now v1.1.4/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ= github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= +github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng= +github.com/mattn/go-isatty v0.0.17/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/mattn/go-sqlite3 v1.14.15 h1:vfoHhTN1af61xCRSWzFIWzx2YskyMTwHLrExkBOjvxI= github.com/mattn/go-sqlite3 v1.14.15/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= github.com/mattn/go-sqlite3 v1.14.16 h1:yOQRA0RpS5PFz/oikGwBEqvAWhWg5ufRz4ETLjwpU1Y= github.com/mattn/go-sqlite3 v1.14.16/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= +github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE= +github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= github.com/sashabaranov/go-gpt3 v1.2.1 h1:kfU+vQ1ThI7p+xfwwJC8olEEEWjK3smgKZ3FcYbaLRQ= github.com/sashabaranov/go-gpt3 v1.2.1/go.mod h1:BIZdbwdzxZbCrcKGMGH6u2eyGe1xFuX9Anmh3tCP8lQ= github.com/sashabaranov/go-openai v1.5.8 h1:EfNEmc+Ue+CuRy7iSpNdxfHyiOv2vQsQ2Y0kZRA/z5w= @@ -27,6 +40,9 @@ golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.7.0 h1:3jlCCIQZPdOYu1h8BkNvLz8Kgwtae2cagcG/VamtZRU= +golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -39,3 +55,13 @@ gorm.io/driver/sqlite v1.4.4/go.mod h1:0Aq3iPO+v9ZKbcdiz8gLWRw5VOPcBOPUQJFLq5e2e gorm.io/gorm v1.24.0/go.mod h1:DVrVomtaYTbqs7gB/x2uVvqnXzv0nqjB396B8cG4dBA= gorm.io/gorm v1.24.6 h1:wy98aq9oFEetsc4CAbKD2SoBCdMzsbSIvSUUFJuHi5s= gorm.io/gorm v1.24.6/go.mod h1:L4uxeKpfBml98NYqVqwAdmV1a2nBtAec/cf3fpucW/k= +gorm.io/gorm v1.25.2 h1:gs1o6Vsa+oVKG/a9ElL3XgyGfghFfkKA2SInQaCyMho= +gorm.io/gorm v1.25.2/go.mod h1:L4uxeKpfBml98NYqVqwAdmV1a2nBtAec/cf3fpucW/k= +modernc.org/libc v1.22.5 h1:91BNch/e5B0uPbJFgqbxXuOnxBQjlS//icfQEGmvyjE= +modernc.org/libc v1.22.5/go.mod h1:jj+Z7dTNX8fBScMVNRAYZ/jF91K8fdT2hYMThc3YjBY= +modernc.org/mathutil v1.5.0 h1:rV0Ko/6SfM+8G+yKiyI830l3Wuz1zRutdslNoQ0kfiQ= +modernc.org/mathutil v1.5.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= +modernc.org/memory v1.5.0 h1:N+/8c5rE6EqugZwHii4IFsaJ7MUhoWX07J5tC/iI5Ds= +modernc.org/memory v1.5.0/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU= +modernc.org/sqlite v1.23.1 h1:nrSBg4aRQQwq59JpvGEQ15tNxoO5pX/kUjcRNwSAGQM= +modernc.org/sqlite v1.23.1/go.mod h1:OrDj17Mggn6MhE+iPbBNf7RGKODDE9NFT0f3EwDzJqk= diff --git a/server/main.go b/server/main.go index 8e0a0e7..2d6d7b3 100644 --- a/server/main.go +++ b/server/main.go @@ -19,7 +19,7 @@ import ( "github.com/stripe/stripe-go/v74/checkout/session" "gorm.io/gorm" - "gorm.io/driver/sqlite" + "github.com/glebarez/sqlite" "github.com/creikey/rpgpt/server/codes" ) From afd03ea73b28cad507e1d01a8ab7c5889e02849f Mon Sep 17 00:00:00 2001 From: Phillip Trudeau-Tavara Date: Tue, 22 Aug 2023 06:35:08 -0400 Subject: [PATCH 7/9] Allow running build_web_* from other directories --- build_web_debug.bat | 6 +++++- build_web_release.bat | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/build_web_debug.bat b/build_web_debug.bat index 67cb81a..0de78bf 100644 --- a/build_web_debug.bat +++ b/build_web_debug.bat @@ -1,5 +1,7 @@ @echo off +pushd %~dp0% + rmdir /S /q build_web mkdir build_web @@ -23,8 +25,10 @@ if "%1" == "NO_VALIDATION" ( echo If you want to turn graphics validation off to make web debug build faster, provide a command line argument called "NO_VALIDATION" to this build script ) -goto :EOF +goto :success :error echo Failed to build +:success +popd exit /B %ERRORLEVEL% diff --git a/build_web_release.bat b/build_web_release.bat index edfc435..301ac74 100644 --- a/build_web_release.bat +++ b/build_web_release.bat @@ -1,5 +1,7 @@ @echo off +pushd %~dp0% + rmdir /S /q build_web_release mkdir build_web_release @@ -10,8 +12,10 @@ set OUTPUT_FOLDER=build_web_release call build_web_common.bat || goto :error -goto :EOF +goto :success :error echo Failed to build +:success +popd exit /B %ERRORLEVEL% From 5e5bc04d12d7dd5955987d0e420a537a52d96c53 Mon Sep 17 00:00:00 2001 From: Phillip Trudeau-Tavara Date: Tue, 22 Aug 2023 07:41:30 -0400 Subject: [PATCH 8/9] Snappier player character controller --- main.c | 47 +++++++++++++++++++++++++++++++++++++++++------ makeprompt.h | 1 + 2 files changed, 42 insertions(+), 6 deletions(-) diff --git a/main.c b/main.c index 9df3d27..ad05c1b 100644 --- a/main.c +++ b/main.c @@ -3901,7 +3901,7 @@ void colorquad(Quad q, Color col) } -Vec2 NormV2_or_zero(Vec2 v) +Vec2 NozV2(Vec2 v) { if(v.x == 0.0f && v.y == 0.0f) { @@ -3915,7 +3915,7 @@ Vec2 NormV2_or_zero(Vec2 v) Quad line_quad(Vec2 from, Vec2 to, float line_width) { - Vec2 normal = rotate_counter_clockwise(NormV2_or_zero(SubV2(to, from))); + Vec2 normal = rotate_counter_clockwise(NozV2(SubV2(to, from))); return (Quad){ .points = { @@ -3964,7 +3964,7 @@ void dbgbigsquare(Vec2 at) { #ifdef DEVTOOLS if (!show_devtools) return; - colorquad(quad_centered(at, V2(20.0, 20.0)), BLUE); + colorquad(quad_centered(at, V2(20.0, 20.0)), debug_color); #else (void)at; #endif @@ -5913,7 +5913,7 @@ void frame(void) if (it->is_npc || it->is_character) { if(LenV2(it->last_moved) > 0.0f && !it->killed) - it->rotation = lerp_angle(it->rotation, dt * 8.0f, AngleOfV2(it->last_moved)); + it->rotation = lerp_angle(it->rotation, dt * (it->quick_turning_timer > 0 ? 12.0f : 8.0f), AngleOfV2(it->last_moved)); } if (it->is_npc) @@ -6675,7 +6675,22 @@ ISANERROR("Don't know how to do this stuff on this platform.") { gs.player->last_moved = NormV2(movement); Vec2 target_vel = MulV2F(movement, pixels_per_meter * speed); - gs.player->vel = LerpV2(gs.player->vel, dt * 15.0f, target_vel); + float player_speed = LenV2(gs.player->vel); + float target_speed = LenV2(target_vel); + bool quick_turn = (player_speed < target_speed / 2) || DotV2(gs.player->vel, target_vel) < -0.707f; + gs.player->quick_turning_timer -= dt; + if (quick_turn) { + gs.player->quick_turning_timer = 0.125f; + } + if (quick_turn) { + gs.player->vel = target_vel; + } else { // framerate-independent smoothly transition towards target (functions as friction when target is 0) + gs.player->vel = SubV2(gs.player->vel, target_vel); + gs.player->vel = MulV2F(gs.player->vel, powf(1e-8f, dt)); + gs.player->vel = AddV2(gs.player->vel, target_vel); + } + // printf("%f%s\n", LenV2(gs.player->vel), gs.player->quick_turning_timer > 0 ? " QUICK TURN" : ""); + gs.player->pos = move_and_slide((MoveSlideParams) { gs.player, gs.player->pos, MulV2F(gs.player->vel, dt) }); bool should_append = false; @@ -6946,7 +6961,27 @@ ISANERROR("Don't know how to do this stuff on this platform.") Vec2 pos = V2(0.0, screen_size().Y); int num_entities = 0; ENTITIES_ITER(gs.entities) num_entities++; - MD_String8 stats = tprint("Frametime: %.1f ms\nProcessing: %.1f ms\nGameplay processing: %.1f ms\nEntities: %d\nDraw calls: %d\nDrawn Vertices: %d\nProfiling: %s\nNumber gameplay processing loops: %d\nFlyecam: %s\nPlayer position: %f %f\n", dt*1000.0, last_frame_processing_time*1000.0, last_frame_gameplay_processing_time*1000.0, num_entities, num_draw_calls, num_vertices, profiling ? "yes" : "no", num_timestep_loops, flycam ? "yes" : "no", v2varg(gs.player->pos)); + MD_String8 stats = + tprint("Frametime: %.1f ms\n" + "Processing: %.1f ms\n" + "Gameplay processing: %.1f ms\n" + "Entities: %d\n" + "Draw calls: %d\n" + "Drawn Vertices: %d\n" + "Profiling: %s\n" + "Number gameplay processing loops: %d\n" + "Flycam: %s\n" + "Player position: %f %f\n", + dt*1000.0, + last_frame_processing_time*1000.0, + last_frame_gameplay_processing_time*1000.0, + num_entities, + num_draw_calls, + num_vertices, + profiling ? "yes" : "no", + num_timestep_loops, + flycam ? "yes" : "no", + v2varg(gs.player->pos)); AABB bounds = draw_text((TextParams) { true, stats, pos, BLACK, 1.0f }); pos.Y -= bounds.upper_left.Y - screen_size().Y; bounds = draw_text((TextParams) { true, stats, pos, BLACK, 1.0f }); diff --git a/makeprompt.h b/makeprompt.h index 41857f0..dac5a6e 100644 --- a/makeprompt.h +++ b/makeprompt.h @@ -219,6 +219,7 @@ typedef struct Entity // fields for all gs.entities Vec2 pos; Vec2 last_moved; + float quick_turning_timer; float rotation; Vec2 vel; // only used sometimes, like in old man and bullet float damage; // at 1.0, dead! zero initialized From 62173526c401936dd5f8362762c60b70649908bf Mon Sep 17 00:00:00 2001 From: Phillip Trudeau-Tavara Date: Tue, 22 Aug 2023 08:15:47 -0400 Subject: [PATCH 9/9] Replace AABB collisions with cylinders --- main.c | 87 ++++++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 58 insertions(+), 29 deletions(-) diff --git a/main.c b/main.c index ad05c1b..4d9df49 100644 --- a/main.c +++ b/main.c @@ -289,6 +289,12 @@ typedef struct AABB Vec2 lower_right; } AABB; +typedef struct Circle +{ + Vec2 center; + float radius; +} Circle; + typedef struct Quad { union @@ -713,6 +719,23 @@ Vec2 entity_aabb_size(Entity *e) } } +float entity_radius(Entity *e) +{ + if (e->is_character) + { + return 0.35f; + } + else if (e->is_npc) + { + return 0.5f; + } + else + { + assert(false); + return 0; + } +} + Vec2 rotate_counter_clockwise(Vec2 v) { return V2(-v.Y, v.X); @@ -1237,17 +1260,17 @@ Armature load_armature(MD_Arena *arena, MD_String8 binary_file, MD_String8 armat return to_return; } -typedef struct CollisionCube +typedef struct CollisionCylinder { - struct CollisionCube *next; - AABB bounds; -} CollisionCube; + struct CollisionCylinder *next; + Circle bounds; +} CollisionCylinder; typedef struct { Mesh *mesh_list; PlacedMesh *placed_mesh_list; - CollisionCube *collision_list; + CollisionCylinder *collision_list; PlacedEntity *placed_entity_list; } ThreeDeeLevel; @@ -1350,13 +1373,14 @@ ThreeDeeLevel load_level(MD_Arena *arena, MD_String8 binary_file) ser_MD_u64(&ser, &num_collision_cubes); for(MD_u64 i = 0; i < num_collision_cubes; i++) { - CollisionCube *new_cube = MD_PushArray(arena, CollisionCube, 1); + CollisionCylinder *new_cylinder = MD_PushArray(arena, CollisionCylinder, 1); Vec2 twodee_pos; Vec2 size; ser_Vec2(&ser, &twodee_pos); ser_Vec2(&ser, &size); - new_cube->bounds = aabb_centered(twodee_pos, size); - MD_StackPush(out.collision_list, new_cube); + new_cylinder->bounds.center = twodee_pos; + new_cylinder->bounds.radius = (size.x + size.y) * 0.5f; // @TODO(Phillip): @Temporary + MD_StackPush(out.collision_list, new_cylinder); } // placed entities @@ -3651,6 +3675,13 @@ bool overlapping(AABB a, AABB b) return true; // both segments overlapping } +bool overlapping_circle(Circle a, Circle b) +{ + Vec2 disp = SubV2(b.center, a.center); + float dist = LenV2(disp); + return (dist < a.radius + b.radius); +} + bool has_point(AABB aabb, Vec2 point) { return @@ -4370,21 +4401,20 @@ Vec2 get_penetration_vector(AABB stable, AABB dynamic) // returns new pos after moving and sliding against collidable things Vec2 move_and_slide(MoveSlideParams p) { - Vec2 collision_aabb_size = entity_aabb_size(p.from); + float collision_radius = entity_radius(p.from); Vec2 new_pos = AddV2(p.position, p.movement_this_frame); - assert(collision_aabb_size.x > 0.0f); - assert(collision_aabb_size.y > 0.0f); - AABB at_new = aabb_centered(new_pos, collision_aabb_size); + assert(collision_radius > 0.0f); + Circle at_new = {new_pos, collision_radius}; typedef struct { - AABB aabb; + Circle circle; Entity *e; // required } CollisionObj; BUFF(CollisionObj, 256) to_check = { 0 }; // add world boxes - for(CollisionCube *cur = level_threedee.collision_list; cur; cur = cur->next) + for(CollisionCylinder *cur = level_threedee.collision_list; cur; cur = cur->next) { BUFF_APPEND(&to_check, ((CollisionObj){cur->bounds, gs.world_entity})); } @@ -4396,7 +4426,7 @@ Vec2 move_and_slide(MoveSlideParams p) { if (it != p.from && !(it->is_npc && it->dead) && !it->is_world) { - BUFF_APPEND(&to_check, ((CollisionObj){aabb_centered(it->pos, entity_aabb_size(it)), it})); + BUFF_APPEND(&to_check, ((CollisionObj){.circle.center = it->pos, .circle.radius = entity_radius(it), it})); } } } @@ -4410,7 +4440,7 @@ Vec2 move_and_slide(MoveSlideParams p) BUFF_ITER(CollisionObj, &to_check) { - if (overlapping(at_new, it->aabb)) + if (overlapping_circle(at_new, it->circle)) { BUFF_APPEND(&actually_overlapping, *it); } @@ -4418,14 +4448,14 @@ Vec2 move_and_slide(MoveSlideParams p) float smallest_distance = FLT_MAX; - int smallest_aabb_index = 0; + int smallest_circle_index = 0; int i = 0; BUFF_ITER(CollisionObj, &actually_overlapping) { - float cur_dist = LenV2(SubV2(aabb_center(at_new), aabb_center(it->aabb))); + float cur_dist = LenV2(SubV2(at_new.center, it->circle.center)); if (cur_dist < smallest_distance) { smallest_distance = cur_dist; - smallest_aabb_index = i; + smallest_circle_index = i; } i++; } @@ -4434,11 +4464,11 @@ Vec2 move_and_slide(MoveSlideParams p) OverlapBuff overlapping_smallest_first = { 0 }; if (actually_overlapping.cur_index > 0) { - BUFF_APPEND(&overlapping_smallest_first, actually_overlapping.data[smallest_aabb_index]); + BUFF_APPEND(&overlapping_smallest_first, actually_overlapping.data[smallest_circle_index]); } BUFF_ITER_I(CollisionObj, &actually_overlapping, i) { - if (i == smallest_aabb_index) + if (i == smallest_circle_index) { } else @@ -4452,7 +4482,7 @@ Vec2 move_and_slide(MoveSlideParams p) { dbgcol(GREEN) { - dbgplanerect(it->aabb); + dbgplanerect(aabb_centered(it->circle.center, (Vec2){it->circle.radius, it->circle.radius})); } } @@ -4461,21 +4491,20 @@ Vec2 move_and_slide(MoveSlideParams p) BUFF_ITER(CollisionObj, &actually_overlapping) dbgcol(WHITE) - dbgplanerect(it->aabb); + dbgplanerect(aabb_centered(it->circle.center, (Vec2){it->circle.radius, it->circle.radius})); BUFF_ITER(CollisionObj, &overlapping_smallest_first) dbgcol(WHITE) - dbgplanesquare(aabb_center(it->aabb)); + dbgplanesquare(it->circle.center); CollisionInfo info = { 0 }; for (int col_iter_i = 0; col_iter_i < 1; col_iter_i++) BUFF_ITER(CollisionObj, &overlapping_smallest_first) { - AABB to_depenetrate_from = it->aabb; + Circle to_depenetrate_from = it->circle; - Vec2 resolution_vector = get_penetration_vector(to_depenetrate_from, at_new); - at_new.upper_left = AddV2(at_new.upper_left , resolution_vector); - at_new.lower_right = AddV2(at_new.lower_right, resolution_vector); + Vec2 resolution_vector = NozV2(SubV2(at_new.center, to_depenetrate_from.center)); + at_new.center = AddV2(to_depenetrate_from.center, MulV2F(resolution_vector, to_depenetrate_from.radius + at_new.radius)); bool happened_with_this_one = true; if(happened_with_this_one) @@ -4508,7 +4537,7 @@ Vec2 move_and_slide(MoveSlideParams p) if (p.col_info_out) *p.col_info_out = info; - Vec2 result_pos = aabb_center(at_new); + Vec2 result_pos = at_new.center; return result_pos; }