From 1692fc4b6d80ef72e5c69020fef03fcbdc221fac Mon Sep 17 00:00:00 2001 From: skyace65 Date: Tue, 23 Jan 2018 22:48:44 -0500 Subject: [PATCH] Fix spelling errors --- learning/features/2d/img/particles1.png | Bin 202 -> 176 bytes learning/features/2d/img/particles2.png | Bin 10568 -> 12077 bytes .../features/2d/img/particles_material.png | Bin 0 -> 9460 bytes learning/features/2d/particle_systems_2d.rst | 357 +++++++++--------- 4 files changed, 186 insertions(+), 171 deletions(-) create mode 100644 learning/features/2d/img/particles_material.png diff --git a/learning/features/2d/img/particles1.png b/learning/features/2d/img/particles1.png index 69a5a9943bf28a4cfbd87cf2286a2cc4987d5621..c951339e15eccd939cc0e5508be08eaf6a72efcf 100644 GIT binary patch delta 166 zcmX@bxPeizGr-TCmrII^fq{Y7)59f*fq~H(h^-izfg;;3Eb^VGC|tu>9OUlAuH=W$3JzW61mZcQXsnm>}6}b*!4JZ!eJo Pau_^a{an^LB{Ts55ScZF delta 193 zcmdnMc#2W6Gr-TCmrII^fq{Y7)59eQNLK)H86z{0v|MoX;Y3B@dbR+c5ZC|z|NHp( z@IP6V0hG!2ba4!^IGy~XpG(5+r*qT)c@2LmP5#v~y_!Ec!%p$@zR54@oNB6>{`_S5 z@#5R{V2OS9oHN4xpZ@sc>riLk`R(sggS!8L8TaG44l|1#IC9HBtH$QI{{Ma#pw3zQ sJ$dhcR$2AmFRAXY^`TSY;#nUV8A|T>yeXVM3urfkr>mdKI;Vst05_deBme*a diff --git a/learning/features/2d/img/particles2.png b/learning/features/2d/img/particles2.png index beef91b6229591dd9e4edfe048bb1919ce3a796b..ec31bd78697d9a7a2007855f99a7eeec4d71ff1a 100644 GIT binary patch literal 12077 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 JUe+@Fe*ik)OTYjC diff --git a/learning/features/2d/img/particles_material.png b/learning/features/2d/img/particles_material.png new file mode 100644 index 0000000000000000000000000000000000000000..176b38dc79d3bf21baa09e8029b7de4a7c6345e9 GIT binary patch literal 9460 zcmYj%1z42L7cYX8C?F|~C?H+Z-JOyWOD?sPbW4|Xw{*k8!qVNjg2XNM?q1 zEvYJrf>Ixkb7zMBn114_B`<|iJ4LyNf`W#kp`tCzEv!B<^<7if{6R*Bo>llAhbS2p zBafgw4Lz5H+y^U=uNlzA0ATmy#}6)kS?!NNZ9|ZdgxWhcf!FjLf>Jshyi$}jjPmNH zDq1F9{!t~(XPo@9CKgWoVk#qJFn);-BjewQ$zIE;7<>fSt*)&N3{N&SxABT7vGGWe z)4byq(;OI@P}VTy;FDqH;NurnmXJ{!pPZp*5#$w=?Cc(N^A4t==WJ>39U7eqiHHZe z_{u2hNy%&Th-iQz?MfO(jV;{QvJ&OnDYEQo~F?oaV=wuabD@jG8 zuAZUd^4h+^F)oKx$rJ`f+?i=atAI*JmmQ@2hJUpmr zn`#=^l~&Z()VJ^mDztYE=onf*I6Jp>^odAm&@%A2`$bAA8$+O-c23^9M%I3xqcn8P zoF7^fQu311^Nr0ND{2~@S06rk1SzO}Y-#T^w|2F43V1khR?@U^atp}GFJtEsd&9uy z;S&-Olg7<2X=?3RR9a(h>oqho$;{3#s|xrWo1JZ(?&2BthKXO-(DG|>by!TAh>V`Tv5m5Zv4FU$KERoUOTx)LI4Ul~FDUMVzGYBY z{QUgF_{3C3PN|NuLqk&sxS`d?!4sd5d~9M`NLrVLQzZ1E-rglJC9_aX*IGbSfsXNg zd1YNlWQvBKjfI_eRShJwa)XOsF5mf~w|{VHc?Dnr5|Gf2NywH_w+%|{g*3G(XqX8I zOEa>I<`-7#0i5~(@p5XWT>Mg&w(cO;AfL}Mj!vIA_!UhoU5}2AzfFIalGk8h6P8of zo`QV~OYI9w>2vTYn)yDzxwS1KrIrugPbyppjBRrZD$A+a#>FQVmQcFBzDdzE@CS^^ zN7i*2TQG5o1B(r84{LR#w9Y^d0NY3d%kXZ)==4Mrqx=tc-%eMj>{3rb7CzZ_fw_Kz zRtZr$-o1dN7#%ZfJqsH>({R^{gEw6$D6}YwGLqU}i-#-N`VAj-g%gYS$66WU9r`0d3-?JkeaL0P^ zDe7PTL-$$!`3wEx@Qie{|Nbnz$qW3ww-b_Z?*>@=-ZdcBu|px&FJ?Dj-)7us@W#lT zX7!D0`7$lkK1$?yytC##?h*4X@dkB+@%Rj_FtVpb$Iy?spWXT$>kb&4l}&O;OdMXJ z^yQ|m^Vtyp`(p2ym&2!o8FuC2jV2gNROJdEkggK}tiQ=??uLe^ee;6y@Abw2-rHr) zLyUDYfuAPz;MlUnhPN^G9idm`Qz^megey+AQ)cjr%c|DFGEQW8tDE!PIkq3CeAo-B zcPpL-qH$q~Iwc`K!^mS`pcF(r&+jT|2jJ~_woL^|r(VVb?ly23XU*Lx(BbvNOySsC z;*s&+AT(@Z;#!5y8u1D$TZPxZ*2gKRuo+!6%gmfauGb?27QJLp*?i+^ z>LdoDYmpJdA-DJq-Za@w`9_ezsCS!;fzPszRreW)6TVZW4(4sOtM>VCX zF5oaN`!$Mo@dF>WnM|fv|GRUaFyl{7SYubjN}|65L0(_HDmN*3TNKuT!(rOCE1Dd* zoqe@gyVm=3R#ea&^E;{f1F&d@ct8&HNHBQUs{`2Opv2$Ae{|^t4aG%9TKm%YktC0A zIV(|bm+)8n)CXQnoIbg41JjpLI{Ler&}EA6`yIo^1fk8#MFeO2nTDIBIe}`&*|2>6 z?z&%*hj3Bx&t_<6Q)@*=J(qF9$V&&zzK-9&DH$m?ZOqHdM^7W!xCG#3PjO8`?K`}z zq01DCcWK1~(|0((#^aJ(#|U@=IXRAh_6A+Ibg(k&)dEq9#9#Xk*@ z46Q%_>E{B5vutY{HkUUU7$b2}wvmFzVoTn19I4gbjh&Nf9?m+k1m@gI;P@$l}4 zTQ&HnIR8OxUs^iz9%Up>vy*Tu_2%rtj^M~QJ9BeKP50Tnx1TuIQ~bj$#&f}MdNOzD z`E==8w{+8>7k4*R=dH(*X&B!)DH~cTRe$wjfOX_X%MD4v;}^5;R7O4TnVlNMx8Q;Y z`6FDcV`ki#ihh%og3gZi%iYEnagJ&Wf0~LT_{*jm z-g~J}4cr;xc1L5)hOFK&b2mHz$bP$W_2AhhcluAwjc+qM6-NwaycQsjHZbBz417!W z$~mIu0a>Si3Ak@Jk!Y)!w=m5AZWF^&zTN(Iu8@?yfc#olBZ!8<{-($X}sXrvRFLX=O#Tpri4~}P+$P&wJKW=?rd2>YZ6D-SNB*l9Y z`}r@EQhH9}bi5NLNyp1)*_BVmVs30yp;EoddQq-Y^Isf7l02zGNA)`SF2lDaFzw4$H+CXwOSpE7Nk-!yMwhcv??bR{ z49Tt&>n0WyRw1}kvy=*x$K4io^&K)f(A{h->@pLHHT%Hkvre?qlRmb*%h0W&Y>LdG z=f`~N|KuRxQX+9I#*?kgNzlc2>`#a|mtBCN`?k=R!HBRJ_sfFIR z?$71U_C*RJV=x4ggZAm$oW?I6wfbym0^@AOP35C|1&u^ehx?jS-hlauFWtdbkt!uH=XZr@cUWb;#c1-)ip`csA?;`>0CJkkzA z$?ntdktlPpoFARZ>M2X+a2!g9ckazR7x871+_47nRyaO!G8RfR`!e|9&8b@++u%4E zlt`~?uD(T0q-^)tT7#RGwc2X?Jkb~ zp`)^I8VBUzT>Wr3*#47zY@t_DF=AuAbKlsRxvBWeduuIH@HF?#udbF3W2z-;HWHrh z&tIMNW_6Aa2D&ExB#Re}I#X%`Wc|YZoM8V`WnGM*myv57dZ!6jeQ1}WG4ADeQvcd4 zq;F5!g?OJ#H!=@mHJkom>~U5)NjKeBMCXG7@Cuu(2+H=q+L-s_9+gdv3~s8sG<Y)C1|O&#Ei6)s``NY#$c1&|drc zNY(GUq+vMf)dD=7+s%WTStuqwgrx|kFnT5{mJ+oH-2k#ai_fH4!@pV_H`wtOaTIan z{Z#;mMIddKU;;t&H++Aojz)OOH1dqwmms~B{VTJwi23;MIV+2G>PqEj&y+Sg#;JMY z+n#?tP!us6Cfn(Aw|J9RsjP%t@tllfT$;tJDJOZE>(KCyB<&_iw$#LuQAd5_rC|gM zzeARLC#}&d3<(Uk5Pn3|Vd0k{;yJoP21ui$f#@h?&nFS0EgB^c(#%>X#iORV*tNmy zClsFIM5;oY6vVGJmHAFl+w7m;HhtzJOP}@!fPfAY3$N_|#7wfoE&Y?_j5N zmMHV5fsdY-x2a;HD}YvQ1tYC*kEJ2bp_$X zYOnKq>QE_RHK(wS?(f+D9sYI@odoLt^tA9UeB%3SEMqPA9}v%y0iGoi66m@?SlH8o z=fOp}NjW2J*i2oqeC$op5^4-penw8Y(V*J9tV1M+J?tpQ zh7n8Jx3wCMZ@Rp;%hIIMmar?AoVG{%f>Y%*{3WpAP)njsGvK zZ730lqfw?XDUw*WK2Sa?)liH+W@T09(hCz_>*Pj>!LLYqOJ|g$hPu4X2qNK^%0b7a?1o5B;Z=d?Ov5P(wEOowa+yWj8U)}g@KuF&c{XeJgN z*Jn5bMF#Uz!o8aLPCGxtrs-MGa;ak+Yt{CFGE}v5cni} zU$OE_8Nxk!#URlZg@K3sAdwAw}~YkPPHx^fuZ)}lU2eMKKrs33=`A3*Pw zT3TPnF-@FcOBK}PA&*5ZoI6FC0`gGzX?a?%M~9w73si~E1W`-I69 zlN&WIG+Vw<->(|#{q-3{DMI>sNAem)8}`Ut1BZDQYOsCz+WOd}h_GFg${s|Xq9dE# zo!6MLFb9&LJEF;8ui(nJU|P&2ZDzY6ckVHYKKsNG71YLDvK;x->uvjsrhay?XKCIb zCR`ia+;5CMjjGaWUuHXLu~2I^@o6H6uOwUz@*40U2plwp55!$QQ+IUR0@- z;&44BMgNz_$NzYMI|RhI1jB%O<8rn5+PRThI4pAEOPScg4xCBPaOtps1Eon(g26Uq zY1~mF-%E>?7c(8osTy=W);q2GnK?^?C88-5FH{7K8Iy38N2B<7rxjK4jY1L`22WK^ zvdFlQ#%cSu7iuHGO09QfkAkHITrU(h5KMMu1gX1JJxaXAg?BN%nIq4|l?r&%HU0ODbZvY}OQCEOjd9QYVp-fWZ3D zT2`|vEsykyCAfn=U;DRa_--EM|1`!@8G>RpJ(9Dqll0GdMN@*^@oFgL0j zoB48~`w0DtDsR3k&Ejf-ySMv=HI2|f9Ns-%9j6%9u#(m{oxMtG*{3VuTi)AmfiBO+ zxhXv@Pe7QW(K+tfqDzbWq5k%^76^5b-Z;rSo~l_PoJ%dh`SO5z>sEF&^%0|m?%1um1- zYx6Lof2z_=mm3Ye{e{28@eX0&(566SjHb(Z%9L&Fg?YKtoV_daLe3RnS!apnbsK>( zJU_p>n2@lzI)7m;&k#k;J1+^XwJcDXJQt%47oDj(g>ZLd0dYuIgZ%HMRq+OKty(XU z_cci{VM>VaBzjX5`nCy2L%xsQ#e0o`)Jb;L9yOAw`7gYrS+6p2^DEJM-TNJzPt>CP z8m{_b$zk$j#lCS=AI}SfrVYk0Hc?ONJnj*6(#lq(EA@Ac3bTXf?>_0ei08Y8JZb+n z$f~+Xw`YwI1stG8Bw7R}HtOo)E;laPBaZ_EFWzgrB@GFTFc87QkL%2RiOBer`>l*A zvyFFuxeE)YSg8k`j?}i&oXPth=71iuosRGjSkQ92@FT@y7Ddg>N>d*qLE$pZ3}1oA zRTH~JoJM7SeM-vJ-^c18UANS2P1;8fIQ@t`G4V@}LhkN@IDM|;B}MLZ7?w>RiZt%y zgV7fP7VJ+mu7ZgJ8Z3qxP0w>_g0H9iRlL??cADz`Ko>S#j?r2C{?rfWVHO=5qn&m} zWVZNTHr1_OffqJBJ4n~eHco!V(_j>Jhv)AD0^_6Ffq`3|fw${y0i>&D76BxYRGT3F z10!m`AI)8%|Jjo#{o5>R!O?8x0xl1oq3bW>fR5eDg+(ilF7<%K)L#Buu*JVCnDD`x z@#y4F-6cglTaH^IRd^L3>?frbc%bdmcn6x#6$1A+aXp?S1kV~YMHSBCSUb9EqTAqp zFiFS`v1jkEU!LIbw!TPX#*4e$k2ry-ib%z~6AYZ9Rw6L(?F}YN#FzW)^Sy$pLaym= ztzmOU#cSP_0~rsCRr(K1&xNByV%0SFXh~rfx*eGX4zNLR4a~N2koZT!1xq#K&14_0 zb}`ds*g8LR1)3i&Yr#Utv$ZMg_BlsX76`=xqUx4-{r5{-Hrli+pys5Qz$HzM`2*t? z5J9?RZFBiA2nfE4;i@hvCGMBobPmJ1z)z*?Cs^!YG zsZzqcF!O3YqJIZ)t z4Eg>8=3x)`3`!-T>?s6G#hcZgK|W2&kIY$mt2BJ~;BzI};37*BZAQ1ANYN1fAgxNy{ChGT%~Takmu$EO_*Hpv!~~N~XH4D7$`a>ItlJMokL|_NP6EpBA{n%!XkryITu+)8FK=7@kd@Hm|l| zBYxcHuk#nJiNC7+QgTd;wO|Pkp8N5!FN_*!YXnJ{f`4l?3%0wI%pDcSb9p3la+qleFi zfmvQ|Hv3rSrAmstw^&Wgl`8BFfG~rGeQh!Cuhbo59H=4hUv&1FmLxV#7;VDgk}-wv z(wF0SwUg$x9+}3LG{Nf(y7m0~9C-yyNqmMp4z_2zHs0DCjjoYYuF3s-kaz?Jy4M+l z;8IX{C)UG!bN49t{g?&j|ekz|%af z^I1?<>;F;Y7iVO|MVc1=3;ioDoI16jmhkogm+Q1Uql&)FblS8(>I>Ixrkic~GsBoe zNwWPm@J07sGh@bebKrct{wJkm$I1&MgPox0_esnzN|b<(HVUrjys}Pl##0*lQ@xWS z@1%`MFFEq@2RMvb1xpa}#72osthas^lxg98^!yVgAwOR_MHMSkvSWaJb7sawK%ud>ew6BwP`uw>#c&?+izG8EHPJ5`5=Px&Pu|Y zW@P)nEp5ebNlETG#J{(H{4`c7-QJ*9`JSlD`q#Vc5ya&B?fkwdi}VUO`@3*j&L_~n zxoVRcu=gpBCEWZzXP#;v$M&Nq;OFkS@W9*V_hD4+8lT1h$%kV?X14Eg7R8d)fkq{2 z#6D-?O75U(9O}nr5#Am)-#kcOzCa!}hn!Hn`rSoEiKJ!Iex?M?Cw=v=H;0K&p>zNG zuVXj9x^Ep6$7hZyx@2JZQrP3`a_w?`O{D0pCu(Tt?}#}M{~FiMs{S|`A?j-{_0M3v zX5#t-``kn0+Le$h1L zF7iT{073Q5APZdQo~Mehyxn6~=g4Bdupl&EDn!sqEwOW138j0K2LV;SNu&xImAl$} z^n|1?r@f;r|CCb%K0Km^x2V1WDE%1QdSi5`xoklpr1Z2V&xQE5uWhQr?G#w<9FSu} z*Fn7j#(e_^m&gLNl3VtwVLkpKJS-2~sx&{#;nF~1A#D{H(fc91=N=UUr_-f@GTw9~ zhKN_;cD~r1xQ@}d>lknxGK0Msi=IOs>jN%w>K3nN+Zg1xeg|q$) zNw>fR>%^X-1>Z9bPnjV&)y#jplFa<34zIEMLWAXLYbbD0^SP5TVr@`wC7FloA&mwS z)8iNVM2OCXwpw35Fx?lvz#0|%b%l}c0-zb@vJ zEL${+#p2?l%Wmvz__gWeFN{)!S;_+py(fb3(yj9mN`5Y?c`r^PP{M+GsWQ|knqB)c zv9}(3Ev=T!{&!JN74c}JBDSxG0BkB08PDO*^P{2haqGm(NfCLlk_; zbGMg9dxzuNhzVWAcHtUSXF_L%tvb@%SEX%GtD=_+v(Y?-cZr=J&}N&3_DCUCPSDf{ zzScH}x774gL-&cD-%)4fZ*kEN-K#jdI_wny|@tjC(!Vz`LK5HC*xe#5_bB0)n*%g36yLHCK@x#x0XV@G@6E`}z?pOT)0TKUki1Qy!!p*IxS z1c^u++5P~=3~m)IzVSfv!IK*^3?FLYW4kt6zw3R?%}r*T#zG;{w}@F2++S=@D2ko4 zQ?gYZYDy3eCvYGWd8>Bd6^LOz>YhPiyKNCfshG2`NI{})koWbL=N z8|?R;YacKuvMS#44>VQJi;wb_*@*$j&hsZKCky*2bxMNr?>D0UIoeVAAtkDw{|6|7 z22AE6O?7;OdrZq-^qbj9*=X_d$fs*he%w>!Bs%XrS^yoDK|itZz9%#?L`A(+7MWBJ z4>2R6eg!&;n5)2^G;I;U^geMhP{n6fwW$`ICs$YP3)Iq2eQ9TeYCpyHn%cYJ{{6H?1;e)7*90FU5=q07r-?RO z@b%eIu?j3q8Vzkz@WF^;-?Dse|D&kq?FqCh(RRKb?pn{LwUG-u(62QL$2L$^6+n5z z^F_g|7ly;{bSWLo9fQjksa_e7OS0~u;rjZU2+7fGd<@lB! zlc?_P6J-&3MCgb3al6uLol8=%bMU@z?ry(u z@M)gWGwvW-OA3bI6AFDh%W5Vp#889Sx&QyJzW>7oZdW1xWqF&9a4jR%IrK=y-%LpD z>dL3nE~yLwliN6{#a^m!D90y7mL%yTxoPA00HN;&lX1$?mY>4in(4N{1aFffX?VBe z9gBo1_fU1Au$SV%vnDz%krfhI{3gW{O_s-EN|gkmoQ>(@(J$O0-Zb@$T?%f%b|8#8 z7LRXa!vDSn;L{UDAtH2rI?X+C4wmp_LG{i31|*az4?l7aZECQCdES5xy>Vp|FIkM1M=A#}Cl#!z8|E*M#gKgFwnBn%(a>82jFvm5k z?=V}bawe5X-C6;60=&&INu6+foKQSjhuHuuD767Photed>u z$QN8rb=``Qgb=ccWXN5fL*m;R!YBfq;Uh|>0)#wkyA;8kvbl@XoMk!LglS$*(KW8hq#Ywih7x(<}dKp*FLt}v1 l!}(tb;L++s0YeXHywxO8OKmSA9-l3tD9WnI)JmBK{~x3NedhoG literal 0 HcmV?d00001 diff --git a/learning/features/2d/particle_systems_2d.rst b/learning/features/2d/particle_systems_2d.rst index 9b2e6218..01fad822 100644 --- a/learning/features/2d/particle_systems_2d.rst +++ b/learning/features/2d/particle_systems_2d.rst @@ -22,9 +22,21 @@ Particles2D Particle systems are added to the scene via the :ref:`Particles2D ` -node. They are enabled by default and start emitting white points -downwards (as affected by the gravity). This provides a reasonable -starting point to start adapting it to our needs. +node. However, after creating that node you will notice that only a white dot was created, +and that there is a warning icon next to your Particles2D node in the inspector. This +is because the node needs a ParticlesMaterial to function. + +ParticlesMaterial +~~~~~~~~~~~~~~~~~ + +To add a process material to your particles node, go to Process Material in +your inspector panel. Click on the box next to material, and from the dropdown +menu select New Particles Material. + +.. image:: img/particles_material.png + +Your Particles2D node should now be emitting +white points downward. .. image:: img/particles1.png @@ -37,129 +49,8 @@ the relevant texture property: .. image:: img/particles2.png -Physics variables ------------------ - -Before taking a look at the global parameters for the particle system, -let's first see what happens when the physics variables are tweaked. - -Direction ---------- - -This is the base angle at which particles emit. Default is 0 (down): - -.. image:: img/paranim1.gif - -Changing it will change the emissor direction, but gravity will still -affect them: - -.. image:: img/paranim2.gif - -This parameter is useful because, by rotating the node, gravity will -also be rotated. Changing direction keeps them separate. - -Spread ------- - -Spread is the angle at which particles will randomly be emitted. -Increasing the spread will increase the angle. A spread of 180 will emit -in all directions. - -.. image:: img/paranim3.gif - -Linear velocity ---------------- - -Linear velocity is the speed at which particles will be emitted (in -pixels/sec). Speed might later be modified by gravity or other -accelerations (as described further below). - -.. image:: img/paranim4.gif - -Spin velocity -------------- - -Spin velocity is the speed at which particles turn around their center -(in degrees/sec). - -.. image:: img/paranim5.gif - -Orbit velocity --------------- - -Orbit velocity is used to make particles turn around their center. - -.. image:: img/paranim6.gif - -Gravity direction & strength ----------------------------- - -Gravity can be modified as in direction and strength. Gravity affects -every particle currently alive. - -.. image:: img/paranim7.gif - -Radial acceleration -------------------- - -If this acceleration is positive, particles are accelerated away from -the center. If negative, they are absorbed towards it. - -.. image:: img/paranim8.gif - -Tangential acceleration ------------------------ - -This acceleration will use the tangent vector to the center. Combining -with radial acceleration can do nice effects. - -.. image:: img/paranim9.gif - -Damping -------- - -Damping applies friction to the particles, forcing them to stop. It is -especially useful for sparks or explosions, which usually begin with a -high linear velocity and then stop as they fade. - -.. image:: img/paranim10.gif - -Initial angle -------------- - -Determines the initial angle of the particle (in degress). This parameter -is mostly useful randomized. - -.. image:: img/paranim11.gif - -Initial & final size --------------------- - -Determines the initial and final scales of the particle. - -.. image:: img/paranim12.gif - -Color phases ------------- - -Particles can use up to 4 color phases. Each color phase can include -transparency. - -Phases must provide an offset value from 0 to 1, and always in -ascending order. For example, a color will begin at offset 0 and end -in offset 1, but 4 colors might use different offsets, such as 0, 0.2, -0.8 and 1.0 for the different phases: - -.. image:: img/particlecolorphases.png - -Will result in: - -.. image:: img/paranim13.gif - -Global parameters ------------------ - -These parameters affect the behavior of the entire system. +Time Parameters +=============== Lifetime -------- @@ -175,15 +66,11 @@ Lifetime: 4.0 .. image:: img/paranim15.gif -Timescale ---------- +One Shot +-------- -It happens often that the effect achieved is perfect, except too fast or -too slow. Timescale helps adjust the overall speed. - -Timescale everything 2x: - -.. image:: img/paranim16.gif +When enabled, a Particles2D node will emit all of it's particles once +and then never again. Preprocess ---------- @@ -194,45 +81,12 @@ a torch, mist, etc begin emitting the moment you enter. Preprocess is used to let the system process a given amount of seconds before it is actually shown the first time. -Emit timeout ------------- - -This variable will switch emission off after given amount of seconds -being on. When zero, it is disabled. - -Offset ------- - -Allows to move the emission center away from the center - -Half extents ------------- - -Makes the center (by default 1 pixel) wider, to the size in pixels -desired. Particles will emit randomly inside this area. - -.. image:: img/paranim17.gif - -It is also possible to set an emission mask by using this value. Check -the "Particles" menu on the 2D scene editor viewport and select your -favorite texture. Opaque pixels will be used as potential emission -location, while transparent ones will be ignored: - -.. image:: img/paranim19.gif - -Local space +Speed Scale ----------- -By default this option is on, and it means that the space that particles -are emitted to is contained within the node. If the node is moved, all -particles are moved with it: - -.. image:: img/paranim20.gif - -If disabled, particles will emit to global space, meaning that if the -node is moved, the emissor is moved too: - -.. image:: img/paranim21.gif +The speed scale has a default value of 1, and is used to adjust the +speed of a particle system. Lowering the value will make the particles +slower, increaseing the value will make the particles much faster. Explosiveness ------------- @@ -258,3 +112,164 @@ All physics parameters can be randomized. Random variables go from 0 to :: initial_value = param_value + param_value*randomness + +Fixed FPS +--------- + +This setting can be used to set the particle system to render at a fixed +FPS. For instance, changing the FPS to 2 will make the particles render +every 2 frames a second, however it will not slow down. + +Fract Delta +----------- + +This can be used to turn Fract Delta on or off. + +Drawing Parameters +================== + +Visability Rect +--------------- + +The W and H values control width and height of the visability rectnagle +respectively. The X and Y values control the position of the Upper left +corner of the visability rectangle relative to the particle emitter. + +Local Coords +------------ + +By default this option is on, and it means that the space that particles +are emitted to is contained within the node. If the node is moved, all +particles are moved with it: + +.. image:: img/paranim20.gif + +If disabled, particles will emit to global space, meaning that if the +node is moved, the emissor is moved too: + +.. image:: img/paranim21.gif + +Draw Order +---------- + +The particle draw order can be set to index or lifetime. + +ParticlesMaterial settings +========================== + +Direction +--------- + +This is the base angle at which particles emit. Default is 0 (down): + +.. image:: img/paranim1.gif + +Changing it will change the emissor direction, but gravity will still +affect them: + +.. image:: img/paranim2.gif + +This parameter is useful because, by rotating the node, gravity will +also be rotated. Changing direction keeps them separate. + +Spread +------ + +Spread is the angle at which particles will randomly be emitted. +Increasing the spread will increase the angle. A spread of 180 will emit +in all directions. + +.. image:: img/paranim3.gif + +Gravity +------- + +The gravity applied to every particle. + +.. image:: img/paranim7.gif + +Initial Velocity +---------------- + +Linear velocity is the speed at which particles will be emitted (in +pixels/sec). Speed might later be modified by gravity or other +accelerations (as described further below). + +.. image:: img/paranim4.gif + +Angular Velocity +---------------- + +Angular velocity is the inital angular velocity applied to particles. + +Spin Velocity +------------- + +Spin velocity is the speed at which particles turn around their center +(in degrees/sec). + +.. image:: img/paranim5.gif + +Orbit Velocity +-------------- + +Orbit velocity is used to make particles turn around their center. + +.. image:: img/paranim6.gif + +Linear Acceleration +------------------- + +The linear acceleration applied to each particle. + +Radial Acceleration +------------------- + +If this acceleration is positive, particles are accelerated away from +the center. If negative, they are absorbed towards it. + +.. image:: img/paranim8.gif + +Tangential Acceleration +----------------------- + +This acceleration will use the tangent vector to the center. Combining +with radial acceleration can do nice effects. + +.. image:: img/paranim9.gif + +Damping +------- + +Damping applies friction to the particles, forcing them to stop. It is +especially useful for sparks or explosions, which usually begin with a +high linear velocity and then stop as they fade. + +.. image:: img/paranim10.gif + +Angle +----- + +Determines the initial angle of the particle (in degress). This parameter +is mostly useful randomized. + +.. image:: img/paranim11.gif + +Scale +----- + +Determines the initial scale of the particles. + +.. image:: img/paranim12.gif + +Color +----- + +Used to change the color of the particles being emitted. + +Hue variation +------------- + +The variation value sets the inital hue variation applied to each +particle. The Variation rand value controls the hue variation +randomness ratio. \ No newline at end of file