diff --git a/examples/files.js b/examples/files.js index c109bd73f13c3e937e56b2be0811a248fa003a52..c9a26cc205497850166f31ca5d871eb125a2a00b 100644 --- a/examples/files.js +++ b/examples/files.js @@ -181,6 +181,7 @@ var files = { "webgl_morphtargets", "webgl_morphtargets_horse", "webgl_morphtargets_human", + "webgl_morphtargets_sphere", "webgl_multiple_canvases_circle", "webgl_multiple_canvases_complex", "webgl_multiple_canvases_grid", diff --git a/examples/models/gltf/AnimatedMorphSphere/README.md b/examples/models/gltf/AnimatedMorphSphere/README.md new file mode 100755 index 0000000000000000000000000000000000000000..bb2430976026673533a2addaecd3a021ab5d0064 --- /dev/null +++ b/examples/models/gltf/AnimatedMorphSphere/README.md @@ -0,0 +1,21 @@ +# Animated Morph Sphere + +## Details + +The sphere contains two morph targets in it: + + * **`blob`** : moves the vertices so that it becomes a somewhat amorphous fat, blob shape. + * **`ship`** : moves the vertices so that it looks a bit like a spaceship, the goal being + to just make it a much more complicated morph example than the [cube](../AnimatedMorphCube/README.md). + +The animation loops, morphing between these two states. + +## Screenshot + +![screenshot](screenshot/screenshot.gif) + +## License Information + +Public domain ([CC0](https://creativecommons.org/publicdomain/zero/1.0/)) + +Donated by Howard Wolosky for glTF testing. diff --git a/examples/models/gltf/AnimatedMorphSphere/glTF/AnimatedMorphSphere.bin b/examples/models/gltf/AnimatedMorphSphere/glTF/AnimatedMorphSphere.bin new file mode 100755 index 0000000000000000000000000000000000000000..5bc8fc640076a6e28426e6345791e5a2ec6f24c1 --- /dev/null +++ b/examples/models/gltf/AnimatedMorphSphere/glTF/AnimatedMorphSphere.bin @@ -0,0 +1,185 @@ +=u>fa=u>fa=u>fa=u>fa7`?9s>7`?9s>7`?9s>7`?9s>nk"?kEnk"?kEnk"?kEnk"?kEwQE?!?wQE?!?wQE?!?wQE?!?wQE?!wQE?!wQE?!wQE?!k"?jE?k"?jE?k"?jE?k"?jE?7`?6s7`?6s7`?6s7`?6s=>da?=>da?=>da?=>da?*_s?4*_s?4*_s?4*_s?4 꼢>mt? 꼢>mt? 꼢>mt? 꼢>mt?ǽe}?Iǽǽe}?Iǽǽe}?Iǽǽe}?Iǽ˺=d~˺=d~˺=d~5=b~A+>P=b~5< =b~f+>=f=b~R=f~R=f~[뛽C=b~౽u)>=h~3b~\雽vf~꛽b~꛽b~E'>xⱽd~-#d~!<Ƚb~!<Ƚb~#<<Ƚb~-<'d~T'>=ⱽd~T'>=ⱽd~=꛽b~~=d~1=)>d~1=)>d~=3a~_=+)b~q=M)=f~w=r=b~w=r=b~==f~#º=d~?#º=d~?#º=d~?Y1=d~?{+>R=b~?s1<=d~?+>=Y=b~?=d~?=d~?꛽;=b~?ⱽl)>=b~?3b~?꛽Kd~?꛽d~?꛽d~?+>Vⱽb~?f1d~?&Ƚd~?&Ƚd~?='<Ƚd~?1<d~?+>=Vⱽb~?+>=Vⱽb~?=꛽d~?=Kb~?=t)>b~?=t)>b~?=3d~?=7)a~?=8)=)>=d~?=M=b~?=M=b~?==d~?ǽe}?F=ǽe}?F=ǽe}?F=ǽe}?F=꼳>kt꼳>kt꼳>kt꼳>kte*cs?'>e*cs?'>e*cs?'>e*cs?'>꓾s?F=꓾s?F=꓾s?F=꓾s?F=Vێ>mtVێ>mtVێ>mtVێ>mtHj?D>Hj?D>Hj?D>Hj?D>\ >fa\ >fa\ >fa\ >fam7GX?s>m7GX?s>m7GX?s>m7GX?s>E=?gEE=?gEE=?gEE=?gEo9f=?!?o9f=?!?o9f=?!?o9f=?!?s9f=?!s9f=?!s9f=?!s9f=?!==?jE?==?jE?==?jE?==?jE?j7GX?(sj7GX?(sj7GX?(sj7GX?(s[ >da?[ >da?[ >da?[ >da?Hj?IHj?IHj?IHj?IWێ>kt?Wێ>kt?Wێ>kt?Wێ>kt?꓾s?Fǽ꓾s?Fǽ꓾s?Fǽ꓾s?Fǽ.?iE?.?iE?.?iE?.?iE?tվnSG?stվnSG?stվnSG?stվnSG?sxgd>ba?xgd>ba?xgd>ba?xgd>ba?Z<#X?\Z<#X?\Z<#X?\Z<#X?\r >mt?r >mt?r >mt?r >mt?@4`?ǽ@4`?ǽ@4`?ǽ@4`?ǽ@4`?=@4`?=@4`?=@4`?=l >mtl >mtl >mtl >mt\=#X?P>\=#X?P>\=#X?P>\=#X?P>Igd>daIgd>daIgd>daIgd>da~վqSG?s>~վqSG?s>~վqSG?s>~վqSG?s>1?gE1?gE1?gE1?gE.?!?.?!?.?!?.?!?.?!.?!.?!.?!{yCr=?E>{yCr=?E>{yCr=?E>{yCr=?E>zgE>fazgE>fazgE>fazgE>faa.?!s>a.?!s>a.?!s>a.?!s>ξ>fEξ>fEξ>fEξ>fEbD?!?bD?!?bD?!?bD?!?bD?!bD?!bD?!bD?!ξ>jE?ξ>jE?ξ>jE?ξ>jE?a.?sa.?sa.?sa.?sgiE>ia?giE>ia?giE>ia?giE>ia?zy?r=?Ozy?r=?Ozy?r=?Ozy?r=?Oi=f>kt?i=f>kt?i=f>kt?i=f>kt?O!eD?dǽO!eD?dǽO!eD?dǽO!eD?dǽN!fD?e=N!fD?e=N!fD?e=N!fD?e=i=f>jti=f>jti=f>jti=f>jt]E}>fa?]E}>fa?]E}>fa?]E}>fa?Cr={y?BCr={y?BCr={y?BCr={y?Bvfh=>st?vfh=>st?vfh=>st?vfh=>st?hDK!?uǽhDK!?uǽhDK!?uǽhDK!?uǽhDJ!?s=hDJ!?s=hDJ!?s=hDJ!?s=fh=>otfh=>otfh=>otfh=>otBr={y?B>Br={y?B>Br={y?B>Br={y?B>kE}>bakE}>bakE}>bakE}>ba.a?s>.a?s>.a?s>.a?s>>gE>gE>gE>gED]>!?D]>!?D]>!?D]>!?D]>!D]>!D]>!D]>!>iE?>iE?>iE?>iE?.a?*s.a?*s.a?*s.a?*sվ0gd>daվ0gd>daվ0gd>daվ0gd>daqSGm>s>qSGm>s>qSGm>s>qSGm>s>1>kE1>kE1>kE1>kE.>!?.>!?.>!?.>!?.>!.>!.>!.>!8>kE?8>kE?8>kE?8>kE?nSGt>snSGt>snSGt>snSGt>sվ+gd>ba?վ+gd>ba?վ+gd>ba?վ+gd>ba?F#XF>CF#XF>CF#XF>CF#XF>Ca >mt?a >mt?a >mt?a >mt?`04>~ǽ`04>~ǽ`04>~ǽ`04>~ǽ`.4>~=`.4>~=`.4>~=`.4>~=i >mti >mti >mti >mtG#XG>=>G#XG>=>G#XG>=>G#XG>=>jH>AjH>AjH>AjH>AڎV=qt?ڎV=qt?ڎV=qt?ڎV=qt?s>ǽs>ǽs>ǽs>ǽs>=s>=s>=s>=ێV=ktێV=ktێV=ktێV=ktjH>@>jH>@>jH>@>jH>@>N >faN >faN >faN >faGXb7>s>GXb7>s>GXb7>s>GXb7>s>1=>iE1=>iE1=>iE1=>iE=H9f>!?=H9f>!?=H9f>!?=H9f>!?=H9f>!=H9f>!=H9f>!=H9f>!>=>gE?>=>gE?>=>gE?>=>gE?GX[7>sGX[7>sGX[7>sGX[7>sZ >fa?Z >fa?Z >fa?Z >fa?`9=s>`9=s>`9=s>`9=s>"m=fE"m=fE"m=fE"m=fEQEyy=!?QEyy=!?QEyy=!?QEyy=!?QEyy=!QEyy=!QEyy=!QEyy=!"m=fE?"m=fE?"m=fE?"m=fE?`9=#s`9=#s`9=#s`9=#s ==aa? ==aa? ==aa? ==aa?Zs:,==Zs:,==Zs:,==Zs:,==Zs:,=<>Zs:,=<>Zs:,=<>q==daq==daq==daq==da#ot?#ot?#ot?#ot?[}(ǽǽ[}(ǽǽ[}(ǽǽ[}(ǽǽ[}(ǽ=[}(ǽ=[}(ǽ=[}(ǽ=ktktktktZsq,7>Zsq,7>Zsq,7>Zsq,7>n=fan=fan=fan=fa`9s>`9s>`9s>`9s>"mkE"mkE"mkE"mkEQEwy!?QEwy!?QEwy!?QEwy!?QEwy!QEwy!QEwy!QEwy!"BnkE?"BnkE?"BnkE?"BnkE?`9#s`9#s`9#s`9#ssH=da?sH=da?sH=da?sH=da?Zsp,6Zsp,6Zsp,6Zsp,64=iE4=iE4=iE4=iE=h9f!?=h9f!?=h9f!?=h9f!?=h9f!=h9f!=h9f!=h9f!B=jE?B=jE?B=jE?B=jE?GXi7(sGXi7(sGXi7(sGXi7(sg ba?g ba?g ba?g ba?jH3jH3jH3jH3ێVkt?ێVkt?ێVkt?ێVkt?s꓾ǽs꓾ǽs꓾ǽs꓾ǽs꓾=s꓾=s꓾=s꓾=ێVotێVotێVotێVotjH6>jH6>jH6>jH6>\ fa\ fa\ fa\ faGXc7s>GXc7s>GXc7s>GXc7s>`?4ǽ`?4ǽ`?4ǽ`?4ǽ`=4=`=4=`=4=`=4=,n jt,n jt,n jt,n jtB#Xc4>B#Xc4>B#Xc4>B#Xc4>վ5gddaվ5gddaվ5gddaվ5gddamSGxվs>mSGxվs>mSGxվs>mSGxվs> ?eE ?eE ?eE ?eE.!?.!?.!?.!?.!.!.!.!1kE?1kE?1kE?1kE?kSGtվ+skSGtվ+skSGtվ+skSGtվ+sվ0gdda?վ0gdda?վ0gdda?վ0gdda?B#Xc2B#Xc2B#Xc2B#Xc2e qt?e qt?e qt?e qt?Dk!?Dk!?Dk!?Dk!?Dl!Dl!Dl!Dl!ξkE?ξkE?ξkE?ξkE?.a-s.a-s.a-s.a-skEba?kEba?kEba?kEba?Hr=vy8Hr=vy8Hr=vy8Hr=vy8fh=jt?fh=jt?fh=jt?fh=jt?bDP!ǽbDP!ǽbDP!ǽbDP!ǽbDP!=bDP!=bDP!=bDP!=fh=ktfh=ktfh=ktfh=ktHr=wy5>Hr=wy5>Hr=wy5>Hr=wy5>^E{ga^E{ga^E{ga^E{ga.a"s>.a"s>.a"s>.a"s>ξfEξfEξfEξfEO!dD=O!dD=O!dD=O!dD=h=fmth=fmth=fmth=fmtzyFr=8>zyFr=8>zyFr=8>zyFr=8>zlEdazlEdazlEdazlEdaa.,s>a.,s>a.,s>a.,s>ξ eEξ eEξ eEξ eE\D!?\D!?\D!?\D!?]D!]D!]D!]D!ξ jE?ξ jE?ξ jE?ξ jE?a.3sa.3sa.3sa.3sbrEga?brEga?brEga?brEga?zyFr=8zyFr=8zyFr=8zyFr=8h=fmt?h=fmt?h=fmt?h=fmt?O!dDǽO!dDǽO!dDǽO!dDǽ/gE?/gE?/gE?/gE?bվmSG3sbվmSG3sbվmSG3sbվmSG3sgdվda?gdվda?gdվda?gdվda?SD#X7SD#X7SD#X7SD#X7y mt?y mt?y mt?y mt?/4`ǽ/4`ǽ/4`ǽ/4`ǽ14`=14`=14`=14`=y kty kty kty ktQD#X>>QD#X>>QD#X>>QD#X>>NgdվbaNgdվbaNgdվbaNgdվbafվnSG+s>fվnSG+s>fվnSG+s>fվnSG+s>5gE5gE5gE5gE.!?.!?.!?.!?{.!{.!{.!{.!WێjtWێjtWێjtWێjtHj2>Hj2>Hj2>Hj2>^ fa^ fa^ fa^ faV7GX0s>V7GX0s>V7GX0s>V7GX0s>:=cE:=cE:=cE:=cE_9f=!?_9f=!?_9f=!?_9f=!?_9f=!_9f=!_9f=!_9f=!0=iE?0=iE?0=iE?0=iE?U7GX3sU7GX3sU7GX3sU7GX3s_ da?_ da?_ da?_ da?Hj2Hj2Hj2Hj2W ێmt?W ێmt?W ێmt?W ێmt?꓾s&ǽ꓾s&ǽ꓾s&ǽ꓾s&ǽ꓾s&=꓾s&=꓾s&=꓾s&=9`-s9`-s9`-s9`-s=rba?=rba?=rba?=rba??,XsB?,XsB?,XsB?,XsB꼟ot?꼟ot?꼟ot?꼟ot?ǽ]}ǽǽ]}ǽǽ]}ǽǽ]}ǽǽ]}=ǽ]}=ǽ]}=ǽ]}=꼮kt꼮kt꼮kt꼮ktG,XsB>G,XsB>G,XsB>G,XsB>=kga=kga=kga=kga9`#s>9`#s>9`#s>9`#s>m"iEm"iEm"iEm"iEl,=Xs<>l,=Xs<>l,=Xs<>==fia==fia==fia==fia9=`4s>9=`4s>9=`4s>9=`4s>n="aEn="aEn="aEn="aEy=QE!?y=QE!?y=QE!?y=QE!?y=QE!y=QE!y=QE!y=QE!An="iE?An="iE?An="iE?An="iE?9=`As9=`As9=`As9=`As==wba?==wba?==wba?==wba?l,=Xsda?^ >da?^ >da?^ >da?H>j#H>j#H>j#H>j#W= ێmt?W= ێmt?W= ێmt?W= ێmt?>s ǽ>s ǽ>s ǽ>s ǽ>s =>s =>s =>s =W=ێktW=ێktW=ێktW=ێktH>j#>H>j#>H>j#>H>j#>\ >ga\ >ga\ >ga\ >gah7>GX;s>h7>GX;s>h7>GX;s>h7>GX;s>:=>eE:=>eE:=>eE:=>eEu9f>=!?u9f>=!?u9f>=!?u9f>=!?u9f>=!u9f>=!u9f>=!u9f>=!G=>gE?G=>gE?G=>gE?G=>gE?e7>GXMse7>GXMse7>GXMse7>GXMsHgd>վgaHgd>վgaHgd>վgaHgd>վgar>cSGCs>r>cSGCs>r>cSGCs>r>cSGCs>E>"cEE>"cEE>"cEE>"cE>.!?>.!?>.!?>.!?>.!>.!>.!>.!3>iE?3>iE?3>iE?3>iE?l>`SGTsl>`SGTsl>`SGTsl>`SGTsgd>վaa?gd>վaa?gd>վaa?gd>վaa?b>D#X&b>D#X&b>D#X&b>D#X&׾ > kt?׾ > kt?׾ > kt?׾ > kt??4>` ǽ?4>` ǽ?4>` ǽ?4>` ǽ?4>` =?4>` =?4>` =?4>` =־ >ht־ >ht־ >ht־ >ht]>D#X$>]>D#X$>]>D#X$>]>D#X$>y?>r=.y?>r=.y?>r=.y?>r=.h=>fmt?h=>fmt?h=>fmt?h=>fmt?S!?`DǽS!?`DǽS!?`DǽS!?`DǽS!?`D=S!?`D=S!?`D=S!?`D=h=>fkth=>fkth=>fkth=>fkty?=r=3>y?=r=3>y?=r=3>y?=r=3>u>^Eiau>^Eiau>^Eiau>^Eiaa?.=s>a?.=s>a?.=s>a?.=s>>cE>cE>cE>cEt>D!?t>D!?t>D!?t>D!?t>D!t>D!t>D!t>D!>kE?>kE?>kE?>kE?a?.Fsa?.Fsa?.Fsa?.Fso>gEga?o>gEga?o>gEga?o>gEga?.?aAs>.?aAs>.?aAs>.?aAs>>ξiE>ξiE>ξiE>ξiED?n!?D?n!?D?n!?D?n!?D?j!D?j!D?j!D?j!>ξjE?>ξjE?>ξjE?>ξjE?.?aSs.?aSs.?aSs.?aSsrE>ba?rE>ba?rE>ba?rE>ba?Cr=?y$Cr=?y$Cr=?y$Cr=?y$f>h=ot?f>h=ot?f>h=ot?f>h=ot?fD?K!ǽfD?K!ǽfD?K!ǽfD?K!ǽfD?K!=fD?K!=fD?K!=fD?K!=f>h=mtf>h=mtf>h=mtf>h=mtEr=?y!>Er=?y!>Er=?y!>Er=?y!>kE>sfakE>sfakE>sfakE>sfa>a qt?>a qt?>a qt?>a qt?`?'4ǽ`?'4ǽ`?'4ǽ`?'4ǽ`?'4=`?'4=`?'4=`?'4=">n kt">n kt">n kt">n ktI#X?\>I#X?\>I#X?\>I#X?\>>gdga>gdga>gdga>gdgafSG?eվEs>fSG?eվEs>fSG?eվEs>fSG?eվEs>?5gE?5gE?5gE?5gE.?!?.?!?.?!?.?!?.?!.?!.?!.?!?CfE??CfE??CfE??CfE?bSG?kվMsbSG?kվMsbSG?kվMsbSG?kվMs>gdda?>gdda?>gdda?>gdda?I#X?\I#X?\I#X?\I#X?\=?Z9f!?=?Z9f!?=?Z9f!?=?Z9f!?=?Z9f!=?Z9f!=?Z9f!=?Z9f! ?=oE? ?=oE? ?=oE? ?=oE?GX?U7TsGX?U7TsGX?U7TsGX?U7Ts>k ba?>k ba?>k ba?>k ba?j?Hj?Hj?Hj?Hێ>Vmt?ێ>Vmt?ێ>Vmt?ێ>Vmt?s?꓾ǽs?꓾ǽs?꓾ǽs?꓾ǽs?꓾=s?꓾=s?꓾=s?꓾=&ێ>Vjt&ێ>Vjt&ێ>Vjt&ێ>Vjtj?H>j?H>j?H>j?H>>[ fa>[ fa>[ fa>[ faGX?^7Fs>GX?^7Fs>GX?^7Fs>GX?^7Fs>?6=iE?6=iE?6=iE?6=iE]}?ǽ=]}?ǽ=]}?ǽ=]}?ǽ=>kt>kt>kt>kt]s?D,>]s?D,>]s?D,>]s?D,>h>=gah>=gah>=gah>=ga`?9As>`?9As>`?9As>`?9As>"?miE"?miE"?miE"?miEQE?Cy!?QE?Cy!?QE?Cy!?QE?Cy!?QE?Cy!QE?Cy!QE?Cy!QE?Cy!"?mlE?"?mlE?"?mlE?"?mlE?`?9Ms`?9Ms`?9Ms`?9Msn>=fa?n>=fa?n>=fa?n>=fa?_s?C,_s?C,_s?C,_s?C,>mt?>mt?>mt?>mt?]}?ǽǽ]}?ǽǽ]}?ǽǽ]}?ǽǽQE?y=!QE?y=!QE?y=!QE?y=!"?m=iE?"?m=iE?"?m=iE?"?m=iE?`?9=Ms`?9=Ms`?9=Ms`?9=Msn>Q==fa?n>Q==fa?n>Q==fa?n>Q==fa?]s?,=]s?,=]s?,=]s?,=>]s?,=>]s?,=>]s?,=>f>P==gaf>P==gaf>P==gaf>P==ga`?9=Cs>`?9=Cs>`?9=Cs>`?9=Cs>"?En=eE"?En=eE"?En=eE"?En=eEQE?y=!?QE?y=!?QE?y=!?QE?y=!?s?>=s?>=s?>=s?>=ێ>V=mtێ>V=mtێ>V=mtێ>V=mtj?H>>j?H>>j?H>>j?H>>>b >ia>b >ia>b >ia>b >iaGX?a7>Hs>GX?a7>Hs>GX?a7>Hs>GX?a7>Hs>?E=>iE?E=>iE?E=>iE?E=>iE=?9f>!?=?9f>!?=?9f>!?=?9f>!?=?9f>!=?9f>!=?9f>!=?9f>! ?-=>mE? ?-=>mE? ?-=>mE? ?-=>mE?GX?e7>OsGX?e7>OsGX?e7>OsGX?e7>Os>n >ba?>n >ba?>n >ba?>n >ba?j?H>j?H>j?H>j?H>ێ>V=mt?ێ>V=mt?ێ>V=mt?ێ>V=mt?s?>ǽs?>ǽs?>ǽs?>ǽ?A>jE??A>jE??A>jE??A>jE?`SG?o>Rs`SG?o>Rs`SG?o>Rs`SG?o>Rs>Egd>ba?>Egd>ba?>Egd>ba?>Egd>ba?D#X?i>D#X?i>D#X?i>D#X?i>>s >mt?>s >mt?>s >mt?>s >mt?`?M4>ǽ`?M4>ǽ`?M4>ǽ`?M4>ǽ`?K4>=`?K4>=`?K4>=`?K4>=#>| >kt#>| >kt#>| >kt#>| >ktD#X?k>>D#X?k>>D#X?k>>D#X?k>>ӧ>?gd>laӧ>?gd>laӧ>?gd>laӧ>?gd>labSG?r>Gs>bSG?r>Gs>bSG?r>Gs>bSG?r>Gs>?3>gE?3>gE?3>gE?3>gE.?>!?.?>!?.?>!?.?>!?.?>!.?>!.?>!.?>!f>h=>mtf>h=>mtf>h=>mtf>h=>mtFr=?y?>Fr=?y?>Fr=?y?>Fr=?y?>aE>>daaE>>daaE>>daaE>>daߵ.?a?Cs>ߵ.?a?Cs>ߵ.?a?Cs>ߵ.?a?Cs>>>qE>>qE>>qE>>qED?{>!?D?{>!?D?{>!?D?{>!?D?{>!D?{>!D?{>!D?{>!>>oE?>>oE?>>oE?>>oE?ݵ.?a?Osݵ.?a?Osݵ.?a?Osݵ.?a?OsjE>>ba?jE>>ba?jE>>ba?jE>>ba?Fr=?y?Fr=?y?Fr=?y?Fr=?y?f>h=>kt?f>h=>kt?f>h=>kt?f>h=>kt?aD?R!?ǽaD?R!?ǽaD?R!?ǽaD?R!?ǽaD?R!?=aD?R!?=aD?R!?=aD?R!?=a?.?Osa?.?Osa?.?Osa?.?Os}>jE>ba?}>jE>ba?}>jE>ba?}>jE>ba?|y?Nr=?|y?Nr=?|y?Nr=?|y?Nr=?h=>f>mt?h=>f>mt?h=>f>mt?h=>f>mt?G!?jD?ǽG!?jD?ǽG!?jD?ǽG!?jD?ǽG!?jD?=G!?jD?=G!?jD?=G!?jD?=h=>f>kth=>f>kth=>f>kth=>f>kt{y?Mr=? >{y?Mr=? >{y?Mr=? >{y?Mr=? >}>dE>fa}>dE>fa}>dE>fa}>dE>faa?.?Bs>a?.?Bs>a?.?Bs>a?.?Bs>> >gE> >gE> >gE> >gEm>D?!?m>D?!?m>D?!?m>D?!?i>D?!i>D?!i>D?!i>D?!> >lE?> >lE?> >lE?> >lE?Z>L#X?>Z>L#X?>Z>L#X?>Z>L#X?>"gd>>ga"gd>>ga"gd>>ga"gd>>ga`>bSG?Ss>`>bSG?Ss>`>bSG?Ss>`>bSG?Ss>7>?jE7>?jE7>?jE7>?jE>.?!?>.?!?>.?!?>.?!?>.?!>.?!>.?!>.?!/>?kE?/>?kE?/>?kE?/>?kE?Y>cSG?WsY>cSG?WsY>cSG?WsY>cSG?Ws gd>>da? gd>>da? gd>>da? gd>>da?]>L#X?]>L#X?]>L#X?]>L#X? >>mt? >>mt? >>mt? >>mt?/4>`?ǽ/4>`?ǽ/4>`?ǽ/4>`?ǽ/4>`?=/4>`?=/4>`?=/4>`?=ܾ >#>htܾ >#>htܾ >#>htܾ >#>htf >>ba?f >>ba?f >>ba?f >>ba?H>j?H>j?H>j?H>j?W=ێ>mt?W=ێ>mt?W=ێ>mt?W=ێ>mt?>s?ǽ>s?ǽ>s?ǽ>s?ǽ>s?=>s?=>s?=>s?= W=ێ>jt W=ێ>jt W=ێ>jt W=ێ>jtH>j?>H>j?>H>j?>H>j?>, >>fa, >>fa, >>fa, >>faX7>GX?Js>X7>GX?Js>X7>GX?Js>X7>GX?Js>1=> ?lE1=> ?lE1=> ?lE1=> ?lEe9f>=?!?e9f>=?!?e9f>=?!?e9f>=?!?e9f>=?!e9f>=?!e9f>=?!e9f>=?!)=> ?oE?)=> ?oE?)=> ?oE?)=> ?oE?W7>GX?]sW7>GX?]sW7>GX?]sW7>GX?]s9=`?Ds>9=`?Ds>9=`?Ds>9=`?Ds>Nm="?mENm="?mENm="?mENm="?mEHy=QE?!?Hy=QE?!?Hy=QE?!?Hy=QE?!?Hy=QE?!Hy=QE?!Hy=QE?!Hy=QE?!m="?oE?m="?oE?m="?oE?m="?oE?9=`?Ms9=`?Ms9=`?Ms9=`?Ms"==}>ba?"==}>ba?"==}>ba?"==}>ba?2,=as?2,=as?2,=as?2,=as?<>mt?<>mt?<>mt?<>mt?=]}?fǽ=]}?fǽ=]}?fǽ=]}?fǽ=]}?f==]}?f==]}?f==]}?f= +<>kt +<>kt +<>kt +<>kt=,=as?>=,=as?>=,=as?>=,=as?>==o>fa==o>fa==o>fa==o>fa????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????Δ ;]:u;]:Cu;P^Wz;P^@ ;T:< ;;ԺC< ;>캽u캽u캽u: 0: 9: +C:n>: Pд4д: u0N ͱ +#KԺb: >C: 89 u0N ͱ +#fv` ǹ >PC u0N ͱ +#FԺ Jдgд yaԺ u0N ͱ +#C> ǹ +. u0N ͱ +#9 C:> w:\Ժ u0N ͱ +#Fд:aд @: >:FC u0N ͱ +#: +ǹ ~:8V :29 u0N ͱ +#>:صC: =:Y: Bд:)д: u0N ͱ +#s:": _ +#<ǹ: : : <_ +#<@д&д: <9ԺW: <>յC: <_ +#<.9 >C <7Ժ <=дYд <_ +# <ǹ <_ +#< +U. <9 <C:> <_ +#:7C <:ǹ :ʵC: 캽u: ǹ: >캽u캽u캽u캽u: : : og յC: C: KԺb: o 1;z; dg;z;uu;i:D;i:uu;u:uui>:z ag;z>յC: <.9 C: dg;z;un>:z;:i:uu;i:1U ;]:"X:]:uٵC:P^wgD:P^pRP; ;E: ;un>:z; dg;z;=ֻV1;j绯@%д:j"X:]:1U ;]:=ֻV1;j;@%д:j;E: ;pRP; ;pRP; E: @%д:j=ֻV1;j1U ;]::zE: pRP; pg@:R^:z;@%д:jn绮W[j绡 8V]:"X:]:@%д:j;n绮W[j;_:e ;E: ;E: _:e n绮W[j绯@%д:j!T:]:< ׳j]::zR^\:z.9 :z;R^ +z; pEi::i:"X:]: 8V]:zW[P^uٵC:P^wS <ǹ CR^캙z;i: pEi: 8V]:"]:uFCP^zW[P^_:e ;DSԺ ;u>캙z;R^ +z;n绮W[j绮@Yдj"]: 8V]:n绮W[j;@Yдj;DSԺ ;_:e ;_:e DSԺ @Yдjn绮W[j绞 ׳j]:< ]:<@Yдj;n绮W[j;R^\캠zDSԺ _:e z=QR^CR^< ]:< ׳j]:< pEuuu>캠zR^\캠z xgzlnP DSԺ u>CR^캠zǹ <>>C CR^< OR^zOuuuui:uui:R^zO OuFCP^tgwP^>PC ǹ u>캙z; ugz;uui:i:"]:1U ]:tgwP^uFCP^DSԺ ;lnP ; ugz;u>캙z;R^zO^: OB$uuuuuui:B$i:^: OR^zOtgwP^fPU P^FԺ >PC ugz;n1z;B$i:uui:1U ]:T^UHJ]:fPU P^tgwP^lnP ;Y^ ;n1z; ugz;<ֻV1jϧwjT^UHJ]:1U ]:<ֻV1j;ϧwj;Y^ ;lnP ;lnP Y^ ϧwj<ֻV1j 1U ]:>C <7Ժ <`PU R^  yaԺ 1sz;ng z;uui:Fi:GHJY^]:U 1]:\}gP^U pPP^P^⻛ ;YPr ;ng z;1sz;pԧjV1@ֻj绢U 1]:GHJY^]:pԧj;V1@ֻj;YPr ;P^⻛ ;P^⻛ YPr V1@ֻjpԧj\}gP^C uP^ǹ C> ng z;>uz;i:uui:U 1]:s&]:C uP^\}gP^YPr ;+ԺE ;>uz;ng z;V1@ֻj9д@js&]:U 1]:V1@ֻj;9д@j;+ԺE ;YPr ;YPr +ԺE 9д@jV1@ֻj统U 1]:uz+ԺE YPr TxgR^<CuR^uzng z C> <ǹ <CuR^uz[.T^z>j0^: +ԺE CuR^< +U.zR^<. ]:j0 u[.T^z>uzǹ < +U. < +U.zR^<CuR^j0 uui:>j0 i:0#Ol" OC uP^n⯲zP^ +. ǹ >uz;[.T^z;>j0 i:i:s&]:髐 ]:n⯲zP^C uP^+ԺE ;>j0^: ;[.T^z;>uz;9д@ji /pj髐 ]:s&]:9д@j;i /pj;>j0^: ;+ԺE ;+ԺE >j0^: i /pj9д@jm$]:<. ]::uz;:i:>j0 i:髐 ]:n:&]:C: uP^n⯲zP^>j0^: ;9:D ;y>:uz;[.T^z;i /pj>д:@jn:&]:髐 ]:i /pj;>д:@j;9:D ;>j0^: ;>j0^: 9:D >д:@ji /pj经. ]:д:@j;i /pj;[.T^zy>:uz9:D >j0^: +U.zR^<C:uR^j0 u:uy>:uz[.T^z +U. <9 <C:uR^< +U.zR^<0#O}:! O:u>j0 u>j0 i::i:}:! O0#On⯲zP^C: uP^9 +. C:uR^:uz9 <C:>  9 y>:uz;gg; z;u;ui::i:n:&]:U ;1]:S:ygP^C: uP^9:D ;]P;k ;gg; z;y>:uz;>д:@jV1;>ֻj绠U ;1]:n:&]:>д:@j;V1;>ֻj;]P;k ;9:D ;9:D ]P;k V1;>ֻj>д:@jn:"]:ֻj;>д:@j;y>:uzgg; z]P;k 9:D U ;1]:EHJ;Y^]:U ;kPP^S:ygP^]P;k ;O^;⻛ ; +1;rz;gg; z;V1;>ֻjo;ҧjEHJ;Y^]:U ;1]:V1;>ֻj;o;ҧj;O^;⻛ ;]P;k ;]P;k O^;⻛ o;ҧjV1;>ֻj统U ;1]:ֻj;gg; z +1;rzO^;⻛ ]P;k R:tgR^  gg; z; +1;rz;;Ci:u;ui:;Cu@;@u7;>ֻz +1;rzl:LԺ <8д:Tд ֻz;@;@i:;Ci:EHJ;Y^]:p;w]:V1;V1P^U ;kPP^O^;⻛ ;ɧ;˧ ;7;>ֻz; +1;rz;o;ҧj +ף;ףjp;w]:EHJ;Y^]:o;ҧj; +ף;ףj;ɧ;˧ ;O^;⻛ ;O^;⻛ ɧ;˧ +ף;ףjo;ҧjBHJ;V^]:ֻzɧ;˧ O^;⻛ U ;fPR^ֻz; +ף;ףj˧;tjQ^;SHJ]:p;w]: +ף;ףj;˧;tj;;Q^ ;ɧ;˧ ;ɧ;˧ ;Q^ ˧;tj +ף;ףjn;t]:ֻzj;1z;Q^ ɧ;˧ V1;V1R^ֻz8д:Tд <0: ֻz;j;1z;@<i:@;@i:p;w]:Q^;SHJ]:]P;U P^V1;V1P^0: :7C :FC @: j;1z; 캠z?<;Ժ e;^P eg;eR^캠z :7C <:ǹ :FC 캙z;캙z; 캙z;P^캙z;@;Mдji;p]j绛 ;A]:;]:@;Mдj;i;p]j;Y:< ;?<;Ժ ;?<;Ժ Y:< i;p]j绪@;Mдj;]:< ;a2]:캠zP^캠z:ǹ <": @;+д:ji;p]j绘 ;a2]:<;V:]:<@;+д:j;i;p]j;P^:z><": Y:< z;3C-R^:zP^:z;<:i: <)|i: ;A]:;V:]:u;ӵC:P^z;AP^Y:< ;><": ;u:z;P^<": ;Y:< ;<:i:u:صC: :29 u:z; <\g;z;u<": ;a;PP; ; <\g;z;u:z;@;+д:j5;V1;j 1;U ;]:;V:]:@;+д:j;5;V1;j;a;PP; ;><": ;><": a;PP; 5;V1;j绩@;+д:j;V:]:<1;U ;]:<5;V1;j;@;+д:j;u:z <\g;za;PP; ><": u;ԵC:R^:z:"9 :ʵC: :ʵC: :صC: <\g;z;i;1;z;=<;i:u: : s:": I:Wg;R^:u: <9~: : fg; :u:u:u:u:u:u:uzκ[< 8N<X<ʏ;y@;j<`<d<ד8<>zκfOOOzκd<${<0[< 8ʏ;29D"y@;d<ד<ػd<$8<>zκ`:;H$:29ʏ;<&=;tpw:<ػd<דg:9H$:`:;>O9O;ۂ:?v;9 z:t 9 &9 #:0`>9/5˷488@k9}9 9 &9t #:0`>9;(h!:;S:O;ۂ: 9 &9^ ;$ѧ:;(h!: #:0`>9@k9}9p ; Ҋ:^ ;$ѧ: 9 &978ø`Z8:(:p ; Ҋ:@k9}9Hh:+~Z ::(:78ø`Z8Oa<Oa<BK<=K<C9iU`8Hh:+~Z :hU<v V<Oa<Oa<C9iU`8O;ۂ:;S: V<hU<vHh:+~Z :]JP;pRc;c:?;۩U=;:(:Oa<Ra<CK<BK<C9iU`8:̺~c:]JP;pRc;c:Hh:+~Z : V< V<Ra<Oa< Y9m`n9:̺~c:C9iU`8;S: hh::; V< V< Y9m`n9;(h!:4;'Gu*; hh::;;S:^ ;$ѧ: ;%6N;4;'Gu*;;(h!:p ; Ҋ:ִ;\ŻR[; ;%6N;^ ;$ѧ::(:?;۩U=;ִ;\ŻR[;p ; Ҋ: ;%6N;>% < +z;;<;4;'Gu*;ִ;\ŻR[;e% < +z; ;%6N;?;۩U=;% < +z;Z:% < +z;99998ֻbn;Z-FH;B9yJC;VaQa=KCK.Ww;;,QTd:HĻ>8ֻbn;/.; V VQaVa׺Y +:0rly:,QTd:.Ww;;H r;l=(`~ "; V V@@80rly:׺Y +:]r$ά;C;l=(`~ ";H r;@@8Y:JLlm;<% +z;C;]r$ά; V VQaQa0rly:Ym`n9p̺~c:,QTd:l=(`~ ";hh +:; V VYm`n90rly:C;3.Gu*;hh +:;l=(`~ ";<% +z;&6N;3.Gu*;C;ei'!;ִ\ŻR[;&6N;<% +z;Z-FH;A۩U=;ִ\ŻR[;ei'!;HĻ>8ֻbn;_JP|Rc;c:A۩U=;Z-FH;QaQaBK=K,QTd:p̺~c:_JP|Rc;c:HĻ>8ֻbn;ִ\ŻR[;l Ҋ:T (ѧ:&6N;A۩U=;ܺȷ(:l Ҋ:ִ\ŻR[;_JP|Rc;c:8h,~Z :ܺȷ(:A۩U=;QaPaAKBKp̺~c:@CjU`88h,~Z :_JP|Rc;c: V VPaQaYm`n9@CjU`8p̺~c:hh +:;"S: V VYm`n93.Gu*; :h!:"S:hh +:;&6N;T (ѧ: :h!:3.Gu*;@CjU`8"S:Kл$ۂ:hUv V :h!: +#`>9Kл$ۂ:"S:T (ѧ:P  &9 +#`>9 :h!:l Ҋ:k}9P  &9T (ѧ:ܺȷ(:6ø`Z8k}9l Ҋ:8h,~Z :6ø`Z8ܺȷ(:PaNa=KAK@CjU`88h,~Z : VhUvNaPa6ø`Z8K8k}9K6ø`Z8Natд69.˷4~?v? z:Kл$ۂ:P  &9t.˷4 +#`>9k}98tP  &9.˷41Ʀ8Hn3NЋ8~?v? z:tm{71Ʀ8.˷48bm{7tKpߺb8pߺKtд6\HGJhu< 78Ӻ胺, VºH>A˲ Vº,ﻠ.)MnλT`»1 +x˲ޑ_1Mﻠ.)8ԇ2*x +_ +_1ޑ@582*8ԇZȻ +_<.`58@uZȻ胺8Ӻ.`<2*-ۄx +_158]-2*ZȻ<ػ +.`l]584+<ػZȻ8Ӻ?l.`H>bx4+7j?8Ӻ Vº8N[bxH>˲h8N[ VºMZ-ֻ)LnλT`xۄh˲_1ZMj/͊|6?8N[ޮbxhn8N[Z>@} +LٻD-ֻ)LۄHŻnhS >@} +Z-lջHŻۄ*S ]rjȻlջ-<ػ*l֒rjȻ]4+ƻ<ػ?|6֒lbxޮƻ4+* S rjȻ:hlջ*֒!w:rjȻƻۻ|6N!w֒ޮDڻۻƻ/͊䘺N|6HDڻޮn?H>@} +6 &ܶw'ڻ %GLٻDHŻju?nS 6 &ܶ>@} +lջhjuHŻH.PDڻ?.H6 &ֻܶ8+Uw'ڻ %GjuO ? 6 &ܶh-O ju{ + :i-h`{ +!wz~i:ۻ`N*UWz~!wDڻPۻ䘺ѝ*UWNi-`Z- { +z~"wi`*UWN"wz~Pѝ䘺N*UW.P.λ+pֻ8+UO  k- O { +Z- k}2YûLλ+p 5L*û<:Ӻ,`l.2U>e1j7:Ӻ<$4 ͹2U.O ͹$4>5L:Ӻ,`2U>7:Ӻ ͹2UO ͹`׻6?d4Om]ɹҺOû-`׻6?T?+ҺD߸û-58T?+5L߸D,`58ֺ;O:;-b׻;7?L?+;ֺ;߸B;;-58;L?+;2L;B;߸+`;58;>;2L;>:+`;U:>;7:>: 9U:O: 9b׻;7?Om;]ɹd4>:=;l;+`;U:.;h1;>;7:j:=;>: 9~$4;.;U:O:;~$4; 9b׻;7?7";~-ʳ;EOm;]ɹֺ;Σ;;O:;-;7";~b׻;7?L?+;Q;Σ;ֺ;B;;;;-58;|';Q;L?+;2L;(;;B;+`;l;|';58;>;h1;(;2L;;^ +<;7";~Q;I;@V;Σ;;<^ +<;|';b;I;Q;(;a;<;l;Ғ;b;|';h1;߿;a;(;=;|6;Ғ;l;.;.Q;߿;h1;j:8͊:|6;=;~$4;Y;.Q;.;;|2;Y;~$4;7";~;;`-ʳ;EΣ;@V;|2;;.Q; ;;߿;8͊::N;|6;Y;< ;.Q;|2;<<Y;;<; ,p;`@V; <<|2;^ +<l<<;I;< <@V;<[- <l<^ +<b;;<I;a;<[- <<Ғ;$w;;b;߿;;<a;|6;N;$w;Ғ;<-<Q < <[- <{ +<<l<;m;-<<<`<{ +<[- <$w;}~;m;;;;`<<N;1UW;}~;$w; ;T;;;:ѝ:1UW;N;<.<T; ;<<.<<<<;h+U; ,p <Q <<<l<<<<ѝ::N;1UW;.<L;H;T;<?;L;.<<9 <3ܶz';4%G;h+UQ <nu;?;<< <9 <3ܶ<-<l<nu;Q <{ +<< <<m;>;l<-<`<;<{ +<}~;%w;>;m;;;;`<1UW;N;%w;}~;T;H;;;>;vj;m;l<;;*<<%w;ے;vj;>;;;;;N;|6;ے;%w;H;ޮ;;;:9͊:|6;N;L;;ޮ;H;?;n;;L;9 <3ܶ>< +O;Dz';4%Gnu;L;n;?; <S <>< +9 <3ܶl<m;L;nu;<*<S < <n;̊h;LN[;;>< +< +m;"-;ۄ;L;*<;<S <vj;];"-;m;;<;;*<ے;ȶl;];vj;;8+;<;;|6;L;ȶl;ے;ޮ;jx;8+;;9͊:j:L;|6;;LN[;jx;ޮ;<;h; +;;ȶl;>`;58;];8+;;h;<;L;T:>`;ȶl;jx;d>;;8+;j:7:T:L;LN[;HV:d>;jx;̊h;̲:HV:LN[;`;`:$@:58;;"u;';h;T::`:>`;d>;A;"u;;7:P ::T:HV:0,:A;d>;`: :P9$@:"u;q;j;';: 0: :`:A;:q;"u;P :9 0::0,:~&::A;9@8~&:0,:;@-); A²;";10 +:@89;;j; A;@-)tԇ:90 +:_;w{;;j;$@:P99tԇ:';j;w{;_;; A;;$᳹²;"7@8;ja;;; A9w{;X;a;;jP99j;|;X;w{; :8P9q;)G;|;j; 0:`~98 ::~:)G;q;9#9`~9 0:~&:Xv:~::@87Xv:~&:)G;Χ;_;|;`~98~:hږ:Χ;)G;#9^8`~9Xv:9hږ:~:79Xv:;ֆ;ph㞊;,Jչ;$᳹7a;r;@ֆ;ph;X;[; r;@a;|;_;[; X;8r;@YK;6\V;ֆ;ph[; V8?;YK;r;@_;[;V8?;[; Χ;dٿ:[;_;hږ:t):dٿ:Χ;^89K8t):hږ:K89ֆ;ph6\V;~Rj;㞊;,Jչt):P^9& +E:dٿ:K8P^9t):K86\V;;չA;$ ~Rj;YK;;`b;չ6\V;V8?;::;`bYK;[;[:::V8?;dٿ:& +E:[:[;::߸;`b[:߸::& +E:[:P^9& +E:P^9;չZ4A;$ ;`b;չ +  +  "! #" &%$'&$*)(+*(.-,./-.0/.,1.124304534658768978:9<;:<=;<>=@?>@A?@BADCBDECDFEHGFHIGHJILKJLMKLNMPONPQOPRQTSRTUST2UXWVWYVYZV[XV\[VZ^]^_]_`]`babcacdadfefgeghehjijkiklilnmnomopmprqrsqstqtvuvwuwxuxzyz{y{|y|~}~}\} +   +   "! #" &%$'&$*)(+*(.-,/.,210320654764:98;:8>=<?><BA@CB@FEDGFDJIHKJHNMLONLRQPSRPVUTWVTZYX[ZX^]\_^\ba`cb`fedgfdjihkjhnmlonlrqpsrpvutwvtzyx{zx~}|~| +   +   "! #" &%$'&$*)(+*(.-,/.,210320654764:98;:8>=<?><BA@CB@FEDGFDJIHKJHNMLONLRQPSRPVUTWVTZYX[ZX^]\_^\ba`cb`fedgfdjihkjhnmlonlrqpsrpvutwvtzyx{zx~}|~| +   +   "! #" &%$'&$*)(+*(.-,/.,210320654764:98;:8>=<?><BA@CB@FEDGFDJIHKJHNMLONLRQPSRPVUTWVTZYX[ZX^]\_^\ba`cb`fedgfdjihkjhnmlonlrqpsrpvutwvtzyx{zx~}|~| +   +   "! #" &%$'&$*)(+*(.-,/.,210320654764:98;:8>=<?><BA@CB@FEDGFDJIHKJHNMLONLRQPSRPVUTWVTZYX[ZX^]\_^\ba`cb`fedgfdjihkjhnmlonlrqpsrpvutwvtzyx{zx~}|~| +   +   "! #" &%$'&$*)(+*(.-,/.,210320654764:98;:8>=<?><BA@CB@FEDGFDJIHKJHNMLONLRQPSRPVUTWVTZYX[ZX^]\_^\ba`cb`fedgfdjihkjhnmlonlrqpsrpvutwvtzyx{zx~}|~| +   +   "! #" &%$'&$*)(+*(.-,/.,210320654764:98;:8>=<?><BA@CB@FEDGFDJIHKJHNMLONLRQPSRPVUTWVTZYX[ZX^]\_^\ba`cb`fedgfdjihkjhnmlonlrqpsrpvutwvtzyx{zx~}|~| +   +   "! #" &%$'&$*)(+*(.-,/.,210320654764:98;:8>=<?><BA@CB@FEDGFDJIHKJHNMLONLRQPSRP===>*>L>n>>>>>>>>????$""?*?633?;?HDD?L?ZUU?]?lff?n?~ww??GD??̌??WU??ݝ?#"?gf???33?ww???CD????SU???"?cf???/3?sw??? "@BD@df@@ +@ @@@03@RU@tw@@@@@""@@D$@bf&@(@*@,@.@ 1@.33@PU5@rw7@9@;@=@?@"B@>DD@`fF@H@J@L@N@ +Q@,3S@NUU@pwW@Y@[@]@_@"b@D@OU@`f@qw@@@@@̜@ݝ@@@ +@"@,3@=D@NU@_f@pw@@@@@̬@ݭ@@@ @"@+3@>Z,>A>W>7n>1Ă>,>>>_9>F">}2>a>>->l?W??? +-?ի"?)? d/?\5?v;?MA?KG?L?8R?D_W?J\?`?C`e?i?[Xm?p?t?v?ky?{?E}?~?|?;?9?J:۫? +g;t?3;w>~?7< }?}<,{?=<z?%<>x?=#v?C=Hs?k=3Aq? =d~n?L=k?=`h?=e?=a?O>-]?>?Y?(>VU?ͥ8>Q?I>M?d[>&I?m> +D?T>??h>L?;?,>i6?>}1?>},?3(>k'?rk>GJ"?>??>?>?2`>O ?A>?>??>?>O ?q`>?>?!@>?Q>*J"?k>k'?n(>},?>}1?>ji6?,->/?;?>??>D?Cm>&I?8e[>M?aI>tQ?.8>=U? +(>(Y?a>]?>a?{=e?H=_h?f=k?=T~n?\ =$Aq?k=:s?fC={#v?R=>x?&< +z?><%{?\<}?8~?f;q?\g;۫?=J:?9v??^?~?_}?}?t{?iz?y?6jw?}u?s?q?j=o?l?CIj?g?;d?,a? +^?[?ljX?\ U?Q?N?_J?!F?(B? +>?:?A6?2?.?*?P&?o "??H`??.?01 ??dT? +>> +>,3>nc>>]>;>>H >>^>}%>3 +>>Hm|>vm>]>*O>\@>2>R%>H>l +>=%=8=K=f==)y=HV=5=H=f<A<D<a<R<;= +g;:9 +# \ No newline at end of file diff --git a/examples/models/gltf/AnimatedMorphSphere/glTF/AnimatedMorphSphere.gltf b/examples/models/gltf/AnimatedMorphSphere/glTF/AnimatedMorphSphere.gltf new file mode 100755 index 0000000000000000000000000000000000000000..69f451fc2b46cc8d26b1d2083d921dbf042d51ca --- /dev/null +++ b/examples/models/gltf/AnimatedMorphSphere/glTF/AnimatedMorphSphere.gltf @@ -0,0 +1,276 @@ +{ + "accessors": [ + { + "bufferView": 0, + "componentType": 5126, + "count": 1876, + "type": "VEC3" + }, + { + "bufferView": 1, + "componentType": 5126, + "count": 1876, + "type": "VEC4" + }, + { + "bufferView": 2, + "componentType": 5126, + "count": 1876, + "type": "VEC3", + "max": [ + 0.009999998, + 0.009999991, + 0.01 + ], + "min": [ + -0.0100000026, + -0.0100000035, + -0.01 + ] + }, + { + "bufferView": 3, + "componentType": 5126, + "count": 1876, + "type": "VEC3", + "name": "Ship" + }, + { + "bufferView": 4, + "componentType": 5126, + "count": 1876, + "type": "VEC3", + "max": [ + 0.0313265175, + 0.0226246975, + 0.008465132 + ], + "min": [ + -0.0313265137, + -0.022857653, + 0.0 + ], + "name": "Ship" + }, + { + "bufferView": 5, + "componentType": 5126, + "count": 1876, + "type": "VEC3", + "name": "Ship" + }, + { + "bufferView": 6, + "componentType": 5126, + "count": 1876, + "type": "VEC3", + "name": "Blob" + }, + { + "bufferView": 7, + "componentType": 5126, + "count": 1876, + "type": "VEC3", + "max": [ + 0.008781092, + 0.0, + 0.0 + ], + "min": [ + -0.008781091, + -0.0007655843, + 0.0 + ], + "name": "Blob" + }, + { + "bufferView": 8, + "componentType": 5126, + "count": 1876, + "type": "VEC3", + "name": "Blob" + }, + { + "bufferView": 9, + "componentType": 5123, + "count": 2880, + "type": "SCALAR" + }, + { + "bufferView": 10, + "componentType": 5126, + "count": 217, + "type": "SCALAR", + "max": [ + 7.19999456 + ], + "min": [ + 0.0 + ] + }, + { + "bufferView": 11, + "componentType": 5126, + "count": 434, + "type": "SCALAR" + } + ], + "animations": [ + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 0, + "path": "weights" + } + } + ], + "samplers": [ + { + "input": 10, + "interpolation": "LINEAR", + "output": 11 + } + ], + "name": "Globe" + } + ], + "asset": { + "generator": "glTF Tools for Unity", + "version": "2.0" + }, + "bufferViews": [ + { + "buffer": 0, + "byteLength": 22512 + }, + { + "buffer": 0, + "byteOffset": 22512, + "byteLength": 30016 + }, + { + "buffer": 0, + "byteOffset": 52528, + "byteLength": 22512 + }, + { + "buffer": 0, + "byteOffset": 75040, + "byteLength": 22512 + }, + { + "buffer": 0, + "byteOffset": 97552, + "byteLength": 22512 + }, + { + "buffer": 0, + "byteOffset": 120064, + "byteLength": 22512 + }, + { + "buffer": 0, + "byteOffset": 142576, + "byteLength": 22512 + }, + { + "buffer": 0, + "byteOffset": 165088, + "byteLength": 22512 + }, + { + "buffer": 0, + "byteOffset": 187600, + "byteLength": 22512 + }, + { + "buffer": 0, + "byteOffset": 210112, + "byteLength": 5760 + }, + { + "buffer": 0, + "byteOffset": 215872, + "byteLength": 868 + }, + { + "buffer": 0, + "byteOffset": 216740, + "byteLength": 1736 + } + ], + "buffers": [ + { + "uri": "AnimatedMorphSphere.bin", + "byteLength": 218476 + } + ], + "meshes": [ + { + "primitives": [ + { + "attributes": { + "NORMAL": 0, + "TANGENT": 1, + "POSITION": 2 + }, + "indices": 9, + "material": 0, + "targets": [ + { + "NORMAL": 3, + "POSITION": 4, + "TANGENT": 5 + }, + { + "NORMAL": 6, + "POSITION": 7, + "TANGENT": 8 + } + ] + } + ], + "weights": [ + 0.0, + 0.0 + ], + "name": "Sphere" + } + ], + "materials": [ + { + "pbrMetallicRoughness": { + "metallicFactor": 0.0, + "roughnessFactor": 0.5 + }, + "name": "No Name" + } + ], + "nodes": [ + { + "mesh": 0, + "rotation": [ + 0.0, + 0.7071067, + -0.7071068, + 0.0 + ], + "scale": [ + 100.0, + 100.0, + 100.0 + ], + "name": "AnimatedMorphSphere" + } + ], + "scene": 0, + "scenes": [ + { + "nodes": [ + 0 + ] + } + ] +} \ No newline at end of file diff --git a/examples/models/gltf/AnimatedMorphSphere/screenshot/screenshot.gif b/examples/models/gltf/AnimatedMorphSphere/screenshot/screenshot.gif new file mode 100755 index 0000000000000000000000000000000000000000..453bc53b6e9d520b51287a998a7dcb0cf3e27510 Binary files /dev/null and b/examples/models/gltf/AnimatedMorphSphere/screenshot/screenshot.gif differ diff --git a/examples/webgl_morphtargets_sphere.html b/examples/webgl_morphtargets_sphere.html new file mode 100644 index 0000000000000000000000000000000000000000..f8053d59ff0ed58bb916ff3cb77a7bea6997cddb --- /dev/null +++ b/examples/webgl_morphtargets_sphere.html @@ -0,0 +1,153 @@ + + + + three.js webgl - morph targets - horse + + + + + + +
+
+ three.js - WebGL morph target example +
+ + + + + + + + + +