From ba70ec17b4b34298eaa8225a4e57d7503da4f201 Mon Sep 17 00:00:00 2001 From: badlogic Date: Tue, 13 Dec 2016 17:17:59 +0100 Subject: [PATCH] [ue4] Fixed up bone driver, only does position at the moment --- spine-ue4/Content/Maps/example.umap | Bin 972591 -> 972827 bytes .../Content/SpineBoy/Hover_Blueprint.uasset | Bin 0 -> 130410 bytes .../Private/SpineBoneDriverComponent.cpp | 5 +++-- .../Private/SpineSkeletonComponent.cpp | 8 ++++++-- 4 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 spine-ue4/Content/SpineBoy/Hover_Blueprint.uasset diff --git a/spine-ue4/Content/Maps/example.umap b/spine-ue4/Content/Maps/example.umap index bf3bc2f02d466de6eedc5e72c2ba1c9b68868364..ad6e14d7ca58c73da381852c4c6c3e3d8546b0b0 100644 GIT binary patch delta 171763 zcmeI52Y3|K_xE>}EG7^jfk3h$kU%J*%?1L3AY_x!Yv>>y1skx42qI;JfQobmG9cJ~ zR@w##h$za^RHWFj7r?Hli(Rqgy=QhNWyw8;m*4-**Z=e0=ebNd=id7{cfR+|oyqQ! z=j*Uxdxw>CuDPX;&E~M#Y<)dbCWwvQHe9jUvP2FON0pLowtix}vX#v?MQrbBWV5~0 zUF?W-rnk-ZjmYYmkC)uu@TIQ1`rUVA$=AcXi=sxE;j7*nUa^v>ecIvtHp*Q}<3wR_ zbsIN%f@|Q^8>dXj^vrT~_sp0uZA|8*+a^q%cH@-kwy2DmWAc>>BkcJ%Ia({pwMB`{ z2@^fjCJdf>-MHx!hI*z=x^B?4aZ_#;=O){R-}Jbi|3Jm*m0Lv#$I!ZlL|kjHe)0J+ zS+<=!S`W@os@}?;e{D>zy?(rK>T}zq={H_G?$+s@Crp}fy=W?XnrG^SY13!fJ|4BD zY5woEx`b&1Yk#keOqi!tsdFYjvhE6d{>h|_irRxM!o77w4V3;YC@82K+_h2Dlq}m( z#C7TnSx1-tsY~uv{kY_5kECZ-A$>aF=(^8w=|p8y`|ZxdnuJ>GrFB@ z){fQP1d~IhL@KRdUeHvkZ4YBRD6x5|!4ncA+1_MqUof_>7~9`PwqX3lqpx5NnbM+f z!q}QJwn0*xx1eB%#JF8V|3nd~v1fti30sV$9NB6ywmQXa6o2tb>lQbL*y>4aKG7iE z;V6an8rg=L<*adUX^t+h_m*I}!igrwJf=B+m$_fV+*-XsJu}TbXI1Jqj}Ho4V~Nc# zY=cX}w6|FWpBKjGLkb=+kMo6XzqxNkcve%=YADg#LoI5HfA_VheN~~w^rTIN&{D;0 zv`U~9twpI+M{~9GI<5%17542}^O!afmQBks>ewi$BhvCSx5ewIV%fCwMjer^(m80Q zK&iAit#i@ZSQo`I$5p$Ib*^|@F~KTC%)4C4-Y?7}Qo^m~zI8$WHjjT5Hrls~9BTVT z*k(z}{mj^Y3fh7~46XD>rr-~Z?L}ex&4jVSw8k2NCMZE;k?s262_n7N7_gsMSK7mejJgH?%a>Z+Tc9m}1s;K-i+q{ZQL;!d5xN zX3eUkg6U=lTII}H)oUXe&;f}x#AqYjn@TTeTQ6+QLKxvv3bhCwvZHCCV^wCz$tFOJ%I!c?F7GvL8cvy?P z2bwjI_d=0d_BFf{)55j9HsP_A#3^#46fPb&nuzW0zBVnRe+})}jH;UD=M?9Q`;8XI zAC=NW}26e zTzbte;nK}?5%n8sh*&H1pHsr+D$|AZL5XU4VnGR)Ug9)0BnlgeT(&JN;X)4@Lofi0(ymyNI z5qBFVZ+cJ#Ux-tbsN{G|pDH{wrjW0M2Sq{NsiM|TgJx1_L6=~s z-!4p6x=}bq?2JGovaV5T}n8ozCkP zSv{^;DZALeS2s$n=p1E?kJ_eL6f|CoEnR1tW2zT7-6PEJ2Th4xN}8xUu3cYPDfL$I zl4RZ)H0O1Ri4HX>TD_cP<6ipURpB-1g2fjDZX=Gf3q4-x9$u5iG) zRotUTj$&)Op|Gn&C9!nTi@Q)IIkoM=r=Ec#e6$y{qOSOPSp{3Ggc9dt=~9Q5ZM@l0 zSTnil4Ziy%s^b+Cc*>O*0hW!l7C zkVvanamrX4^$+nIva_%)ZGZdlSn^v*|A@dX%TpK-`Ba z*=&#OEvzf?Wz&!DDfC2aHfu}`6AuUds`ZG}n)OKXQai%EfL>Bkf6!~zzr{X16w@(5 z{U!G4#hKVGOk|_7G@sIxLo9y?AFCd+T_|=;_55zuW7Yeccqlh2rW4-_BfSo!=NCFY zFSZYgOb-v@urSfhrJKktMNSskDRR2Vv}&hvDI(J}5+|~C{GG7TYe9niR&1?c>^8Bo zr27m-O~#jm@u-&FGuBISWr*BCWL0FspngmhnVvSAh)lYmB?ckTiiDpw-DOWb)@r$L_2G#U#x>QX2XZYw)i<~Un_Qgwb&PR7!@`* zx6Q=6sv=XOhL4!#w}>tEJ=MFpU}#at(}~B0fgU<(f2-J1XVd;Bv86{M z+J91P={b@1pAcJ1`P4{+$h1w+9_p3owMslDysRc475mi3RQeIIwS4{~_N`hU7W-DM zbk(YfTu-!INl zgLIyrJLtyQTI7x595qg1bQPH{=6&KgS7dtfqYIfVGU+l=lNo1X{S=yv_^@8+Z z!&JcrVSGVkn&2tXh3Y7BmdFG{Aat&?$elzckRP<4dS}?r^w!$;86VX)wRO_XnT7&| z$<{*K)Te(Hm)IjsQfi?s?3<#*Yuozvi6}a^eRPZ#+pnfL-=be@t!K8g360lxj1s|r zNS~BcidQ6}pfpiCdoDpq*5>z*({hG{X`QkgRuHn%nr0_yZL@0_xz#$SgX*h8UJfeR zK#Lv{r$lNQ!xE~HrHJIk>~_&s8#Iql>Zz?-<`fIN2(4BBzQMLCh*Da|>_$dgV%vnI zT%7kdqht{;jVDT-#JjUN?abgP&Am9RMdt2?(MNuNH*2*rcEW6D&lkv}OeNbM{v$E^ zjrG@d+yC0IZKuYaT23XK(LW+(1UH5MDu%!ei1B13Rn4_#XbEkfK6Gcx3V%P|d-r`uW@VlAeMJRe;70v9EBcY?Pjp>$|C>Mm=PqN? zgn_H+oww(3%Fs+%Q9+X=fyM{7xb`QOsBBx)r^J3lnRL3hSpbligOk2IZ73N2$y zlf^CC2jd!4p|U>XEaBWVEFpTbc~mr<^x!QqIvz5tO%f&SmW5(5Tvcr^oy2!>1-FcXkw#9U{eRPY6fuba(4DIvL zR~Gg(-8m_(H>Q>@W8#$6+UPL}h4zxy=+QAX6jfKAa-`&+8Iz(YwT*$&UX)LyJuQ1? zm~y+pF=AZ3V(l*)*RYtbTl7oNUKtms7-bx!lVClx@-j**D&05Q)7`vKXlBpHh;v3F z@X(JI6b&8GLd*&A1NZ9H9n!%#iMmdo2(&5Sck^P zb*w3BBA82E_K704g#5T`gFUz3k)k~`BivcV49C*m=j0|*hIU{^Qeo$pyf~F+E{s?c zbh8c9)n^=W(Ot}Htovdj#dH%bOj1op>VV=&v7IsxL+?=?%({#ZnUGH-^F(MBHrrsc ziVQu~X?JQPZf{PixSZJHXO%5BFWm~Sx0*M%)<*fCkDAtqw!*NhYT6yHy0n1rX!eyg zx9l^SR7LOqyrV|p6}{U$f3>*IaazJ`r_xY+U{M3-szU$ZPSKTLHLrnK7=>928ZB?O z^S{tyQk^w|`jT30Mb9IDnVeRfV@jJtEhlyL+zc)D&M5Vwq2<(;y35kI_=Ch;r#8x4 zN)-a6>{UctH|S4I{?&A&E>o`?2+`Kvzp(u3F_%zWo4g=OS#8|#G^NXXz+N%HP1Z5Q6Qyuj5xsLXfD%vak6O^iAg_2Zkg+tHRiHo-> zN3;`*^TfY%@1=iRETMltH2z(-l=eF=%PPDX6kl64NT$^frHtUF@L$Dtv$;P^TQwl= z%7x}p*N`DybjvXv$Zk2Q+MHD>%F9M5Z;K8*s%@VeSI=6IzhsuM2EP36b8=;PsrXJc zXUAci?anN*K*~aoqy_a%Y*xx$etS-j{gE-J291sV#p(;I4~j01xKr1(AKD|rJCT)I zZFtttR&UWlxM}jPgXVG0FP6c)GDTI;+YRT+%E?1bj|_8bZ9=Z`zy+qkTGvs9ceGy| zH!|v2x82>o=u>^x>P41~T+7(w+VB;UmAz_vDO0=*HF6m%D_0?wb+m|xV=lqBwB8Yy z-!=Pm3q#$ywl=Gb*HBrY_0^g+4P9j~Gq0>I(iF*K=83`ubXc7vaq9o(0in&BvMr*u zFK0!LzF30)6AuQJw3TaXDQ)Q~stUbebc;->g?4;xVnm6Ftzl`RU-9FJtLFu3^>}7| z+Pw%# zB0hGc+SpO{l|7zqTjyMlsr62mz5Jz&l}qw1d8w5J`uuo%^D6W@|BT3#f-kll^~A36 zuDLP2E z=C(u$eNtn466R8y`kjlYB`0tvs1YL2Mq`7d;61keGLLpb8C#tv0qN{Oy za!v3+^c-)6irVfi(UM3q?+QkebY}x}UAeYNbftN=#gr1B`JsSvUNiY*&;cJTv}?Nz z+Or)NI&X&zI;xhSf1L(2;$2XZ=na_dqEb&!=Fzxf;igr1bPtaOR^yD zxNeIP#EU2YgB%1sv*jI?tREU)Gi9?8#9L?YL=VDsOcq4f2kIC>Y*@btISAuEaa<;+ zH;x6|bf2i?zZ*RW^`tC_)@wgJKtW`s-isWBF(zJ-$tn7kH;f=2oc1bu5U$r`LFDEq z8$qPavmw7vGseX0GC7@kdyBCEocYS%$X9}bP*2H%IN#uj1Fh52(htAf75Pf6S|%RZ z-jqE3G~5xZ9i$+x?zj>=2&d+HTQ(*-pI>5JiFrF7LJuPE9a#`BKN^`ySE76V_1Hng zYpL(a4LqgM1*7bvQp8f$AI`2mrbl^u=XxGm&XwT1((8e9{7pbOy zfrVColR`-k&n)z@L!N#=FG7W%BU+4GZlnkU<9u zP@#2IQ6$v5M^Rw0eRe5!z>bTphDotKVYt{nhZH;Dz{OUtkYanTz{U23OR)ptxY%l? zQnAHfRg%AdUa{q*|KfNV`30-E@94hDrN%&}KxNFX7Yh^JRYj59_8GOwpw3` z?WvE8?Ms$o2a<8I)rL}RPeWX6Un41Ypb;*%nj*#aq~K!vnnnW*W>RcVGhA$6 zb18P9IWD%UO0hjEF1F7l#SXY|vDKDRY)?x}Y>yPVte}GV*9eC*nw&oEqU-*72*U^p(eIzo!=8G(!K8!5#OjKsxO zM@z9iqj9l)W2D%DF}T?3I4QPg94@wRyc9by9v54^PKxch4j0=uL5dxifQzkOFU9s; zkBjZQL5dx?0T)}nNs8^c2^ZUUvlKgUGcL9|S&HqMjEQahU2=-_4}5_sxY(|#Qf$vu zTeHoBG+edOh~n^5YtW-`&5%Zs zvtBWxn7w%!dK7sxrBUo(bEgqS(=Ms#QMhJFqxd?!;Go^+PoEKW2KmRFj1NoPA-i)m zR3`srL=n~HZS*MAInpSi>RvFS@a3FDkHR-s8pYO(JEc)f^lUMrhzjqL}vUJ?K%m?vX}uqUk^*igS^VqDPUpSQ^a5k>#+(f?~WJ#VS>T6{35i4jHHo>k!2w9BPYoE#Zu zM3J#WL60JDg*1w1x(`0|%JJjrmDj$9JTAm;$2vDKYYY|l;-^2@(7L^uJ zIVZi9Vl$Ge9oUfKOtX&6ZDi1B>#0#?lN#GAN4U&W8M#Szr*ootq?!f7%;SmL*>efb z9wF6*o7P^MvEDvXDmIw{M}T|#MJcxDMOOSstT%TjF5%edISV^ZwEFfoiHohiD#iA^ii_=gO^O|O4HsK|LyGNr0~gzON{Ssgg^R7eCB^o< zg^TTbTZ$cc8y8!BSBmX<7Z=<2o)kOq9xk@}ffU>G0WP-hLn(IPLtJe2v=rNO8W-Dl zMv5IcgNvVw?xfDC_IWD&Pr4-xqB_=k#cFFrn z{(k!_Tx{1lDYoYvE_U8GQtZGtxY(}mq}ZPCaIy0OQtUtg7u)r{6x;JXE_U7zQtZGF zxY(|rWY`TyyuS9p^%E<)m)07T@ovbw=n^ll%lCD+F^&IRY81lMpl0v=6vXZ-ZLvR- zF8=4kUrP-_yt8k(@%V~NilS$q-EQg$Hn;z2M^MVuZd%A)bo>>F2SMK#?r%x%%8uVv9wo%VW#^*(5x?n3oCPn$>9$7qTk zT}aYT9*8=)e*OCN@#7xN>dbkzKmFly!L&a8ry0*?RX0C;v)U|SeKf~bJ^x(RJLbtV z<~Cj*x5<&;BB~}emX?|`aBFmO=E6@> z^M0G51-_x0szeLR8PnfvrhzyNHq%P%mA#o5y~8GlvsHCb=sT-Mb6bB|1!K?ZK^p;C zPO84Dwmr2`yy?4pPKfV7yUq5!X;k$ugm2+>Dsd%rcY-~p6qC4J|Ia^P){fuHE*Nru zwLA1hb?ntk0Te3I{dJ((!}PF3dug9lBX)NpF1s#%C{T2KlDy-SaN%?7+hZkqan~8nBcnTXM?Y);v3SZY?;8L-%#va?{RS!H*I z#paaV6_%P+b~jjTPT4(Rsaa+BgvI8R-5ZvgRdyd(Y);wzV5wPUXTxH1${qkq%_@5! zEH=Cfktg=VKVspwK4NJ``dkic#r|faC)U2|{ z!(wyFz7Cd}RrUl}Y);wN!&0-#z5y1SQ}#`;)U2{^hQ;QTJsFmoRrVBEY);uzVX0YV z-vW!xDf?DfYF63PVX--7&w!<7l|2&{n^X2ISZY?;cfewE%ANyD%_@5?EH>OBZPT6+doe6Fr|c!L)U2|X!eVpEUJgsm zDtiSiHmB@Wu+*%wSHog+%3cFY%_@5>EHPTBXtQnSk50E^8j`+itz zR@o20VspxV2$q^v_QSB)oU$K*rDm1=C@eOo?8jlLS!F)~i_Ix}6D&2W?9H&)oU*sV zQnSk528+!pI}etcRrYpRY);ubVX0YV=fh%i%H9o2%_{pTSZq$&Ps38nluf@xd0=m; zzqIrJruvfqZq=9K*|EH$g__h7L(Wq$xm%_{ptSZq$&r(vmCWuJk? z=9K+0EH$g_Phhb*Wq$@s%_{qISZq$&U&2z$lx@7v{_0=(KKmSSXEX1!zk$W(l>Hqn zwM^N@`|JQLHaBN~4@=F?*+0NybISe+mYP-e&#>5>vVVo8W|jRLEH@Zktxv+J2MObQ9*;l|~ zbIOi@rDl~~2^O1Eb|fq{tL!SU*qpMf!BVrzj)KMJlwBQ`npJiUSZq$&HDRe)W!Hkm z=9C==OU)|V35(4syEZH}tLy|=Y);vAVX0YVC&FTL%B}}X%__S-EHc1KujPTA?O)U2{`|4z**I}^CGy%l6X zZ{W{@#paaV1(upsc2`(zPTAdIso6QZ2P`(H>|U_ctg?H+1J8Sv&y~>7MoM{L|AH8+1JBjOO#DtOU}5lLXBuuu^A~cxUu!r5PoKp zRrXD|ojpnV`pi8EmYP-eWLRv8vgvEdZVxOqtL&+;*xZ~w4VIc!_N}nkoU(6&rDl~q z0~VW8_U*9Ltg>gpVspx#4NJ``dk!o%r|fyK)U2|-u-Kfk=fhI7%Dxj8n^X2eSZY?; zi(s)iW#0`;%_{pISZq$&_rg-M%3cDC%_(~sEH$g_<*?YCvRA@V%am>Wtluiw_h+24 zHQ>%>e%5adEH&X6NktV6i32HvV|95q9!pm3=>MXa8!K zefHM)sYF62gz+!WA_G7Trtg;`6#paa#BrG+n>`k!PoU*sT zQnSk53X9Dt+XqX{DmxDrn^X1;tgaoU#wWQnSiF42#Vv`vq8PR@pDYVspwq z3QNr@`(;>cPT9v{saa*8fW_vN{R%8KtL#@{u{mYG4ol4{`wduZPT6n5QnSi_3l^JG z_B-W8t)#`(dH?ffusuz8WO3!&$`gI`xyU^&l?@P(u??aR8IUh*T z{U1Q1=YAw5cYg#;&MN&hG&-mBv(V(M(m#eq=al|wd6Azz$N%4B@%sGFD%2|F3$w;2 zrar^PR=$v8yT8E2p8us3+y5mlw(_+U+x;~zHmB`#xY(Swzs1GowEZ0}HmB|LxY(Sw zzsJSqwEZJ4HmB{MaIraU|ALFnY5P}PY);$1<6?8#zJQC(Y5PxHY);#M;bL>zF2Kc> zYkRFf4D|nlj@LP9+i|fuX;;9-=A`Yw#g7pPT8@r z)U2}OV6i!6$Cn>>OSUl*4d7KxY(?^8{=|w>TZII&8oX8E;py{=D66bx?A9KbLw{C zVzcT_#pUMI-3k|*Rd*ULH>d74xY(?^uf*l%)ZGpjn^pH!xZIq&JK$oo>b@G6n^SkE z^2Gk?AKsayOP_}Q>A2jv8B%O_1}?UqlPTr)XX0|_c9vqhJL6*OIgGly;Bs^7?uLua zs=GTbH>d8N<%LaOJnN_X*)N`nFDmp3lYUX57dE=mM~d$5gN;7FuN2+i7aLv4mZH0} z%M<;19OIjs-GM(4CX2pgT#`jGNMFT=CnN$ z7n@tJjKam{v^@qFo747KTx?F;<8iS$ZC{Iv&1riAE;gs_iMZIDwr?meYY;;cR)3MPxt>1=?&S`xnHae&E z+p*C(t=~~z=$H3iWi~E0r}4SC*qpxS;bL>z&cVgz=J5Hr*qpW(;9_&yUWkj$Y5Oi* zY);#E<6?8#UW|*)Y5QJWY);!t%M1JR->WRcM&~rX0vnyv`ATebPV1|&(Yd)?!$#+{ zz7`vu(|Rs8I;Zt@*yxOi>{9#;dPT&8* z#pbmAC@wZPhd+jk&1w4yTx?F;PvT;8+TM(d&1riJE;gs_ZMfK+wtcwRoVK@@7xv}9 zSJ{D$&S^X!8=cenE^Ks8>rY{$b94C~Y;;cRd$G|utv`c}&S`xgHae&E=djT^t?$Q1 z=d@mKzZzb)g#f4ZgXPuhm-k-f5H2>S@gum{oW5Vc#pbmA5-v73habho=Cpkb7n{@e zaa?Rp+b40cIc>j!i_K~KHC${?+pptdbJ{*tUf5+@PI3Bv6C0h=_}kd%oX+3DM(4Et z9yU6s_4l#SIjw()jm~NPBW!d|>u0dhIjx_?M(4Et2{t;X^-rtA7`b6Woz8=ceoH|2$XdG8Rv#l_|{9>B%s^nD%|o746WxY*nr{v$3nr|q9{u{mx3 zf{V>*`?vDKzWnzrzhk3w8vg?uU8-}Ze&Elr8qum^Gg4%5W9zA{TISTE(jqG7q_;9{ zs&-&QiZjhRDy@V*sj|Ra|VTw&QenRC!^S@oveiQKGTYx%s;WHae&C7;JP->$R}axpynE z*yxc9-~ zbe{~1o!d}K?QRH5t>-k7V*4AxV&|qvsog2K)W6yt`l2R|>N0gV!A5s9lcKwu!J=z< zXGO0!m!kWdW1~A%DY{!lMHm0Wo68~nAKqNJ*h)(&w!0-R_WVY6X>Yf}#a3F&d%HC% zwlmk5$JSbw%d)0ZO+~q(kalN0gaw~xZ^wK=PSMr`P@a(M?2_Q*_{O& zhn~|}I!^taVX{ZL+b!CM7iDv{Rwy^>nDevu(xYz}wq}cA!xY*t? zQf&ViTZ1?rJ z*xnnY*!~-Eu?udLV!Lm`#rEDT#rEHfi(N2DitV0^i|w5v#r99Z#V+tjvE5T~vAwrQ zvHiE;Vi!!4V!Lm}#r95@V*97#Vi(*d#dgoY#rDpWV*6*}Vi(*l!4}_^nuWV?_1+=D z7N5?%1Gu+mOR?Q^aIw8}rP%(tnAqZL<+)z@AIiM2)Ot>i6x*MJiETVe&X;P$eJ3uq zcYze!zW^7zV4)P-y$BcEdzTd3e-|!x!QE19_dU4S-o;XE|6*M1f_tUd?j^X`-lbA( z|59A+f@M-{_i|ip?+Pile+4df!AdE%dlfFWceNDTzZw_2K$Bv-*WhA%*GjSdYca8D zxvfjrt!^EbTF+VMh*jeEtXt<;S*`H%X-@Mqjal^DQM&jTX_!9vNk`3O)jXeJZi_a3 zEsLJ&v^yitn1}KDxJ`}(M?-O#tj+Hqr=QvG2uto@Ih$K+qu6dXcZX@K2E=K@SH$QY zHaVPCYKYTkOp{S%l44ZXxV1QW3AHIrwdf&ndd1C-dJ$HPE%emQjz&rfS*qMuP*Bj^ z{Kc&nd**C*R92jw%!aKW)~atFccRXTNHLFsKf?7>h;Pw{L4`u}$gQ$B3VM&Nj!Y%k zTZze{k~FJYb8BssU_Ul)DNd9z@GBRZg}a)8#hb_b%&irejqH|_s?AxIqP$EO&GEkI zm807BxpDQ*m_=R+DH>%Suh&-1Yao8lEKEByI7)Lb4%4go90lgZY9*Y?$V`{sL3IW% z%LV~(h7LtCCG~^MfOe_G*(1934fKiN;=**t^|Q zZgJ66+Tlo!xKdat#cM74CFlcoIO3FGvCiV8QI-DC4o8?0tl_yGC1m%-#WlEgiW)Kv zjgH+Z%FUpbwWu*+>LQ~Z(UQ6S%b>N{3a?$bFj!8ip10GHqK|#r5nec?ir!>)DM#x@!_C9h=GOWFIdOPL)=2YYQ0CW|M^@|qODeB<;obbh%GS1>tDZZO zRibxNYUaF@?{_EfIY^Ng_LRPTk0U0ctbG&wslUo0{T?B!&6r7@@~-~hSDpUg(~hJu z!%T6JqAA@I+}LbCnmZfKtu+=JR0^K3)M(6OmXmcd5D|2`pJwgs&gN8jk=CoWXw@;> ztUtrt7Hxhocdbf?m}BG>?d&L~re*c&F)`jAQnw41o4GAE5!llE zON&)AK`-i4Q6jxXXtCzz37ai5)KqAhW9|jJD&oD8hp(4B{G;Sylu2WhO^IIh#-z>u zHm7Y%OL*!21CDUTtp1Q`8m9Z7cEqI}F%PZpc{DYTFYfSTrX_e~A~qBrj(*P3(%W5H zZji)cvu!mkp`y6UJa4<(+_B(}o5z+gA2zSqNtKcY@2O})UwaC zgbMmz^So_|xl`2;A}x6$3Wo>%ylsa&OovitmkXU|%Z=SL-_Vsqj*O!9{@uL}IYh1~ c@)aV7iyR?xC6OzO94T^@J-rT9{j|pa0fy3c%m4rY delta 174621 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
  • )5T#m+y*!;Z?k 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 I8s7!|A95Y}6#xJL diff --git a/spine-ue4/Content/SpineBoy/Hover_Blueprint.uasset b/spine-ue4/Content/SpineBoy/Hover_Blueprint.uasset new file mode 100644 index 0000000000000000000000000000000000000000..198a9c5e130a71e0d9e82634284bf4e19cbb0abb GIT binary patch literal 130410 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, owner->GetActorLocation() ); } } @@ -25,7 +25,8 @@ void USpineBoneDriverComponent::TickComponent (float DeltaTime, ELevelTick TickT USpineSkeletonComponent* skeleton = static_cast(Target->GetComponentByClass(USpineSkeletonComponent::StaticClass())); if (skeleton != lastBoundComponent) { // if (lastBoundComponent) lastBoundComponent->BeforeUpdateWorldTransform.RemoveAll(this); - skeleton->BeforeUpdateWorldTransform.AddDynamic(this, &USpineBoneDriverComponent::BeforeUpdateWorldTransform); + if (!skeleton->BeforeUpdateWorldTransform.GetAllObjects().Contains(this)) + skeleton->BeforeUpdateWorldTransform.AddDynamic(this, &USpineBoneDriverComponent::BeforeUpdateWorldTransform); lastBoundComponent = skeleton; } } diff --git a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineSkeletonComponent.cpp b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineSkeletonComponent.cpp index 60596fcaa..1703f4f7c 100644 --- a/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineSkeletonComponent.cpp +++ b/spine-ue4/Plugins/SpinePlugin/Source/SpinePlugin/Private/SpineSkeletonComponent.cpp @@ -73,9 +73,13 @@ void USpineSkeletonComponent::SetBoneWorldPosition (const FString& BoneName, con } baseTransform = baseTransform.Inverse(); - FVector localPosition = baseTransform.TransformVector(position); + FVector localPosition = baseTransform.TransformPosition(position); float localX = 0, localY = 0; - spBone_worldToLocal(bone, localPosition.X, localPosition.Z, &localX, &localY); + if (bone->parent) { + spBone_worldToLocal(bone->parent, localPosition.X, localPosition.Z, &localX, &localY); + } else { + spBone_worldToLocal(bone, localPosition.X, localPosition.Z, &localX, &localY); + } bone->x = localX; bone->y = localY; }