From 7c852570a5b673796f0dc436eff8f0a0c0d7c436 Mon Sep 17 00:00:00 2001 From: badlogic Date: Sat, 29 Apr 2017 14:00:28 +0200 Subject: [PATCH] [ue4] Added clipping. --- .../Content/Test/Assets/Textures/coin.uasset | Bin 0 -> 43714 bytes spine-ue4/Content/Test/Assets/coin.atlas | 27 +++ spine-ue4/Content/Test/Assets/coin.json | 171 ++++++++++++++++++ spine-ue4/Content/Test/Assets/coin.png | Bin 0 -> 24464 bytes spine-ue4/Content/Test/Assets/coin.uasset | Bin 0 -> 16181 bytes .../Test/Blueprints/CoinBlueprint.uasset | Bin 0 -> 51409 bytes spine-ue4/Content/Test/Test.umap | Bin 0 -> 41408 bytes .../SpineSkeletonRendererComponent.cpp | 42 ++++- .../Public/SpineSkeletonRendererComponent.h | 5 + 9 files changed, 236 insertions(+), 9 deletions(-) create mode 100644 spine-ue4/Content/Test/Assets/Textures/coin.uasset create mode 100644 spine-ue4/Content/Test/Assets/coin.atlas create mode 100644 spine-ue4/Content/Test/Assets/coin.json create mode 100644 spine-ue4/Content/Test/Assets/coin.png create mode 100644 spine-ue4/Content/Test/Assets/coin.uasset create mode 100644 spine-ue4/Content/Test/Blueprints/CoinBlueprint.uasset create mode 100644 spine-ue4/Content/Test/Test.umap diff --git a/spine-ue4/Content/Test/Assets/Textures/coin.uasset b/spine-ue4/Content/Test/Assets/Textures/coin.uasset new file mode 100644 index 0000000000000000000000000000000000000000..af50aff92931daf64d4c02e406bcf57ea92d1326 GIT binary patch literal 43714 zcmc$_by!@>vNt>o?(XgqTm!+~-4fg(xVuAu;BLV+!7aF3kRZW>ySv-)GTD2dd(XM| zd*1iIuO8Ow?yBnQuIjFywT9nx2Qy^fzr4H{LIMCF2*4i#7sr;>Tl=C(SBSsa@~jsjER$(jqCre z@Y?MUoh_GYf-6$5BOb8*#rx;}>g@~I6|z?bi7^vkQxev$L6t^K0G1#ns8o znZ?B3$_{{QZZ?bs)>AWavT|@?5wmwP(@--0XlCL9xRYTL1kd*$nS`B%)oWlr35Uwy zy|P7Y94w8*?A^?qj4aI5EniJq+S`~q18R-K_0hm`@OUz|4)#ti;zlk;fW2}Rb>vsR zsJ*?7vXi}onUjkr01c}8Gk6SRWko45ds~NBE6!%7fQWJ)u0Oh-E@uDI-BD!ff_c>y zvoUgZ2DrF;#Dl~C#|;ZuNBV)iF zrChB{0bJ1QHQSieRT;4Br6P5fVNd3zHh8!Im(7b|-^#n(l3b}%wA17Ns#hJ%Cscc*_% zDT}et3>+&pD=#x`z>j!_j(=M30sc`+3*dPC6(oQrZ%re3I%+OXt|tHGIxFDI6L{W# zN0eP00D2al1gFWr#TXz>>mUC|PfgN5R7zFkEdb{00Y2Cf&DTw2@5Bi>>L}9&X91YN zd@wz|?osf(!StW9$5+{FlKr9oO-A$|GVsFxL;vXiQ~q}u@NXs1tNnlU!E67|SYTf0 z>jlo8{~P^d|JBsLZ2i;cKY6%+3&7)xyk0eb+XvhD$Ijm>|D*U%TVRFf{}>az7r_Mf zA9g-x}aWU?% zrTSG(FZx6&0wogU0|l4c>AXt1bbBTogmo-UHMX|a@p#+rz4~r9+xw*X_WRx{h@*vs zwJjYtMVCBq*)dfpO}3#4$WNj-16fIyHC$_;C06J%uWQg6KKFz@pd(Lhha z#sy}wsZhmqy=76ocbAOnmoJVpImTNI1_toFRyRFuKLAk!+L!{e4F7XnDEx?CWB|i(kz*^<7_P?i zbjbt|eQ6U1@xFb5XirnO5z+S_b!XPpA7*fHTbE11Cfg2o z)J;|KDm!kDxf4!Vr)rMB6X69=OgAigEIu`$&O;;_;gH10y$|GVic)BT|6s^L9RQac z84HDz3PL{kiPQyMq=Tuxl9`)tAuZf;BCC}mZYaVSL~^pjDZ?66avgC#NS|u)avQ*6 z^`Yy;_wCUfD$UEr!;9dVBjxWR+=rI0^HY@BKjA##^j+t2keuO^VS*VyG{6U-OCtq} z!FI!Chd$aYC`;1e_{3aw8H8_*Y;@kw*#v(2Ak4(VD_|#vU#k6G!iB@vFXCAVq7y|v zWyYAx&mdvgU3eq3kp+Q0Je@BjGoxzf z;qogF-uR+&%|)ZfaEv&Ut+7g_S0KE}FwH>&6_lx&o)Nky&$UjbMwm{eyn{=XqP5xh zq*<@kVkl$5^1EGHT_`6D72ie**(XQ5K}Q06Tk)Ws)#ybaLxUWt9ObxGQ%8wOl7Sb* zLPBNvo%X()OVE+#k>6F0(OI=`!vZ38IC$cAq)SnG1bsAm6uKSk_PT;&jQr zBby{S@Mm;z2ACn85w|X%e|5<>Dc}qBF{PtNDa}tVH{D@=81*MaTC>tc{3OjKMuiGl z>%4dp6jy0uFtxnFl>5uez+=(~@B&Rr=;b#Kdu=vB;h&p>F}mcZy!7?aw;N87?ocE} z67-|l*QkPIT&B4)GS`lMOttw8id``CaIe@UA*UZ}eNJOu5@RvSkVx!QYc)v@uW)p< zY#PV>>mI(bmtA6E5*Ia~xpe1R(;mVV5?em#%s<@6j-hjxIo~MPLf)Y2NpUHiZ9P6N zxmHFv@eKl-V$F}EvoBsn=xmg5CYG$Me&<3Ap&P-{_jDz*gg)61)U76;&2|Glm0!ZT z{Q2YC5_jH(h;JzB4$g&9JcuOvcKIwYk#7%E59hAXc%_vYcs{a@dK|DN!uwbruE#mB zy-aLdEbOW=l2=OuPe zqUvdBR9{%Rg&xU)r*kvkN1VKRo4zww0FE%Wj+#(dq1i4Ujktd$KY8%Lp`lf)yKR4_ zeQw~DJ({4Kgpab?iYWTBo}&EV30LWqhVMsWjCY3tG%=JU$qO8-Lf zI>|gxQZ^2{34(t@&W`~O9#P54CA%*em9@mF>Q<{dgbU3GZJ~9%iQeXI6U%GGP!5od z8^)neh8Rl^v2^h;hwh?iT7my*3V>u9;hYGnw-hvovagt~;yFGJW5D^<6}!?`_=O4? ztvyKU4(F^DD+!NJNJ~zQV$FQMa_zb8u%Q<-&1=)Dgn{*3=nkOL_Z+B&X?XEY(WQF% z=u#4Qm^0;#%E_<7FHp51?jM>7vKXLPn{}VpPG@nyW+GJ64I}DCqqAa${~Wv_Ny`9X z%eF!8u?8Lx&-#WUOx>zIH&WNdXSs54tds7XBj>`k!lduDV+0tG=dYBu0$gE{p*{z} zvr>8_(a=Y8^D0~~W|8ozjzHZ#ON6cjxk4&feh;t=l*H?rZ0R#7L5DrhBJS*uGVKxK zde5cER{S%2b*Kda(&3jjZV9qEj4f-Cj!T-b`&VgudQe|nw2N|!L{Z1k)r-i0KkMp> zAkKSq@inHF4g>dWchm~3j+}#Kt<<~V&yp|3xxWiKv)<=53T2cTxCOH@f?^ZtGghPd zeM^O4ZVZ8?q&l+qfj^-HiK+(JF~dXsB|ZQsf}mH(Ly1>h8YK`*xl)$im^E(%CyhTt zoBNj;`!m9*dMPVzw(RH&E!e?i_3e4v;0xgQJ#-bxVLf#U6>C$V6yQ+-EvFK(NFC*% zeg{6An;!~I&xl~&-A&;@R3~Kh`ws+@1qJq7S+-P8rYoZ=d>tio@kEl}JZ`}`W>}iF z-BOHpz4H0)V!^xF(oK*p-=de~&dTHHRNP=4+qlaj#%S@DNUW+;j@ryDT{6#8h|2`K z%^PdBFu9wZ1Qtu%~y0*5+)^Og!zm1jedj-e~OA=?YX z$J3O_&Mx0LA^z`G$yW$)fZ6pDo0jh3S9>)0T)O*2B z(edk?;VVW^XE~uS3~(iSNhgJA*^(Q2*Mwpyrd?O8Y4us~}U^b%&FOBF2c!S#SUM!jtH(2U+o zHEnVGX3$d`i{G`pcZ~19hX3eP_40vAq*qQ03iEB)y70H3%aKm+N1 z_Yy#9`jOa%+`ZgwI4x78-#wFA6L7{K4}W)|)Q)vtz2G8H&V}r9$zz0fcu)BoB_qV? zdZI_%m!@kfq(MGl_0a!Q_eA5@rmb7;pVhX%fDj-0E>!SSh1=!sO=kI>8t^gh;_!UC zXh0lzmofKfok}UL(2i9sw@-fQQlhPvsJ*8UPdTWGC!{Rv|a8g~yGJ z`c_#)J8S_t&Lh4iB`7265U$$WPZR2)I|(O` zH^Li@$7_56QG7EaEuVf5cpiSE6?Ny>z%p}aqGzeZjBh^;iB6z3T}XaQ^eC=x%c+)^ zfF{3|6}s@jtS+8JSThN@jm6G;;fhQQo-4l%! zKf2lYws~v3KTSudp;6Qk`s7b*yI=QfYO{9L8hW#gaTn_pxnB;aQ=Fiu#*N(rSKTK>f#OmDQ)cqY=D~0pbpk2$^-2>3*_x1B zZH7I~!1Thz+ObtiOnF6&8_}aF`6)1K?V4 z2<3`)KYkpe=^&8~IK$k79v4}s_VQC|o3nOtP4MH|M7En3GQ=O?OjsAKqOV0&c#P~z zET%Z|WR`;$c4o;_2Vv4P$-k#tYU|=4Mk+tG#Jc+GN|l1ppircS%*cj@p}2@bkfC_b z0g-bXuG3DoT9LIWz^AzF#xXx!tFH-n)MBEa#U~ zhjtqfGfA?8kvpZP6+rE)@p=gnDBc6kt~`D+If#t>geXnb6qJ~vzWV%k9FZXYpFX-dyz}~tz~Z;;&gR@kh#ikcAW)g!pQ?|A6_ zuGx`eqm&s|looE_ijSA^`Sm}GRSFr)tlR7L{A@R|98b&C93AYOi1;d0?h>WnA)W3^ zbIEpUdcvD#wJPJw6gf_Ibh}MEQR4vs*%!aD{ibpuh&&)==+l-vmcDbfV!#|#gQ30Cfqy&+og{RzQyJm!4cJU0`Wzn{$XLt5F6&53nJY)cTTYsLyX z$wx0CX)W2tk^s;Bq*_o)-`e@{rnCb+pC|>`5iUx^xUZsJ(lX-%(^^DJ`$6w(w+J!_VP7N?y-2k@_l#L|0^F92oqq~NS zs8h4a5`kY@3+4_^D)Lo5qg8WL)hnp%i%L&N#obl$LhLbuG9e0oYIyIN?B@VpbQ!iq zI=*id8KO~-zyvg=pW6b`;Gdbyxjva!8Cuqov8p5#zDdIWZ8r4Oq$qOvvNH-}7s6PV zr6-C2$8xPEXe!X8ht;XY1G$Fh_oCn%uq?UQr%@yz(v0f>d5cBja1F|CYG~WmyxK_# zABhTJqb{_$EI92=(lGC4atl_hM3fhOd#VG|=ObI6MAFCFZv=<~kZd`yP?ghPL|=hc zYDdWdJ7^G;wMa0XjuKD?w>eA??gm-KNe!k8^wYcTFgW`j%@sp{FWkRraK9PbJ2t5D z6-yVqUP4z;w77^j>f96=okF_&%#7onNU1r(Q8)6jq1^?c7rtAGmr4D$p{AF2&KTj0W zLIGne5ZMCj;aLg2?G@>G1QoN-a^dR|k)N0UDH0N$n zf>7VLuiZ!A3~N;>pH;nlN{T&Se~;F|C&vBTDE)@ml=2Xw zxD+dPrxYNoQ-x;vnRn+M&XL>v8gb@=-FKX7cc_i?)r{)ZgeVppLw;ri|5Jf=yqAlz zvGxg}W1QtW(GI&R5b<4b29~Rscw+o8K2we6l5@_&(em6G0OgH(Myp5~b z7xUH-_*j<~YB*PQOInM!`iYwKaA3Q=^_gTH6M5wLsJOJ@mug4+rQh+bT}y)rG_TsF z*GNOaLPKdFxO6_JY9-(JEHl2r^F|Ru=gz1$PMa0 z5gtM>Oc;`IL+~cyuP=vdOOcVEI;~(MP;KxvR1>OOpH7i7s=5u4rTBP^vQU!Py9O9@ zlvXO2BW}_zG8>GM&t+9nPdvEKe)&Qr@n|6Hy6J^elaVmVNp*%)bcS;F8mDKU@aN_9PjZ5@b_|45*@~^}KmzGInf6^6yJdN&;Q9a-NbTbV8lGY(TnU`V zQ8tGoi_`KUsCm#!8T#enuAZBn+YdiCJZp&J($nWUYt7Jz9PbyEa^JUEdK{h{B6ZN* zOF#ycIhSaDF5=4xEu+p8tu2J8wR2~C{@qk%giW@uP-?fUa$=bDvQePV>{F>VLb+B5 zqcUC#bSQG@8v9<+>t1`FH$0^7|^MhZk6B2`I24ob%>}aw`&n;ZDkH`eqP&$<7C{-wB>OxC{W|GT$}7< zAB7vCaZe+8gLd&W|96bA#Sn8upI=M?!6Lc0??rHpj+ZWFRwtN+f|*+JuZfUWASgA( z`Hx3KBIArQdKK>~W{6$OT{5??HtQ+yH_+OvQoDz?J*zm{-k`_v+?wO1$xe-`E9zdZ zMt!pV`5Opa5JD{LrMKQSx~amwir^Yh`mF9RD6NqKJL_F%{*YM-4J;HrneE*T9hoZ= z9*z@C(fFmOG`%GsgJ&CVLOCHe56ZyrriI&`LKMBa)#Egr%TzjAkl*9nv7$+ICdceV zjtCbGOOiN9mXAGdx^9w;wQ_4SCz0@U|H=6iO6ME&v?1HL!ID(k3Qn6)F1;vi?zriX zCg}Dg&YPJ$$cYH=qv*ww5l_fV=fckOxqOkxlt5+1Nimz2%-T_HT6FK!j}t~~ykfK_ zc3I}()%|nTu$>TdT@zxJsH=E-Y65P)=v> zeYwJ1xK#sa70`x-Kb4yj95s&Z;lAPXg+U6y@3vCHkM;=OyzXBsrN5fLZq(DN@tX~- zgd#k%Bm+I|o)#Yw&*zE(omYC1Sn&gmn8oapAf(OCiv-!$jQ}T5pG}`5@KzsMojHAV zzCr`(NNcWd6q{~- z8Sn~l1O_UU^Q7t>9j4mX?9cI~Aq7twc$0SCMvAGtp7vK3RyZCe--XG(kkCqYr9Fi| zm^HG;Y!;XIzh#85!Lj@`-1U<|jXA8}|5HzZnF^J}2X0WM7v)2J`*~Or7GnG;uee~L zNnJoufD*=4?5~c#@!KtO0Ax;xXb>_X^1 zH76YR?<4E@(3t^38Rl3oZ@QXylFR#Yg}wS&lMN_T@PkvB1P}S3B*oMN$)5~>DpHs=M&kw_1zVKO0c{2bZS{)8A-D0K{(#)< zF7-V#QcOKNNJQ9bwO?nHcn${xuHx&!V|Svydw84<1o!ka z!HjC(54qo*2AJnoJ{}4l{!mJlFZkj|1mo1Myk{J0z*D}tQee6BxvVMhv&e07?bV$f zUWBWCu zm#XHwNW17J@^DrLg&OU1h)<(?uEpQzWW;b4mU*tZ7&2}n zGgYS^TK%CN_M3+HX~Epya(ypAbiRTnTwuGYBqgvYKx#(9n4V0pLlCBG8-WIpS`^Ue z&{TrF$%K~5!B}gDbmczzi282E5!?9sVig|7lmxDysQ3xMLJs2XWM+%D?bAls3wFey z`K4=CIoB&65X+lNZVScJb{?S@v;4@hnJB>@b9?wK7Y6I6-Qrx8{v2(PZg=UgQy)O! zSNHodcfdbfjXgWTdWAO;zVO|KQ(TiGQ=>{7kP1hT(Xzh#RaT0>QEX;yaP+ z)vFlK($TJr5X3yn6AQH>VAk(OUp{gBD$^zj!1O=brBwVTUdsoy*43BQ7~YhM`z;|p zaekNLsScfCASCK_F5vQ2A*=8Re6HZc*p~E8SKy{!x;G`;l?g?o!Ss&rSaJNvU?J}^nwlqrEU#s zpqA)JZ^(GNe@&GV+37kZf9h#DbMAGE8`)kF8c@r(yF)$G z^!9hxooYn>AbhM^1ii1jUcGnRflr4;8pQH7O=@3--8X(LG{`h$DW5L(Wp%ctZ{Z3y z8W>Z0;><&M1gE=p{`=XpO$?Xj?&2=#azEvBF3+sFodoMP1G4jG@sDrad(=-RS5Gx? z;xDanKZY%{0aWZ+d$tm&+Md`Xl87EZPJzv>Lio(}U-%}gi2TiZ)CHlae0!ReLxSea zt;QSRRVnn6>=v8tvV?C@)VzLFYLBnQ56#ojPuB!vaYOHLX0r+HBD`!Ng$o6Hts+jY z3WRhaz$uDG>__^*K|tdYGmTmb&w=#fv;eZossgBF{ah@K`iM{nEt2dh^_ni>73xTh zLdO+$Ij*IlJWGO^9fa0PVJumfk~~{H#}H!=#R@@kR9cgYR+u>Fx3?;wz2^=yB#|r9 zkM`>;C)OSCPmt+)0=(0e(J1e^d!1^5G1q*{98^IMyH%>I8(h3Cd51_bX9r(e5w6Cq zbELFSEjbhKN`#+!@h+xg9`DH?%DHfTknNf1GAlWmdO;5RUNQ&q=HeiWXr) zT3d?*6!!#}U`q@!BqPWHfgd7AstMGrPy}*tFWM@&HESdssoeS9lcUHUNLVqPY~Kd! z+62=Ee!My4?2K%z%FbJtenTDA7ToB*fAxMT#uh@cTi?9@gua5k$6kc#ZiSbD{agr8 zl;hb{a)=`TL@Ph};y$?^Egj!f9uLr+OvYd{(_bQ;^y5*Zo8pS)qM*U1TV9cQ_9Qw} z=|ZE*>CL05=Bv-^S2KFI<0ytQN?)LV=8Al3+fGae&F*d%35;R^JA5xDS; z)cUc&el0G!85;Gx)%#2U6PKP(=y0h)6`f@ZAF7S0YjTe%6nl61l1I5a{w#KNCKi{L zhO%Xiy;d}T&dD|pSs#MYcugeYHT^H(85yfsy*?n4D>UVO5WaTuHS52IXwOZ?Iqk;u z@Ao@^u#UYy&w>_MYXAUXP*x&pz}tDXj*gD)&l9sZITF2t+ieW2BDL&0z7*F(F0 zKM@=_&w3~H)TVM8PbN;x3d(zNHRE-J!crur zeOq>kPCKX%euMHxpfE@~^G^+E3iFaoxiDp! z<{eAO$XRIw1*K|;+^#(BHCcno;^~U9%+zpc<(3ikCkL$`Jm0gJSt#_p^guee%Y~ed z3BuL9yzTR2Wu*aqo9&cUIzhVjQGHDM5MC5MyxF*~l+~tNSo0-vE*yh>{zu5<$>gJy z5ZXE~YY@@EV;MVSj)h@9s%W=W6%nW3X0F7YU_=F($kXM{ql$W%P%QZax(MwZ50>r5e+@&c>+qf2p5Ee zY5bVyy!@*+6VjWC9M{WeICTJtmJ@6hC?~<}Bzda)vGMD-NAk=4(0uHz0Gf$lWTv0= zOz#xkJn_1u@estT2gtnolaAXF)lznTGXD4{7A_fxH|?dcU5eWMnStnlEW6wr5V3qjg`TM8CI2Ux5lp|-xPRz zhB?0q*(m6o?CjdZ;0&jko)_9iqzeIgM*{4yh5a;Zc%MR?kkz(tcaEbh7kD#MhDU`v zv{x|_OWxbswfokjdS*%O;Kb>ZWKHWCuWMMYU<^lhuTiz8VFw4Za^I?3Nmg|XBAd>U zrZqlVQri?lM!2EEi(lFuN%*99T9gM-=ySbd;2btl*^c?n1t!t$xrI^tTMt34zPl`J zyp{q?G#RZ?HY|g2sV<~^H+UKJ_MIH}3K82+!^&3KH(E|ju4qrqRIzf|Lyh$pEuTJ- zW9bBoaq6matpA(<9{MdxFpXYs#2z#VTZInJp*jP^Fv9d*^7|ailL!rZP3J}@yE+Gz z`&kCzuO8Aicj?f~w$t-fj%(Z9r2X!zD36Hc9f<<6y6U=US;V=#%w&r@59yi%%iHKj z@_@zgrk2a$lu$VAqPeM8YxZ8zToz8zyh9V1sAvS{HBMkQlkkEEsVqDFh`P8J~> zer2RIZ{SHqzvG{b@UzjMV5UNP46aHp@xAZ`imZyJvjoEPzf_p+uSeT$Ozt_etzW9z ztR!|*XR~!%Gsw{>R#i2~aWEh+343)S7uwM@FX$L9V+1ILzDF>u$M3HAGGGn`BOf~T zcHS7+x?k1gQi$*3+#ozs(54 zEHDP6D}Y*$d!8ZcR&CfXV2ZFSNb(%$nb9af0yjg%Y2{UOzhLuoWgNH z04eZ2aC3j-QrJ)FvWsS^>-AXk#9rPJ!CyTlq&tbGKtZob>k=bZSV!H*(>{Yk)osQDom$xNDD5_^&D@EK(q-FyJW87hHwe-hsq9spbID}tVw$+v z<28tP>a8fKVr;$a`L6p(S@|9FBO(slq7eq9VLoa50@KveR)jtw{|N9z1GXEWiy@2* zS(^0b-gpRqBdIOropx}|*MQw%s4j_GtS(3<9dQ%*fV^T^^XfRjUBa#-Zoto#9Gy*= zu%8nU<&B?d=Q52Vi*b=oU@8eQtL6I`cX*5<8@gU#Cw+z3g_8;9Ug3HG83{%4N>Rfg zFxcmP8f)N2ha{ukrl^}zU8#MevQ%GS)z`4ye&{0HU9#m4Tz#{L!nMtMpb zIsb(gwluP{Gqd?)N!`iS4DjDzxnS$!+Ui_?I{YVg*!5MY<4s2K3YLBaz`B`9TG^P{ zy@FsV$oR-8n3?}znVB8zEGQVsDAZr);p}2$>+na&#>vah&C15g#SNB$`zeTX{gJ#i zHRU!jVm0RAH03lk>LLbOPDT#@UGVo`SH_mykyhBKDIXm~Jz!O>v)FF^6@LgW9% z`=7#qR{{8E0ATtbJ;7dM{1N?s2*FzeOyIQn?*#E@;lUhmZh`3^$Tc`?{}9RFIJvNZ7?c{(?6tnEq-1i98sU45t6IPWl)7|8@@$`e&Md zX@UbY?eW+3?|uI#EE$|;fPg=+WM8ex*E8xLSn^Rjd>Yk|2F=}4?`BNf__yKV^2dXd zgVvdkd63gB1dcKsmN>`N(xlP>oOP?xaN6ecW^QYV!a$sQMly41L&)1IMFTzL5-O4WN!yTNRFK=5Hyl;*cyd}4A zL3K-GLyRdBpQ+;$C^y!G*%hvF{fSO#K_}1QUtTmIa6T|c=7@fJ12e{3$%p;4P=dvZ zjE+0M$Shc@m488^o(;Ro(772l-0C>;uDAAyEs7EYht^o5vO}P*M{32>TTuH<9RgZ^ z084wvg~fydDwafGqGt$$evn={mjAAyk|NAMsE^KhCk+21-0E>DD z^VQ8A!g5toUN2AIjp8NGUI=p0iiOH)ojZ2NrO?cRLg2-`gM$^xYNs{c&g%N8 zJe|!GDpp$%rF5%O;HKM5Z~cOL(+-|$9h@Iwy;p+|)Tzi?$E z{)$msD>Z4d?|*mBw+5m+8+>O(SAlxWJ>446X}ZFk?)3wM2WB*|kucI2Stw`~;wy4@ zwK7_;N68dJDuxG^EyR!K`>@lL;k)2l;@fX+nkWnnqV4!ov3^oD^ZCp*uF&9`jM9cPqy4*orKsY-_P(Hq7wyF}g^0%`m3 zpkUb2<`(w^3vC(_+*{?Uw-JTXYN}r#1va>iMAe#8VDu^pdNe}6b;uTd>>5l`+5WgS z7@|ZJ|634T&Q0PM7YJqbuIACt(a}ch?L06sz6FB`xyc6QStY)eY$Hsxk) zR?42iMq}CAAgsUg=aX7j0#2+a_tTgcPgLk9M4`_MbKZsOEx4%;#j!@N%|Ac0ILGZ6 zj&$ROzC9ygQrNg6?vrJ~6J90nMv~Xnwk~t>y1kM8DzdamKa-lQqZ1M)+h&iS0WnHa zfQgBbogKe7orFGY`omUHwBX68I?zAto4z$A`nW*xYE4uq>vbTY1%(N4=8sfz$g*%v_3x|b&^tZW zFWx>4jselKjeIhfXzB0%CII&VN{rdfP5MSTM|JaER~~spnv{`wP_Lk`>ee)T4LO=a z`VSunOdkYD6U+nX?RUf9HQ75oeM~UzYJO}Ng#9e*kClFVB|}T_BIZMSfe7vS*E#6+ z8JLE1sy>tX?KUla{F$&(*N=AgT8GWjX<&;By`Yq*V1q?ozc<>v^gNareRs*K^eS(~ z9t-k}pytGYoq`0hL^0BF2?z1p#@0k!AML^E~*n4aG`MvRTgPEF*Z=VVz0ns0{HWUZ;pBlxU1A|U{kY%aJP7tK)9 ziyxh}7yavuTB^rF1oXYb7)ef2MRhXgv96LlnxsexkDV8F`u%3aC~mWGO-$vZ5OF0W z2io27epPri($6ys1wlZRD17d}HImsMB!lxAmJt_4~273@WR=AYkqIpULi z<7S1oaO0LvyJ>HQZNV~nbLgp!Ko4(8uSkULo{JjP^%g2{H+O3g145lJThsbl2eoFx z@%OUmIV2hsD3mbf>HF2~v!GpO#qO-g0(cc(KOMv&DFfVq+I>?k&l6&ID+h5uS@2ut<#xe2nE$Z)Qxg*5TED76;`gYBKvzGaGT73`- zsIczL{+J-tZ_=R)^DOSA;zz{n7vKNO%7N#R@4V90F3bTHtx)ttlexj$zoqcY=BJ=*gd0T+%})atPf?rom;Ojq-%`4a&rxyi`)2Dy%A z2@GeBU!I#S=s$~Nh0*Sak2rk@<(CBmK4#C9eiXuO#*}|)>^jl6Zjvkv-%j`%NSR<8 zI`iz8d48DNMNI#UW@%LaaVa2wH{vv$jcd~i(&PC66d=Gj&+AZCqYU~&81WQXxS`9C zG2N`8O!L=d4^_GnM8%!~OSH{TwCkG3ikxr>VM2#rKayw^FO9~wFP`XG^tV5v6p2a-*{soFx`RP%7~5^l{><=kmG4boe!0$h?1 zD2$Q3rK@X)Eh739`h1*Sir)1LaQuGDiV>0D8J-ZL1~bkMer7iCBe2>)*pL}Z5Uye& z)A07f?hCS8oO&YN9TE7GLJwVbN_!3h~Thk@P;FK_Jd>|Ks0#@8U$B6hw@3rPL|`IZL> z4IsPXGlt3E7$KTr?4V%*4HP4|fvBr2Fe$KG@Ml-unI2x_(hk(rN%8V<%;BeQbKPmZ;&Vo8g$Hr!{6+zwJ1oS(e4LAAq{A=J*VXzQ=F3)1^Ei`iS0=9(X#&G>L@@v#E6rOdk0;dB1eq<5O0j8K*T+7WF)RJ=;XusA+z6inUbRVLd$XXuyZa$tFLClfuO+m9p`XK_Z|NH zV51kAvjxXIjNi_wa-;X?>SKdb$1lY%N=A!Yo*_x=u2^^^eJJ9Z&JB18?_q%=@B_ZX z_1-^srmrdSH~PB$hPWGk?igEA zqlQ0&C!A2qIj_#AO!v{7+VH1=FByS&8AJRr{2_?8`lBz&Upi|l6H{>MPxNh+wL{F; zoQ4ua-Z7>#vBR(r^zUdkyKR&c5#cAz-oL+-ad@#Gh0Vmd3{_f_xrx*huBXTGMg0vj zilgF1O@4t3$rQ!HnC32|8Hr0gYw(atq-UBZ{t(Se{%s&iM;4#t$DmJM5U<69;H==y z*+d=6PRy6u;d0IJdw!_EGBY_lz~vDRn-=h_%gE9HOu^Xa8Q!rfsOpmZ?WGoKQ2B)l z{A|&MSh(=r`-nk*Bnv}%w8Fnm?djqG=-Yw@xfz3v=(7kAtg;%3MygYi>4kGqPap1H z9dgUD@9~>PiEV$3x{f+Sz;oJlAZaNfGb*Twn1EHMj}xBH+on6kns-kj89s!ed_emt zDqUcwce`>{q~){uUkmaCQB=gK%ewnwrXR=Rwn$HyR5MHzX-s zuOWy#|J0VtvDm+IAxTi$^3X^Sax{z~&ERJ<`}1QaG&5`UkAu?yI`;a&~t@?Y?Qxss0lHqU!9s%_XO<_eC>IPW-V5@U1d7)b+;YL zLmdbJG*3i=+0v| z0;6v}JEHNR##Nc?;*;+f-YM_d;9q7^i`k{{kK$j%_iO=JPk}pOnnr$bvgwfK`Z#aW z3|4_VA7$3ONmaTlwse#tM<)7?#AIvrLMfn6?)!z}O%E&_cB(Y9kUL=hdToM+{=SHP zrbC_e43*|T_qp{flA!1wcG!AAf47{p&fn{H(I&s;7W){^5^kXCt!rpq3R^|%7q@NI z-|;Hi*4W)cJR>gF4bed84FE&(3%1Q1ib-=GWLI9b;T?WYJ*~r3PS`MjSz&qpXx{gPuIHr(EQ@T=p3`P*o3kPIRU# zd;6*BJKvcqZdW4~K)qdU@KOHw&TwvBcSQ(0Chww}X@x23DN{W4zZtH)?`|8X12}g$ zR2CLep{g7C`6i}Ky@Wn?39w2^d;SinQ;{ELlkue zYs>ml*8a?%8dS5Ip``ve7zo9BT3^^Z*rqzk$l3`Q%~>@Yl?u40V~qt~7GRIkU!4ag zpJ|2OZ_%)71zjv8G88tP7gc@E4BHRu4hW~}WB6uVR?!M4($;+M-!sHAS8S(D0X~XT zDWS;#ijq=65uJZB*}RdgsveQulx9nn4jMgAPyy~R2U@J%E7w3V3OST< z&NGZKaX;nzy+IefLztez*+4zwKjkI94jKst)A{Y{BYhx6pV3f1flPwcJEBH$a)^XX|AWuYAf2g!oz|J_N zGZac?75tGL+Lz>;7dZonVUJYxmmcqE(y~XA$9zU+AJvRR`+kM$5>{#O(=-&8whY8x zxfZB8!d`$q>mE~khWN5-Texp)_sLW_`u-q{N8nQEGyYmZyOEWoH!mO|f>{*zaVx6A z{7L;%i}rG-RJ`Ln#27?muE5AeRvDFQ;++ML`-A2P&7%noD9hT!&`=MzJduJCVS6n; zNDZunL=Bz~6NBb8DWTpWbK}omuWqN)+y3Iiv&67z{v7nfruKcMJ88nE8jsP~eg{wc zgxhx6xX_cg$Cd`x*W$4lKW+oxot%|mX}{Bkz=!KGF+))1C6^--jGz4;yxg}S-arGu zjuOCm?9RU1XRlbig*cUDDmsJxP&n5a}AD6h^3&G$Ny08paRbpYQKKxaZz;pYy8cIc0{B6+A@7Vv5vM zbdRcj4D%fU;Or+%_Dz2f0P4$&SbPhw)g!LL0me~p^J8mBJ&52cF|#Z5o@78oRaa^f5$4qASZ{!=up8d6Q0G${t_O8rC|J_v#Y2a|qGk zKL7K?HfH4I)a-^OtN85u1MUtI&2K~COX6)#fx1`aZ`fm`2`9DSlWDi>bNRutXIV_a zLlxQyn$3UR47*BCa^(Z>IJNf&K5FgTs^>W7y+Kt4AL!y*Df>KJ8$d&yW@E}nhQ-Ir zKB+Sy`Yq#w&hxCS4FA30-&zR8^i(}c5p={EBa$2^?p7Gtg!hQ1bQQL*O^DZF2OU3fdvak&^p)k==Fqy3I#JZ38FTI|cOLL_Xm>N(7kE!hoAAgDrF zh(_#Fx}iXHbz$g?Y8?A1{p^FAQe%6YB&Ql3YSm*Bb=NJLmEg%TD?nqMy2nu+9&18u zPMvt55Fp?{jT|w*{V>w7eiJ%XXPr0NL-_0lx+nb&7l++BqvF$SLk|J8k0iHH&ORsz zQDHg$5FP(Hk;Ov&lMv-kMx^N}3(}pXKox{bH!o;iSO=$XK6$0`s*BdkL}^GCEQscX zlgA5=orS?=w4(#XkZdqnJ#???+ajU7F#lJF0uyLnwLbu7Y}Zl_0#xM4U(#SZ3#+2v z&2&^2rfLwJR)cTEe|6Zpj!EuR=+gc_@YjKTlIYSX_kG!WEO5-&h{)PQ)lSw>c=cJM z7w$5N)CTCP4yLwUK8GA={6cG4e`vECJH1LQp+B!R%85U&=74sF?-Y6wC$2TA4ymyl zk+zAeEy*X^1d*_-NBAy`FxM!MoQl zAz>AgTIS*?}Sp8<(t&hz#OqR_%!}FmmxgA z_!G+I#w*j>7Z!MRz*!SZtofMHa<*?StlKq8^!uJ_(jZpd7t6`UtNESvo>t*MRug&h zw6_#Ut%=Oyou(|EtpJ~B@U2AuRF#A04dIJJ{)UmynpV#}h|UUm5MwZUNkM@ZvIK}? zf;hzj#xm_Ni3R571_lc^J&(-{{II|K&7vU)wl+8q+!qp*a3<{_V4D z^EQ{oJzYN~Z7h(wlyqX&b6&b7_qw4s+cDUs{ggdt$kN!5Y&M| zas0{Q+s-~{S5U1~KNXu&WmBozq?|uk%U}F3^s&iX7plXNf7a>BF$A~Z!ojn1Ef-^_NmS~Ml>`Sn= ztxBJN-Pb~v>x91kB!|>^Doj>AKp7R&vTZ#qY8o)9m$&r`U7N>ZMxv?Q;HEv#8AXU^ z_JrX-)fP6EhnD?B_gt4*K#z?nHp?R~_YK#@5iYPc4qjViorc!^r3>W0i2J$D%h;e=(qn=5T0IVG&c7`uI~} zN^_~a<;wb6iZrTX+;%V5>9CKd$Y)PZHn<*Q>CBo5w%mzs$89Rj{M=fL3%xlgBEmVl zb&bG9u|BI7$(c4PWM|qo7f0}qlZU&NTeIpmM%KOG#qo%|R2RaoA9*qH?fn4k4)q9H zDL8f1vl>pqp+s*Ok(Xs7SyNQu$gR8l*lWM15mHaFJ~hx-Tw(7kmmT3wTpOLM_1f$= zzs5N%!0r%%R7AtY3Z<|9W6eE}Dju?8*Jbi{{mp^T$}!wBF}}m<{ws9jw!p5tv3FNy zY+ADdhO^=aBURZ)x5)Ze$0?}$Yq$K%-eGcC!bb#?9)CIwk999dMMmV-Kq@a8v}!Wq zYZ)Xxb`d=(>-_vnxS>_fA|#2EVLIA$aGY_F#s#sJ+?roJTBrWdW{Mj zISnWXCssgkdJEYxS>w1|bhud@-!RLhzC`c_XGq;1-c8@0SQD$vvuPhoe1wfEi(|NgPtM<@oKK{-;sPzkFZZtA-gkx=&$3Z20K zo7XS%6rndRxxM8H=bMblEd}`WhGT9Jwq%=G;CnWL9}KHik=ANcKt-pIxROsrSP$6m zap~#~-JUGG<;eXbcjXFAxQ}t@P@@OiF3zGaxLr#45v?R#){guxa(qw?Bu?v$xaJaK z;+`40Q!}$U*Fsop#}05cr&Y!Iq}Vl8SXd^Ddrw!~X={wH1+yUWi3{zqNm-H2B|oq< zQs2RQ42qOj^@82ij?I6m{__15`+aM2=KE1g9tk<(ba|R`kWLwThPay<5hO>?=FBXe1VXc!+tuhIYR{`{64HRB7#i(N2fkx+$FU+KlXO zKp8ZzPj*U-R_MB$-L>|k9k)x=KGE;pZh25!jfHUTu8*rmcdm2JY_t%%KuYhNccSkn zp`v;H$l1Q_0`Sf43MtM+;7MU;JXYwS>?6^EXd<-`Kl5PpU5q@?y;Y000_n~6y-1Pk zX-aU#+NJ31!%+kv_4foB4$!W`ZS-eBY>SXlFk$c{G@q1ek!5DD&5%loN!;^8N@qtQ z)8N@PubFfTZRS71zb5`EjKVSUB-K11FGGM$jvLQQyK2J!DYhl`kPg8&7vs)&llv7c zr-xF!P2{L(_f7CSXD@_>82Z6SEQKaCN49KRrB42ZH&T*)B(>2s;#2s`wt7Glc;V2^ z!!lSUVe^NTW$;yf6^nnTlY-~`yUGk?6Q2;dTN>H56dxvaUz{1JXv8N{dd@L(r_E)H zN=HDN+=*mGUBaV=sqQ|jpUJ$uiXOcBX)wg@rQkEYG6oPxh<)2g;$ACiXC-fw;>#R1HrN6$E8WFvDFl6Lz7yn07pS}c+(NDiILA{=9P4U=YQ|QaT zE$U`6bM8-%Lbbw;e2mpKLp&jX(4_O#01#@nl>6?6mjJNb4;M-_t9S?(+pFCe!MU(t zU&AO;Cyr5{{WwND*Nba+JNfSKx9cV+QYG^C^1t2mz@I$}hAv>tdqMf}TbI?gMsLqQ88i z**D;u$2Cv>zH_@Si;(?~ofBcc;+*9cOU}$3>x&D2c7KUQ4wfiVaf}IP!6Y1EL7O5z@3|!we$Qs^UI(r)bYt1kNUEO`6cL0KsMsu*4RJZbO=Y|^V^&pR~(u;}j zB||@k_JYjrbAo@+fxy;A2Bw- zx+uBI8`hgrQU%`NAAxlDy)~Y-Mp>aG_wokTps7w5ZLWWdynhb-$;bR=Wq9OvZLiNO zzUdZJD5XmN2TOnEu*dxzzv78>yv}`Z!=i5QeHHRfyu0TqKBv5i9p-V{>aX<<=OIw{ z&JAS10KUwkTIb>=F4>dBOT2Mn+wqNtdD{kNvYh5|)jM(_QSdA;iZ{*HovVfGM1}c+ zhwvfqF4k!?sW!pqvuiJJiE^u zQ?VF-O)bll`~{v9opK!|hjgR@-8{K1-|fokt!}J79N1pmemJTT!rE4#|F2F#igaL} zgl^k>oL1%xw_(4@|4h(7yUQnfiJUw_pTF=;ZKmk?`~D*J3ye51XTqxCVFPDxRBY$q z#ZWRK#ZJ=h!{Fb{QWX`O6R;>5!Hc)9ssn!oiIl>{t-039FKkQv9&*Tm6 zIZ*Q_?Qe;gvbV)*KSVBj%RO{wlHfDX&9=rb>~@t>G(Vskx8k_a&mXQ-4*%@dyveft z)1T9M^Cx*9zwvi-S#W@EdF~q>aD5uRTPb%e^``Wpjhj(TdqWmB9_(j5(~PNDT^758Sf1(T3U|Yx?MgS zP1ml5=(*Z1*S&6S_?Zv-^ew6N^2Owp25}Q#Y!mtM5^TrkWy766VbfN{dPn^tH(cY> z8DoB(5x|e=;?e5>pV^sp?)aF+l^gZvvjmU$0?vlQ*uzC#mReAF)oac0{`e@J-f37i+z`h1XXxZ${|6cVog0$8F^ z7>B>_O_V!anCN>acit-xe@?+|X>cw}_Mh?L%8O?_d;9RV2Rq=g39zXcS|J6g9c2Ny zyZq=m<6COj6^d-uDEA)e-lJUKJ^$8mpm$$`G(b(AhMpo`CI6_n@xct7Nit+yVR`qJxN6q*`b(Gj5!tQIn{yx{ykqD5*31As)*toP`rp zfZr@UV`?(cf4@7Yq_z{jEJu5zoNREjs=e%e&{a*!U@LW}3}MFFgP2M0Xc~|B=!5^M zXNub~+itsyjYP|~wVm@LS;L$dW1BM|u$7PPy@!p&lO_KrjD{*f9y3T`&JcJDx5 z$|{R-*NIVU0+PV>R%;K<^5Xld4+>NlI(UFlGz==guXVdWZEius5vuM11!ct#WyrdS z{|xK}&eo87@1!+O*H47BPisWsPY|5U8KQMRb7-AakP0RQ@#p=zH=_U@7GylwZU_|vR z3qLt%j)O?N_c<(h$^J}`{y@4C>G*~CC|Vp=;&dRR$x82nWxfXkNh`blVUQ&DQrPpu zZdh-rRp#WkoM^Fwpav6@HW>?eC5+0UFVN1Kb?sesD6d7+Wxc($C(MFWZiZc7qAB(B zH=J;|K1UoSW&cUzK?ow)uwaB%=7aC1z6;F%3d?jff?dUlBdb$BHB=|m6wPtQXok~1q%j->UGD=eI_jM#uk;+NTrCo76tcVEbM#pz!)LhgESwG_I07Lax?m`jo=>p2TTH zCd82F;iw$@`*%{Zd`9j2e!+mIjX*FSs%IsPgtctP0pe4RCax#JLX>2L*12Zq| zL-vBY{M*z0nqqvaYm)n^y>HHq4{Dp+XVgR?!Foffr} z36{7xMpW}O#MLEiyVITz;=vLdDO6ItH26{04S55qpI#{^tvY0qYJT+tVLIUgQo{A) zxq;34D+F_O0Xu^Z_CdM4P`wQ=%>EGC4{_I^eO5}{aYkgvbB8v32yzCR6E5|MjR)a% z1tJ@9MCioA^N(<#g3GT0p>*k3$koT1d$!&FH*^BaDnc5d+Z z^#`aa@G84%MI9nZK-4ur#-;b3+YlsAboDm(Y z%~Z`xIhkG$*;Tmwz_9m69^f;9Nc_{`u9Gb`vD{PF-IS5##?})iA)|M=%%hm#Zz_n? zxquj9a1rLpU;&gfpAVDiAA_aQVy#l6uwYy-XDAe=kx7BUIurSjv zNz*Z6u5aLk2SL|(VNqi?1D!M|jD+%b$4k8}1|NSJb+SA>*q`TxPJU@s&xvkp#Tilk z`IA)c8NwmAT@j9tkaG&Tr2&U_Pw%H*9n8ud4uUzlDa7vE2psV>{{?p4>9k>N7kl^6Ld{xBjG`2vX1%Rb2b6nM#Fg2euZZ zOEC=(m)KThW%z%7p=?Ow8Z0Fl#15Q14xJPnu`VCU{(jG%kYXJmpys z?mLpjZF;S(iv^n?#0=&wt{0BqS>vTWQWJm`7XjP`fy|sZE?!?OW7-pS3nU{3zVJwZ zIb;+6ZD$U}$bV(?F`Oi5d-XonPo@WKg-;aKO^R0gaS#(FqE zIEmv^-;U3HYTCmEG+_Q7Zby%lGA+rlzdy3p#J@I6D|56=rfE*Frtz9b2e?^HltsKC zKvaZZ!v!og13Yt-f6m9nN@a&UYHSy;U2#R5g4Ql=W?QC5c!L?N;fp6{f;$j~|B;pl zT^NsnEg(x3Csw^|%fGCRxIe1uPd)>C3 z@qw6U>9`1Xb|Yr$ohcji8`oWZN)yuqYQtUT`Is##2+Te~1Ng2a>hkruS?0-&aNvz6 z)8%cai2##ebXNFeE+w39nN^bNU(y6s97drrTw`);>s$Y9kADJhnrnRv#ieRcJkZ!j zyMw`3D_Q9&?nhAXLFaO3m#Fpr`q7Dx2d0a>8v@w(r(CQxJ@XG$9?8&~Dmo ziW2PREoUau@cv({t+0H$EMnkBXJD?ZESjmJx~twBdQ-Lrq|b5d|qym@-z3@PryL_6nvmuPE>W4{?%u zX@V&69kLrYMsq01MJJX;v(?f@$0ld3p!Q`6-b?dE~Zf*QRhsH?_re zIrSM7(@H^N4R>5Fz7;UN-WxrT?~A)%@3C*TW-~mRE=^>T(K+K_hsa~`!-R5s6S}fhKZsAkshjyNUl(}4 zmyy#>4W&z#5|e8tzTzsioD4i^noDT@?m5FDRHUj<)-J*s%tANuk$4ZF&gfwCv|73N zfL9sObzN@=E|T=DwcXtB+8;p9(1k6H{GFxWh$zf$Kr;L*osX)d0iMEKe81=Q74Y6(9A%yMeJUoF8*w;aw7xSAIjbLb0=d@X%Ow#uN}4 zV%aM#w0-eP0&Sl;)@j=b5eBPeSg?WoCzbTPx3a@gOqH}$;@>;h(*Hx!(wMK%hm{Rf z8zgAM2>j5aa?W@QqhdwNz7+0IUxfd3WVFrzDL;CZbA9SbkpVf0u(iaBWcMNUxw#X| z{Z$=U;SNck`OtIP%2B;uFyjUS5fdi#MME``Upg}RZ?ee0z15c$2k8kn{32gz^Y zdOlo+WoLXdr9G~ZVHu)sb!B{@HwBYii)Kj9Wi>| zA4(yzF~Bs|zTv2K8yXpASSgY;tP|k3A^(Zx>%dD}YlbVt>Ta67rlF-=@kqk-LEGM> z?i$BLj4!oUt^0vB;=5mW!~V~i;O^?lE_!^hK>pcC>;asslJlRW+M^7d2QZ5!`c_Vb zI4UUI8g9KOnHrJBA}GiNc^t<5reIOn%5~u<8(49%2ec3I%2rTG1UFyW*+a_khMmD} z_%Z;)FLdY9~p5G3G;ORFfD*--wmKDZ5XRh=~-TXS=|+uQqhS%CBYM6qV&qxL^6eES})JhQ*4 z8y%%c?xotwY6K6vVFv~Rs|m%@bJZe9Ai}M@YE@Dlt4xvJ-rk@wfXq+g;RJa~7Lj9W z2U`hDz#0;61iWs*U&WG+*Z&r|Lw1(Bqv8QJD!Qhd+|ivF36hw7xUL;E_4i(~M3lhp zxP(+KK8Ag%fqE^N_b-K8;MWbxCH5i;O?UP}k{hZ+1N~`k<^Mh4@Be$icr;^H&Nl7X zALvFZm~KBt`eAhJ(|~o>3t569@AQ&g@+j@-;PeU1MbqJ-Y)Q5qm&pVTmX|Ak5#p=; zHHXIY*^wl!Pes@XuoZqj|J-l(5;j(zf;Cl$0(g^})YRU2)J0Z_5F&R)6pXgKi@p}u zVWR9o_LYc+m1Hv(_A(VaW-XQ&4 zqad%X#mvZkZ*OK`HM3igaj(tse_ruo6xx^cf!YX>qoO^eY9)-8KSGNh!e`rWtjAH=guC;%Gu$>kNbWImq1>0nP@SqA}egU2n zjhXHlXQ@P4JW?ve<&OxqXtTk5SXSd+F(ZOvzFP41^y%AB;xIHtpTiVWEvO&?RoEHbOH)S)2W z7vLZJj_iEj@mNT3pA}h_P5D|D9bpkbq8J}`y&d<2n9q(BYDWxq5P|yYTQagCA*e*> z>$0XF^^QSt4V(aG?X;UukFMjft_4zz5mjsT{Aku2FtqnSIRsS#uv#}1qeVx@2DrVb zoak9?YJ4^Ei4)@^eaTnL&tLTIW(sI8gnkAB5@D%@bVivuo#jKA4*n>qZ!K+O&PHu- z)492=2wI}}gXmw?kRf)!jnZgi*gK+Qo*2EWM34iC`0daoGsqewwWNQ|>)n!KI6$MC_1RqtyWp$#jHLM7c@?EN6J8fR8dj7vv zm*|WN!1S$)3h4&;VK$Z3&r}Smf1&9{Z0;~^jy4X$75e@xrH?!k3G++i{nivE-7PVr zf?Nw|WkAp$Ul*D%7qji1q4I-9dTNGrE>QsW7<*x1&Y_ZuX>GLdZjth369f+{8-IJX z;P$4(J`gQQYkduoqK=z?a>ix#?(gqzHZ8>b=XMh(dM9Ez3?B&=c<8|&TmV<^jSWmX zLb}3)%q{VeZ&Nlo;gMJo_D>E38GlNS^|$iS3^;Z0uw=3tu~LWT!Lra8gi?wRJgky) z-tr?XDj|g{ywFIbEvA>t)Qs5nm_cyha|`Sk$uh#

4vweS?s8)bJ_KQD~wgjJ>I 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 literal 0 HcmV?d00001 diff --git a/spine-ue4/Content/Test/Assets/coin.atlas b/spine-ue4/Content/Test/Assets/coin.atlas new file mode 100644 index 000000000..bcdb26b10 --- /dev/null +++ b/spine-ue4/Content/Test/Assets/coin.atlas @@ -0,0 +1,27 @@ + +coin.png +size: 512,128 +format: RGBA8888 +filter: Linear,Linear +repeat: none +coin + rotate: false + xy: 2, 2 + size: 130, 123 + orig: 130, 123 + offset: 0, 0 + index: -1 +coin-invert + rotate: false + xy: 134, 2 + size: 130, 123 + orig: 130, 123 + offset: 0, 0 + index: -1 +shine + rotate: false + xy: 266, 2 + size: 36, 123 + orig: 36, 123 + offset: 0, 0 + index: -1 diff --git a/spine-ue4/Content/Test/Assets/coin.json b/spine-ue4/Content/Test/Assets/coin.json new file mode 100644 index 000000000..f678be598 --- /dev/null +++ b/spine-ue4/Content/Test/Assets/coin.json @@ -0,0 +1,171 @@ +{ +"skeleton": { "hash": "4cI0KYdFTZbO7vkQYPFQN+yauDw", "spine": "3.6.14-beta", "width": 260, "height": 359.92, "images": "./images/" }, +"bones": [ + { "name": "root" }, + { "name": "coin-root", "parent": "root", "y": 300, "color": "ff0000ff" }, + { "name": "coin", "parent": "coin-root", "color": "ffe037ff" }, + { "name": "clipping", "parent": "coin", "x": 7.25, "scaleX": 0.96, "scaleY": 0.967, "color": "ffe037ff" }, + { "name": "shine", "parent": "coin-root", "rotation": -24.17, "scaleY": 1.478, "color": "ffffffff" } +], +"slots": [ + { "name": "images/coin", "bone": "coin", "attachment": "coin" }, + { "name": "clipping", "bone": "clipping", "attachment": "clipping" }, + { "name": "images/shine", "bone": "shine", "color": "ffffff93", "attachment": "shine", "blend": "additive" } +], +"skins": { + "default": { + "clipping": { + "clipping": { + "type": "clipping", + "end": "images/coin", + "vertexCount": 36, + "vertices": [ 0.82, 120.87, 25.27, 118.4, 49.23, 110.99, 71.46, 98.15, 88.25, 83.08, 102.58, 64.8, 112.21, 46.03, 117.89, 28, 121.35, 9.23, 120.61, -11.52, 117.65, -30.29, 111.72, -48.08, 102.33, -65.61, 89.47, -82.23, 76.24, -94.71, 61.33, -105.13, 46.26, -112.54, 28.73, -118.22, 8.73, -120.89, -12.27, -120.89, -32.03, -116.94, -51.04, -110.27, -67.59, -101.63, -82.91, -88.78, -96.25, -74.21, -108.35, -55.68, -116.5, -35.43, -120.7, -14.19, -121.69, 5.57, -118.97, 27.56, -111.56, 49.04, -100.43, 69.69, -84.38, 87.47, -66.1, 102.29, -45.6, 112.67, -23.62, 118.59 ], + "color": "ce3a3aff" + } + }, + "images/coin": { + "coin": { + "type": "mesh", + "uvs": [ 1, 1, 0.51662, 0.99661, 0.38311, 0.99567, 0.29957, 0.96664, 0.22817, 0.93237, 0.16736, 0.88777, 0.11597, 0.83202, 0.06732, 0.76058, 0.03288, 0.69072, 0.00816, 0.61391, 0, 0.52843, 0, 0.43778, 0.02307, 0.33992, 0.06544, 0.24204, 0.11924, 0.16659, 0.17691, 0.10919, 0.24399, 0.06252, 0.31853, 0.02742, 0.41818, 0.0076, 0.52609, 1.0E-5, 1, 0, 0.45994, 0.99066, 0.37873, 0.97119, 0.30719, 0.94057, 0.24626, 0.89841, 0.19491, 0.85157, 0.14893, 0.79961, 0.11299, 0.73943, 0.08595, 0.67565, 0.06609, 0.60105, 0.05753, 0.52647, 0.05856, 0.44906, 0.07176, 0.36094, 0.10407, 0.28078, 0.15657, 0.19211, 0.22811, 0.1162, 0.29907, 0.0658, 0.38388, 0.02814, 0.46119, 0.00993 ], + "triangles": [ 38, 18, 19, 37, 17, 18, 37, 18, 38, 36, 16, 17, 36, 17, 37, 35, 15, 16, 35, 16, 36, 34, 14, 15, 34, 15, 35, 34, 33, 13, 34, 13, 14, 12, 13, 33, 32, 12, 33, 11, 12, 32, 31, 11, 32, 31, 10, 11, 30, 10, 31, 31, 33, 30, 29, 30, 33, 29, 9, 10, 29, 10, 30, 32, 33, 31, 34, 28, 29, 8, 9, 29, 8, 29, 28, 33, 34, 29, 25, 26, 27, 7, 8, 28, 7, 28, 27, 27, 28, 25, 26, 7, 27, 6, 7, 26, 34, 36, 28, 28, 36, 25, 6, 26, 25, 5, 6, 25, 34, 35, 36, 37, 24, 25, 5, 25, 24, 4, 5, 24, 36, 37, 25, 22, 23, 24, 4, 24, 23, 3, 4, 23, 24, 21, 22, 3, 23, 22, 38, 24, 37, 24, 1, 21, 2, 22, 21, 3, 22, 2, 1, 38, 19, 1, 24, 38, 2, 21, 1, 19, 20, 0, 1, 19, 0 ], + "vertices": [ 130, -123.5, 4.32, -122.66, -30.39, -122.43, -52.11, -115.26, -70.68, -106.8, -86.49, -95.78, -99.85, -82.01, -112.5, -64.36, -121.45, -47.11, -127.88, -28.14, -130, -7.02, -130, 15.37, -124, 39.54, -112.99, 63.72, -99, 82.35, -84, 96.53, -66.56, 108.06, -47.18, 116.73, -21.27, 121.62, 6.78, 123.5, 130, 123.5, -10.42, -121.19, -31.53, -116.39, -50.13, -108.82, -65.97, -98.41, -79.32, -86.84, -91.28, -74, -100.62, -59.14, -107.65, -43.39, -112.82, -24.96, -115.04, -6.54, -114.77, 12.58, -111.34, 34.35, -102.94, 54.15, -89.29, 76.05, -70.69, 94.8, -52.24, 107.25, -30.19, 116.55, -10.09, 121.05 ], + "hull": 21, + "edges": [ 0, 40, 42, 44, 44, 46, 46, 48, 48, 50, 50, 52, 52, 54, 54, 56, 56, 58, 58, 60, 60, 62, 62, 64, 64, 66, 66, 68, 68, 70, 70, 72, 72, 74, 74, 76, 36, 34, 34, 32, 32, 30, 30, 28, 28, 26, 26, 24, 24, 22, 20, 22, 20, 18, 18, 16, 16, 14, 14, 12, 12, 10, 10, 8, 8, 6, 6, 4, 0, 2, 2, 4, 42, 2, 38, 40, 36, 38, 76, 38, 2, 38 ], + "width": 259, + "height": 245 + }, + "coin-invert": { + "type": "mesh", + "uvs": [ 0.61921, 0.00932, 0.70137, 0.03058, 0.76675, 0.06301, 0.82357, 0.10192, 0.86533, 0.14084, 0.90128, 0.1866, 0.92763, 0.22768, 0.95707, 0.28353, 0.97795, 0.33937, 0.99074, 0.38663, 1, 0.45194, 1, 0.50671, 1, 0.56148, 0.98993, 0.62238, 0.97282, 0.6757, 0.95125, 0.73083, 0.91771, 0.78704, 0.88283, 0.83498, 0.84141, 0.87966, 0.79349, 0.91785, 0.73701, 0.95172, 0.65999, 0.98127, 0.60659, 0.991, 0.51662, 0.99661, 0, 1, 0, 0, 0.52609, 1.0E-5, 0.57849, 0.98348, 0.64806, 0.96162, 0.70899, 0.92882, 0.75987, 0.89639, 0.80219, 0.85685, 0.83745, 0.81722, 0.86381, 0.77794, 0.89445, 0.72582, 0.9167, 0.67213, 0.93142, 0.61628, 0.94164, 0.56011, 0.94506, 0.50823, 0.9437, 0.45454, 0.93514, 0.39905, 0.91905, 0.34031, 0.89748, 0.28194, 0.8691, 0.2284, 0.83932, 0.18768, 0.79995, 0.143, 0.76298, 0.10841, 0.71814, 0.07598, 0.66748, 0.04824, 0.61408, 0.0277, 0.5665, 0.01437 ], + "triangles": [ 50, 26, 0, 49, 50, 0, 48, 0, 1, 49, 0, 48, 47, 1, 2, 48, 1, 47, 46, 47, 2, 46, 2, 3, 45, 46, 3, 45, 3, 4, 44, 45, 4, 44, 4, 5, 43, 44, 5, 43, 5, 6, 42, 43, 6, 42, 6, 7, 41, 42, 7, 41, 7, 8, 40, 41, 8, 40, 8, 9, 39, 40, 9, 10, 39, 9, 39, 10, 11, 38, 39, 11, 41, 40, 38, 38, 40, 39, 38, 11, 12, 37, 38, 12, 38, 36, 41, 37, 36, 38, 13, 37, 12, 36, 37, 13, 36, 43, 41, 41, 43, 42, 14, 36, 13, 35, 36, 14, 44, 43, 36, 35, 34, 36, 15, 35, 14, 34, 35, 15, 44, 36, 45, 34, 33, 36, 16, 34, 15, 33, 34, 16, 48, 47, 49, 36, 33, 45, 17, 33, 16, 32, 33, 17, 32, 31, 33, 18, 32, 17, 31, 32, 18, 33, 29, 45, 45, 47, 46, 31, 30, 33, 19, 30, 31, 19, 31, 18, 49, 47, 45, 30, 29, 33, 20, 29, 30, 20, 30, 19, 50, 49, 29, 45, 29, 49, 21, 28, 29, 21, 29, 20, 29, 27, 50, 28, 27, 29, 22, 27, 28, 22, 28, 21, 23, 25, 26, 23, 26, 50, 23, 50, 27, 23, 27, 22, 24, 25, 23 ], + "vertices": [ 42.18, 121.2, 63.54, 115.95, 80.54, 107.94, 95.31, 98.32, 106.17, 88.71, 115.51, 77.41, 122.37, 67.26, 130.02, 53.47, 135.45, 39.68, 138.77, 28, 141.18, 11.87, 141.18, -1.66, 141.18, -15.19, 138.56, -30.23, 134.11, -43.4, 128.51, -57.02, 119.79, -70.9, 110.72, -82.74, 99.95, -93.78, 87.49, -103.21, 72.8, -111.58, 52.78, -118.87, 38.9, -121.28, 15.5, -122.66, -118.82, -123.5, -118.82, 123.5, 17.97, 123.5, 31.59, -119.42, 49.68, -114.02, 65.52, -105.92, 78.75, -97.91, 89.75, -88.14, 98.92, -78.35, 105.77, -68.65, 113.74, -55.78, 119.52, -42.52, 123.35, -28.72, 126.01, -14.85, 126.9, -2.03, 126.54, 11.23, 124.32, 24.94, 120.13, 39.44, 114.53, 53.86, 107.15, 67.09, 99.4, 77.14, 89.17, 88.18, 79.56, 96.72, 67.9, 104.73, 54.73, 111.59, 40.84, 116.66, 28.47, 119.95 ], + "hull": 27, + "edges": [ 46, 52, 46, 54, 54, 56, 56, 58, 58, 60, 60, 62, 62, 64, 64, 66, 66, 68, 68, 70, 70, 72, 72, 74, 74, 76, 76, 78, 78, 80, 80, 82, 82, 84, 84, 86, 86, 88, 88, 90, 90, 92, 92, 94, 94, 96, 96, 98, 98, 100, 100, 52, 52, 0, 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14, 16, 20, 22, 22, 24, 24, 26, 26, 28, 28, 30, 30, 32, 32, 34, 34, 36, 36, 38, 38, 40, 40, 42, 42, 44, 44, 46, 48, 50, 50, 52, 46, 48, 16, 18, 18, 20 ], + "width": 259, + "height": 245 + } + }, + "images/shine": { + "shine": { "width": 72, "height": 245 } + } + } +}, +"animations": { + "rotate": { + "slots": { + "images/coin": { + "attachment": [ + { "time": 0.5, "name": "coin-invert" } + ] + }, + "images/shine": { + "color": [ + { "time": 0, "color": "ffffff00" }, + { "time": 0.2667, "color": "ffffffbc" }, + { "time": 0.5, "color": "ffffff00" }, + { "time": 0.7333, "color": "ffffffbc" }, + { "time": 1, "color": "ffffff00" } + ] + } + }, + "bones": { + "shine": { + "translate": [ + { + "time": 0, + "x": 175.08, + "y": 0, + "curve": [ 0.213, 0.65, 0.931, 0.67 ] + }, + { + "time": 0.5, + "x": -127.2, + "y": 0, + "curve": [ 0.55, 0.09, 0.931, 0.67 ] + }, + { "time": 1, "x": 175.08, "y": 0 } + ], + "scale": [ + { + "time": 0, + "x": 1, + "y": 1, + "curve": [ 0.213, 0.65, 0.931, 0.67 ] + }, + { + "time": 0.5, + "x": 2, + "y": 1, + "curve": [ 0.55, 0.09, 0.931, 0.67 ] + }, + { "time": 1, "x": 1, "y": 1 } + ] + }, + "coin": { + "translate": [ + { "time": 0, "x": 0, "y": 0 }, + { "time": 0.5, "x": 0.93, "y": 0 }, + { "time": 0.5011, "x": -9.18, "y": 0 }, + { "time": 1, "x": 2, "y": 0 } + ] + }, + "clipping": { + "translate": [ + { "time": 0, "x": -0.41, "y": 0 }, + { "time": 0.2667, "x": 1.2, "y": 1.21 }, + { "time": 0.5, "x": 0, "y": 0 }, + { "time": 0.7333, "x": -4.15, "y": 0 }, + { "time": 1, "x": -3.16, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1 }, + { "time": 0.2667, "x": 0.464, "y": 1.014 }, + { "time": 0.4667, "x": 0.067, "y": 1.002 }, + { "time": 0.5, "x": 0.033, "y": 1 }, + { "time": 0.7333, "x": 0.492, "y": 1.014 }, + { "time": 1, "x": 1, "y": 1 } + ] + } + }, + "deform": { + "default": { + "images/coin": { + "coin": [ + { + "time": 0, + "offset": 4, + "vertices": [ 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598 ] + }, + { + "time": 0.2333, + "vertices": [ -57.61087, 0, 1.15225, 0, 15.20888, 0, 24.26007, 0, 31.99586, 0, 38.58396, 0, 44.15197, 0, 49.42246, 0, 53.15465, 0, 55.83239, 0, 56.71656, 0, 56.71656, 0, 54.21722, 0, 49.62682, 0, 43.79747, 0, 37.5494, 0, 30.28123, 0, 22.2055, 0, 11.40953, 0, 0, 0, -57.61087, 0, 8.04186, 0, 17.91416, 0, 26.61125, 0, 34.01835, 0, 40.26029, 0, 45.85036, 0, 50.21972, 0, 53.50714, 0, 55.9207, 0, 56.96101, 0, 56.83617, 0, 55.23131, 0, 51.30379, 0, 44.9216, 0, 36.22496, 0, 27.59846, 0, 17.28874, 0, 7.89076 ] + }, + { + "time": 0.4667, + "vertices": [ -115.22174, 0, 2.3045, 0, 20.08046, 0, 40.51821, 0, 57.98577, 0, 72.86182, 0, 85.43448, 0, 97.33535, 0, 105.76271, 0, 111.80908, 0, 113.80557, 0, 113.80557, 0, 108.16202, 0, 97.7968, 0, 84.63402, 0, 70.52576, 0, 54.11411, 0, 35.87894, 0, 11.50145, 1.74997, 0, 0, -115.22174, 0, 16.08371, 0, 35.82832, 0, 53.2225, 0, 68.0367, 0, 80.52058, 0, 91.70073, 0, 100.43944, 0, 107.01427, 0, 111.84139, 0, 113.92201, 0, 113.67234, 0, 110.46262, 0, 102.60757, 0, 89.84319, 0, 72.44992, 0, 55.19692, 0, 34.57748, 0, 15.78153 ] + }, + { + "time": 0.5, + "vertices": [ -123.45187, 0, 2.46911, 0, 21.49595, 0, 43.40345, 0, 62.12716, 0, 78.07299, 0, 91.54979, 0, 104.3065, 0, 113.33989, 0, 119.82108, 0, 121.96114, 0, 121.96114, 0, 115.91174, 0, 104.80113, 0, 90.69177, 0, 75.56894, 0, 57.97707, 0, 38.43056, 0, 12.3, 0, 0, 0, -123.45187, 0, 17.23255, 0, 38.38749, 0, 57.02411, 0, 72.89646, 0, 86.27205, 0, 98.25078, 0, 107.61369, 0, 114.65815, 0, 119.83006, 0, 122.0593, 0, 121.79179, 0, 118.35281, 0, 109.93669, 0, 96.26056, 0, 77.62492, 0, 59.13956, 0, 37.0473, 0, 16.90878 ] + } + ], + "coin-invert": [ + { + "time": 0.5, + "vertices": [ -23.47706, 1.27002, -43.40744, 0, -59.7846, 0, -74.77602, 0, -85.79382, 0, -95.27632, 0, -102.23021, 0, -109.99683, 0, -115.50598, 0, -118.87909, 0, -121.32259, 0, -121.32259, 0, -121.32258, 0, -118.66653, 0, -114.15101, 0, -108.4615, 0, -99.61115, 0, -90.41013, 0, -79.48267, 0, -66.83928, 0, -51.93813, 0, -31.61855, 0, -19.56224, -1.52396, -12.52719, 0, 120.72772, 0, 120.72777, 0, -14.97203, 0, -28.48602, 0, -46.43241, 0, -62.14667, 0, -75.27165, 0, -86.18799, 0, -95.28229, 0, -102.08092, 0, -109.98608, 0, -115.7252, 0, -119.52184, 0, -122.15746, 0, -123.04041, 0, -122.68725, 0, -120.4799, 0, -116.33008, 0, -110.76754, 0, -103.44593, 0, -95.76433, 0, -85.61052, 0, -76.07477, 0, -64.50826, 0, -51.44074, 0, -37.66688, 0, -25.39402 ] + }, + { + "time": 0.7667, + "vertices": [ -12.2558, 0, -21.82668, 0, -29.4435, 0, -36.06335, 0, -40.92855, 0, -45.1158, 0, -48.18647, 0, -51.61602, 0, -54.04874, 0, -55.53822, 0, -56.61722, 0, -56.61722, 0, -56.61721, 0, -55.44436, 0, -53.45041, 0, -50.93806, 0, -47.02994, 0, -42.967, 0, -38.1417, 0, -32.55868, 0, -25.97868, 0, -17.00604, 0, -10.78498, 0, -5.84602, 0, 56.33961, 0, 56.33963, 0, -6.98695, 0, -13.29348, 0, -21.66846, 0, -29.00178, 0, -35.12677, 0, -40.22107, 0, -44.46507, 0, -47.63776, 0, -51.32684, 0, -54.0051, 0, -55.77686, 0, -57.00682, 0, -57.41886, 0, -57.25405, 0, -56.22396, 0, -54.28737, 0, -51.69152, 0, -48.27477, 0, -44.69002, 0, -39.95158, 0, -35.50156, 0, -30.10386, 0, -24.00568, 0, -17.57788, 0, -11.85054 ] + }, + { + "time": 1, + "vertices": [ -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001 ] + } + ] + } + } + } + } +} +} \ No newline at end of file diff --git a/spine-ue4/Content/Test/Assets/coin.png b/spine-ue4/Content/Test/Assets/coin.png new file mode 100644 index 0000000000000000000000000000000000000000..f5ea3ad0dbe9ef29fd7052411cbaf07831fdba3c GIT binary patch literal 24464 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 XMsDcwlkogC+<);*^J&==tC0T!Y__lF literal 0 HcmV?d00001 diff --git a/spine-ue4/Content/Test/Assets/coin.uasset b/spine-ue4/Content/Test/Assets/coin.uasset new file mode 100644 index 0000000000000000000000000000000000000000..9bb9bb3756b01867c5ef781f14738c9bbd05e32a GIT binary patch literal 16181 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 literal 0 HcmV?d00001 diff --git a/spine-ue4/Content/Test/Blueprints/CoinBlueprint.uasset b/spine-ue4/Content/Test/Blueprints/CoinBlueprint.uasset new file mode 100644 index 0000000000000000000000000000000000000000..65400acb850ff813292d5d3ab37e60b636dd267d GIT binary patch literal 51409 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 ScreenMaterialRef(TEXT("/SpinePlugin/SpineUnlitScreenMaterial")); ScreenBlendMaterial = ScreenMaterialRef.Object; - TextureParameterName = FName(TEXT("SpriteTexture")); + + worldVertices = spFloatArray_create(1024 * 2); + clipper = spSkeletonClipping_create(); +} + +void USpineSkeletonRendererComponent::FinishDestroy() { + if (clipper) spSkeletonClipping_dispose(clipper); + if (worldVertices) spFloatArray_dispose(worldVertices); + Super::FinishDestroy(); } void USpineSkeletonRendererComponent::BeginPlay () { @@ -179,9 +187,7 @@ void USpineSkeletonRendererComponent::UpdateMesh(spSkeleton* Skeleton) { TArray uvs; TArray colors; TArray darkColors; - - TArray attachmentVertices; - attachmentVertices.SetNumUninitialized(2 * 1024); + int idx = 0; int meshSection = 0; UMaterialInstanceDynamic* lastMaterial = nullptr; @@ -192,6 +198,7 @@ void USpineSkeletonRendererComponent::UpdateMesh(spSkeleton* Skeleton) { unsigned short quadIndices[] = { 0, 1, 2, 0, 2, 3 }; for (int i = 0; i < Skeleton->slotsCount; ++i) { + float* attachmentVertices = worldVertices->items; unsigned short* attachmentIndices = nullptr; int numVertices; int numIndices; @@ -203,27 +210,31 @@ void USpineSkeletonRendererComponent::UpdateMesh(spSkeleton* Skeleton) { spSlot* slot = Skeleton->drawOrder[i]; spAttachment* attachment = slot->attachment; if (!attachment) continue; - if (attachment->type != SP_ATTACHMENT_REGION && attachment->type != SP_ATTACHMENT_MESH) continue; + if (attachment->type != SP_ATTACHMENT_REGION && attachment->type != SP_ATTACHMENT_MESH && attachment->type != SP_ATTACHMENT_CLIPPING) continue; if (attachment->type == SP_ATTACHMENT_REGION) { spRegionAttachment* regionAttachment = (spRegionAttachment*)attachment; spColor_setFromColor(&attachmentColor, ®ionAttachment->color); attachmentAtlasRegion = (spAtlasRegion*)regionAttachment->rendererObject; - spRegionAttachment_computeWorldVertices(regionAttachment, slot->bone, attachmentVertices.GetData(), 0, 2); + spRegionAttachment_computeWorldVertices(regionAttachment, slot->bone, attachmentVertices, 0, 2); attachmentIndices = quadIndices; attachmentUvs = regionAttachment->uvs; numVertices = 4; numIndices = 6; - } else /*mesh*/ { + } else if (attachment->type == SP_ATTACHMENT_MESH) { spMeshAttachment* mesh = (spMeshAttachment*)attachment; spColor_setFromColor(&attachmentColor, &mesh->color); attachmentAtlasRegion = (spAtlasRegion*)mesh->rendererObject; - if (mesh->super.worldVerticesLength > attachmentVertices.Num()) attachmentVertices.SetNum(mesh->super.worldVerticesLength); - spVertexAttachment_computeWorldVertices(&mesh->super, slot, 0, mesh->super.worldVerticesLength, attachmentVertices.GetData(), 0, 2); + if (mesh->super.worldVerticesLength > worldVertices->size) spFloatArray_setSize(worldVertices, mesh->super.worldVerticesLength); + spVertexAttachment_computeWorldVertices(&mesh->super, slot, 0, mesh->super.worldVerticesLength, attachmentVertices, 0, 2); attachmentIndices = mesh->triangles; attachmentUvs = mesh->uvs; numVertices = mesh->super.worldVerticesLength >> 1; numIndices = mesh->trianglesCount; + } else /* clipping */ { + spClippingAttachment* clip = (spClippingAttachment*)slot->attachment; + spSkeletonClipping_clipStart(clipper, slot, clip); + continue; } // if the user switches the atlas data while not having switched @@ -252,6 +263,16 @@ void USpineSkeletonRendererComponent::UpdateMesh(spSkeleton* Skeleton) { material = pageToNormalBlendMaterial[attachmentAtlasRegion->page]; } + if (spSkeletonClipping_isClipping(clipper)) { + spSkeletonClipping_clipTriangles(clipper, attachmentVertices, numVertices << 1, attachmentIndices, numIndices, attachmentUvs); + attachmentVertices = clipper->clippedVertices->items; + numVertices = clipper->clippedVertices->size >> 1; + attachmentIndices = clipper->clippedTriangles->items; + numIndices = clipper->clippedTriangles->size; + attachmentUvs = clipper->clippedUVs->items; + if (clipper->clippedTriangles->size == 0) continue; + } + if (lastMaterial != material) { Flush(meshSection, vertices, indices, uvs, colors, darkColors, lastMaterial); lastMaterial = material; @@ -282,9 +303,12 @@ void USpineSkeletonRendererComponent::UpdateMesh(spSkeleton* Skeleton) { idx += numVertices; depthOffset += this->DepthOffset; + + spSkeletonClipping_clipEnd(clipper, slot); } Flush(meshSection, vertices, indices, uvs, colors,darkColors, lastMaterial); + spSkeletonClipping_clipEnd2(clipper); } #undef LOCTEXT_NAMESPACE diff --git a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonRendererComponent.h b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonRendererComponent.h index c78ec0e62..546539578 100644 --- a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonRendererComponent.h +++ b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonRendererComponent.h @@ -67,6 +67,8 @@ public: UPROPERTY(Category = Spine, EditAnywhere, BlueprintReadWrite) FLinearColor Color = FLinearColor(1, 1, 1, 1); + + virtual void FinishDestroy() override; protected: void UpdateMesh (spSkeleton* Skeleton); @@ -89,4 +91,7 @@ protected: UPROPERTY() TArray atlasScreenBlendMaterials; TMap pageToScreenBlendMaterial; + + spFloatArray* worldVertices; + spSkeletonClipping* clipper; };