BLENDER_v239REND p SceneSRtPW9 mp( SR1-Animation0( PY6 X 8Ɛ(Ö;DATA0( n< DATA< n8|0( DATA8|nx\6 < DATAx\6 nX* 8|DATAX* nhA6 x\6 DATAhA6 nHX* DATAHn* hA6 DATA* n8>H\DATA8>nT* \DATATn ~8>DATA ~n83 TDATA83 n ~ DATAnPY6 83 DATAPY6 n DATAo0M7 8|< DATA0M7 oH/ 0( x\6 DATAH/ o0M7 hA6 < DATAohH/ H8|DATAho HhA6 DATA oh* X* DATAo H8>DATAoH8>* DATAHoHX* DATAoHT0( DATAop ~X* DATApo( ~x\6 DATA(op ~TDATAo(* 83 DATAoPhA6 DATAPo8>DATAoP83 DATAoxTPY6 DATAxo0 ~PY6 DATA0o xX* 83 DATA o 083 PY6 DATA oX  ThA6 DATAX o PY6 DATA8q0( T ~x\6 wFGH(DATAHppLink and MaterialsEditing>DATAppHMeshEditingF>DATAppAnim settingsObject>DATAp趐DrawObjectF>DATA趐pConstraintsObject>DATAp8趐EffectsObjectDATA8p`HooksObjectF>DATA`p8Particle InteractionObject>趐DATAp`SoftbodyObject>趐DATApرOutputRender>DATAرpRenderRenderF>DATAp(رAnimRender>DATA(pFormatRender>DATAF^G333?) @DhC,V%DhCC(BDC?z?DATATG`F333?) /9DATAq8hA6 < 8|HDATAqx83 8>* ==o? [ [ [OMO@+ A+ DATA@+ pA+ Transform PropertiesView3d>DATAA+ p@+ 3D Viewport propertiesView3d>"DATAMYO333?) ????????==o?*AAy?==o??????*A B??==C F-@F-@F-@?DATATO`M333?) /9DATAxqА* 8>HX* ??Pף]]]HS[?+ ?+ DATA?+ pTransform PropertiesIpo!>DATA(HS]333?) PA̽̌??PA@cc #< #<`jFzD OBPA̽̌?DATAa*HS333?) CC|||??l|DATA*H2  333?) zCCHBC|||?CFC= ADATAxH2 d?+ * 333?) p =rttDATA?+ c8< H2 333?) ?zDzDBCl||ll|zDzD=HB DATA8< X?+ 333?) BCBCl|llFzD #<HB DATAXY[8< 333?) ??? ???? A???PA A!O?j?}GCHB? A B? #<CDATAT[`X333?) /9DATAАqƐxPY6 83 X* ~   Ҕ@>+ h=+ DATA@>+ ph=+ Link and MaterialsEditing>DATAh=+ p@>+ MeshEditingF>DATAfU333?) zCB{ µCB?BFB= ADATAUє 333?) zCCHBC$?CFC= ADATAє^ҔU333?) #DhC`DpJgChCC(BDC?z?DATATҔ`є333?) /9DATAƐqАThA6 PY6 } ?=o?    H ;5 DATApTransform PropertiesView3d>DATAp3D Viewport propertiesView3d>"DATAH apؔ333?) |Cd|C  ??`DATA `95 DATA95 (ÖȖ DATApؔY;5 H 333?) ????????} ?=o?f?*A?} ?=o??????*A B??=C X7@X7@X7@?DATAT;5 `pؔ333?) /9SRtp( m) PW9 SR2-Model   @ . Ő U(ÖJDATA n DATA n  DATA n8  DATA8 n  DATA n 8 DATA n`  DATA` n  DATA n ` DATA n  DATA n DATA@ o   DATA o @ 8  DATA oh    DATAh o   8 DATA oh   DATAo `  DATAo.   DATA. op.  ` DATAp. o(. . `  DATA(. o. p.   DATA. o. (.  DATA. oP. .  DATAP. o. . ` DATA. o. P.  DATA. o.  DATAŐq0+    8 ?@PףF7 ; LL<+ ; DATA<+ p;+ PreviewLamp>DATA;+ p:+ <+ LampLampF>DATA:+ p:+ ;+ SpotLamp>DATA:+ p09+ :+ Texture and InputLamp>DATA09+ pX8+ :+ Map ToLamp>:+ DATAX8+ p7+ 09+ PreviewMaterial>DATA7+ p6+ X8+ MaterialMaterialF>DATA6+ p5+ 7+ PreviewWorld>DATA5+ p4+ 6+ WorldWorldF>DATA4+ p 4+ 5+ Mist Stars PhysicsWorld>DATA 4+ pH3+ 4+ Texture and InputWorld>DATAH3+ pp2+ 4+ Map ToWorld> 4+ DATAp2+ p1+ H3+ OutputRender>DATA1+ p/ p2+ RenderRenderF>DATA/ p+ 1+ AnimRender>DATA+ p ) / FormatRender>DATA ) p) + Link and MaterialsEditing>DATA) ppU ) MeshEditingF>DATApUpU) Mesh ToolsEditing>DATAUp UpUMesh Tools 1Editing>DATA UpUUCameraEditingF>DATAUpp2 UShadersMaterial>* DATAp2 phUUTextureMaterial>DATAhUp2 p2 Anim settingsObjectF>DATA2 p2 hUDrawObject>DATA2 p2 2 ConstraintsObject>DATA2 p2 2 ScriptlinksScript>DATA2 p82 2 EffectsObjectDATA82 p`2 2 Map InputMaterial>p2 DATA`2 p2 82 Map ToMaterial>p2 DATA2 p2 `2 AnimAnim>DATA2 p 2 2 SoundSound>DATA 2 p 2 2 ListenerSoundF>DATA 2 p^9 2 SequencerSound>DATA^9 p. 2 ArmatureEditingF>DATA. p* ^9 RampsMaterialF>7+ DATA* p; . Mirror TranspMaterial>DATA; p; * Mist / Stars / PhysicsWorld>DATA; p; ; Amb OccWorld>; DATA; p; ; Shadow and SpotLamp>DATA; p(; ; ModifiersEditing>DATA(; p; ; ShapesEditing>; DATA; p; (; Armature BonesEditing>DATA; p; ConstraintsEditing>DATA F7 eC~333?ŐDATAC~^`F7 333?ŐDC 43D¡CC(BDC?z?mDATA`YTC~333?Ő??? ???? A??@PA Aj?c3>}GCHB? A B? #<CDATATa; `333?Ő@̌AR|B1@lA A@CC #<@DATAT; `T333?ŐExport BVHC:\Program Files\Blender Foundation\blender-2.40-RC1-windows\ets\..\ker\..\result.bvhndker.blendr.blendtDATA0+ qUŐ`    ̒̒DATAUq U0+    =w=o?34  ɐs/ t/ DATAs/ pt/ Transform PropertiesView3d,>DATAt/ ps/ View PropertiesView3dT>"DATAxɐdh: 333?Up(  k?}ADATA h:e. ɐ333?UDATA. Y`h:333?U????????=w=o?\BA{IAy?=w=o??????{IA B??rE==C7?X<14bg@4bg@4bg@?DATA(`]h 5 . 333?UzC̽̌?zC@22 #< #<`jFzD OBzC̽̌?DATAh 5 ax. `333?UAffzAK_tK_tB33 33 B22 A@CC #<@2DATAx. hu/ h 5 333?U?zDzDBD22FzD #<HB DATAhu/ ^x. 333?UDdC8CnD fCC(BDC?z?DATAT`hu/ 333?U Export BVHILEICTURESC:\Documents and Settings\Jean-Baptiste\Mes documents\Mes Projets\IKBaker\windows\IKBaker.bvhdr.blendr.blendr.blend.blendocationfromparent.blendsDATA UqU `   RJ>\>o?34 @2 L6 L6 X. pv/ DATAX. ppv/ Transform PropertiesView3d>"DATApv/ pX. View PropertiesView3dT>"DATAY`2 333? U???@þG????@>G??RJ>\>o{PU;?J@uM}@y@>G??RJ>\>o????@þG??J@ B??\إ<=C@þG7?X<????DATA`2 aA333? UDQD#??|) DATA,SCff(ÖDATA )  (DATA( (ÖȖ DATA(A]X2 `2 333? UzC̽̌?zC@22 #< #<`jFzD OBzC̽̌?DATAX2 82 A 333? U?zDzDBD22FzD #<HB DATA82 ^@2 X2 333? UDdC8CnD fCC(BDC?z?DATAT@2 `82 333? U/Save AseNT PICTURESC:\Documents and Settings\Administrateur\Mes documents\blender-2.40-alpha2-windows\IKBaker.blendntitled.blendSRt) m\9 p( SR3-Materialodel Singx. ) p2 p. (ÖDATAx. n0. DATA0. n. x. DATA. n. 0. DATA. nX. . DATAX. nP<= . 8DATAP<= n<= X. 8DATA<= n8= P<= DATA8= np7= <= DATAp7= n(7= 8= @8DATA(7= n6= p7= @DATA6= n0= (7= DATA0= nP6= @DATAPn0= DATAnPDATAoȌ. 0. DATAȌo< . x. DATA< oX< ȌX. x. DATAX< o< < . P<= DATA< ox< X< X. P<= DATAx< o< < 0. <= DATA< oа< x< . 8= DATAа< o(< < 8= <= DATA(< oO9 а< 8= P<= DATAO9 oN9 (< X. p7= DATAN9 o8N9 O9 p7= P<= DATA8N9 oL9 N9 (7= 8= DATAL9 oK9 8N9 (7= p7= DATAK9 o) L9 X. 6= DATA) o) K9 6= <= DATA) o) ) 0= (7= DATA) o@) ) 0= p7= DATA@) o) ) 0= 6= DATA) o) @) P6= DATA) oh) ) P0= DATAh) o ) ) <= DATA ) o) h) (7= DATA) o ) PDATAp2 q2 x. X. P<= . ?@Pף77 DATAp৔OutputRender>DATA৔pRenderRenderF>DATAp৔AnimRender>DATApFormatRender>DATAf(333?E ~CA~CA?AFA= ADATA(h 333?E zCCHBC ?CFC= ADATAh^м(333?E DhC?DhCC(BDC?z?mDATAмYh333?E ??? ???? A??@PA Aj?c3>}GCHB? A B? #<CDATAa м333?E @̌AR|B1@lA A@CC #<@DATAT `333?E /9DATA2 q2 p2 <= 0. . 8= DATA2 q]9 2 p7= (7= 8= P<= G@? JLA9A9SAT~X9 2 W9 DATApOutputRender>DATApRenderRender>DATApXAnimRender0>DATAXp0FormatRenderH>DATA0pXPreviewMaterial>DATAp0MaterialMaterial>DATAppShadersMaterial0>DATAppHTextureMaterialD>DATAHp pMap InputMaterial\>DATA pHMap ToMaterial`>DATApW9 RampsMaterial>DATAW9 pMirror TranspMaterialH>DATAX9 ^Y9 333?HR ChCCJiĬl2CC(BDC?z?DATAY9 YIX9 333?HR J>H!?)xu?i6>Pbܗ=(?^L?a?滎z?J>#xu?ܗ=Hi6>(? ?Pb^L?\FAA?4[?[!?@jG>gb>Pb>4Im>k&?]M^L<0@AzA=>Kc<2֍7&> ?:x¸A1vB,jB~@G@? JLJ>H!?)xu?i6>Pbܗ=(?^L?a?滎z?@?$$OA  B?=Ch?j(4?t'>dDATA(I]2 Y9 333?HR zC AzC A #< #<`jFzD OBDATAT2 `I333?HR ;SAVE FILE/usr/home/intrr/blender/blend/untitled.blendDATA]9 q2 X. 6= 0= p7= U.=k=o??9?9S?T@@2 . DATA2 Y2 333?b ???h?j(4?t'>????hj(4t'?U.=k=o< =F?OAAygj(4t'?U.=k=o????h?j(4?t'>??OA  B??qf==Ch?j(4?t'>d@@@-!?o??DATA2 ^x. 2 333?b DdC>9C,DeCC(BDC?z?DATA(x. ]. 2 333?b zC AzC A #< #<`jFzD OBDATAT. `x. 333?b SAVE FILE/Users/ton/Desktop/der/blend/untitled.blendDATAqp. ]9 P(7= 0= e?Z?AHM???>SX. DATAX. Y333?Xi ݕ/?V~'?3F:?>T8175e?4>Z& 4?ߕ/?7F:?81X~>75e?'?T3>ne@>N@?4z?C''巄?i??T?y|? l4j,11A 4A-p>?52>T2?R4xkBʇ֟&B{_eA(@e?Z?AHMݕ/?V~'?3F:?>T8175e?4>Z& 4?H?N+Z#OA  B??߇f;=Ch?j(4?t'>d$@$@$@-!?o??DATA^X. 333?Xi DdC>9C,DeCC(BDC?z?DATA(]333?Xi zC AzC A #< #<`jFzD OBDATAT`333?Xi SAVE FILE/Users/ton/Desktop/der/blend/untitled.blendDATAp. q6= <= P&==V=o?>S2 2 DATA2 Y333?(q ?3?3:-vl(4??3?3;@k(40v@?&=Wk1n;9C,DeCC(BDC?z?DATA(2 ]2 333?(q zC AzC A #< #<`jFzD OBDATAT2 `2 333?(q SAVE FILE/Users/ton/Desktop/der/blend/untitled.blendSRt\9 mH1 ) SR4-Sequence) Q+ XQ+ K+ x. 3 (Ö DATA) nH) DATAH) n) ) DATA) n) H)  DATA) np) ) DATAp) n() ) DATA() n) p) DATA) n) () DATA) nP) ) DATAP) nR+ ) DATAR+ nxR+ P) DATAxR+ n0R+ R+ TDATA0R+ nQ+ xR+ TDATAQ+ nQ+ 0R+ DATAQ+ nQ+ DATAXQ+ oQ+ ) H) DATAQ+ oP+ XQ+ ) ) DATAP+ oP+ Q+ p) ) DATAP+ o8P+ P+ () ) DATA8P+ oO+ P+ () p) DATAO+ oO+ 8P+ ) H) DATAO+ o`O+ O+ ) ) DATA`O+ oO+ O+ ) ) DATAO+ oN+ `O+ P) ) DATAN+ oN+ O+ ) R+ DATAN+ o@N+ N+ P) R+ DATA@N+ oM+ N+ P) xR+ DATAM+ oM+ @N+ xR+ R+ DATAM+ ohM+ M+ ) 0R+ DATAhM+ o M+ M+ ) 0R+ DATA M+ oL+ hM+ 0R+ xR+ DATAL+ oL+ M+ p) Q+ DATAL+ oHL+ L+ P) Q+ DATAHL+ oL+ L+ Q+ R+ DATAL+ oK+ HL+ () Q+ DATAK+ oL+ Q+ Q+ DATAx. qh. ) p) () ) DATAphOutputRender>DATAhp@RenderRenderF>DATA@phAnimRender>DATAp@FormatRender>DATA^333?WDhCvDhCC(BDC?z?DATAT`333?W/9DATAh. q x. ) H) ) )  !  DATA qՖh. p) Q+ Q+ () 8=i>o? ~hDATA~f333?W&~CB~CB ?BFB= ADATA_~333?W&zCAzCA  A@FB= A DATAYh333?W&????????8=i>o?fffAD&@??fffA B? #<CDATATh`333?W&AVE TARGA/t1.blend9DATAՖqږ xR+ 0R+ ) R+ 8=H>o?UUU ֖@) DATA֖_ז333?W*zCAzCA1||1 A@FB= A DATAזY@) ֖333?W*????????8=H>o?fffA*@??fffA B? #<CDATAT@) `ז333?W*AVE TARGA/t1.blend9DATAږq3 ՖP) ) 0R+ xR+ 8=>o?SSST) 3 DATA() ] ) 333?W.B̽̌?B̽̌? #< #<`jFzD SQB̽̌?DATA ) Y3 ) 333?W.????????8=>o?fffA@??fffA B? #<CDATAT3 ` ) 333?W.OAD FILE/9DATA3 qږQ+ P) R+ Q+ 8=i>o? 3 1 DATA3 _3 333?W1zCAzCA A@FB= A DATA3 Y1 3 333?W1????????8=i>o?fffAD&@??fffA B? #<CDATAT1 `3 333?W1AVE TARGA/t1.blend9SRtH1 m\9 SR5-ScriptingpK+ H+ H+ p1 6( (Ö DATApK+ n(K+ DATA(K+ nJ+ pK+ DATAJ+ nJ+ (K+  DATAJ+ nPJ+ J+ DATAPJ+ nJ+ J+ DATAJ+ nI+ PJ+ DATAI+ nxI+ J+ DATAxI+ n0I+ I+ DATA0I+ nH+ xI+ DATAH+ n0I+ DATAH+ oXH+ J+ (K+ DATAXH+ oH+ H+ J+ (K+ DATAH+ oG+ XH+ I+ J+ DATAG+ oG+ H+ I+ J+ DATAG+ o8G+ G+ xI+ PJ+ DATA8G+ oF+ G+ 0I+ J+ DATAF+ oF+ 8G+ 0I+ I+ DATAF+ o`F+ F+ 0I+ xI+ DATA`F+ oF+ F+ J+ PJ+ DATAF+ oE+ `F+ PJ+ pK+ DATAE+ oE+ F+ H+ pK+ DATAE+ o@E+ E+ H+ J+ DATA@E+ oE+ H+ xI+ DATAop@E+ H+ 0I+ DATApoI+ J+ DATA1 q1 J+ (K+ J+ I+  !  DATA1 qX1 PJ+ J+ 0I+ xI+ z==o?裕Ц1 1 DATA1 p1 Transform PropertiesView3d>DATA1 p1 3D Viewport propertiesView3d>"DATA裕YЦ333?Y.|????????z==o?&A*A?z==o??????*A B??=C ?@?@?@?DATATЦ`裕333?Y.|/9DATAXq6( 1 H+ 0I+ I+ J+ ??Pף L 1 8) XXDATAXpTransform PropertiesIpo!>DATAx 1 d 333?Y/|p> =DATAb`) 1 333?Y/|CCx??|?DATA(`) ]) 333?Y/|zC̽̌?zC@;; #< #<`jFzD OBzC̽̌?DATA) a) `) 333?Y/|CC|||??l|DATA) ) ) 333?Y/|zCCHBC|||?CFC= ADATA) cX) ) 333?Y/|?zDzDBCl||ll|zDzD=HB DATAX) 3( ) 333?Y/|BCBCl|llFzD #<HB DATA3( Y8) X) 333?Y/|??? ???? A???PA A!O?j?}GCHB? A B? #<CDATAT8) `3( 333?Y/|/9DATA6( qXpK+ PJ+ xI+ H+ Oș7( 藔DATA7( p8( Link and MaterialsEditing>DATA8( px9( 7( MeshEditingF>DATAx9( p) 8( Anim settingsObject>DATA) p) x9( DrawObjectF>DATA) p) ) ConstraintsObject>DATA) p) ) EffectsObjectDATA) pp) ) HooksObjectF>) DATAp) pH* ) Particle InteractionObject>) DATAH* p * p) SoftbodyObject>) DATA * p* H* OutputRender>DATA* p8 * RenderRenderF>DATA8p* AnimRender>DATAp藔8FormatRender>DATA藔pScriptlinksScript>DATA^ș333?Y0|ChC#DhCC(BDC?z?DATATș`333?Y0|/9SC(ÖWSCScenetageainȖf6 3* b5K@peIqIqIqIII=8 5  dd??< d Xdd??Z @????L?fff??@ A//backbuf/tmp\//ftype@&#@^@&^#DX1 DATAf6 O* n, DATA* Of6 e/ DATAO* U5 DATAO* - DATA* O `1 DATA O* Y5 DATAO אDATAO1 DATAO*  )DATA* O3 8.DATA3O*  5(- DATA(8N,d'=A@DATA 5 VZ ?o: IPP) IPObIpo.001'5 8?PA@OBDATAT'5 ,45 OB/@DATAT45 ,X* '5 Hw/ OBNo @DATATX* ,0͔45 POBDATAT0͔,hX* OBDATATh,80͔PǖOBDATAT8,hǖOB DATAp%37x8??x8?@x8?@/@0A/@mA/@DATApHw/ %3PJ̽?PJ̽W@PJ̽@No @0ANo @lANo @DATApP%9?@t@0AAwnADATAp%9?@t@0AAwnADATApPǖ%9?@t@0AAwnADATApǖ%9?@t@0AAwnAWO ȖMWOWorldg=pb>>===??A@pA A?L=TXdpp( TXArm2Empty.py:KYзYYDATAX:C:\Documents and Settings\Jean-Baptiste\Mes documents\Mes Projets\IKBaker\Arm2Empty.pyDATAY\HH. P* 2EEDATA\P\Y|(FREEDATAP\(0 \/ h* ameDATA(0 x0 P\p0 00 **"DATAx0 2 (0 ؕ0 R6 "DATA2 75 x0 P) DATA75 x2 2 Ӗ,FREEDATAx2 hF. 75 0FREEDATAhF. `/ x2 yFREEDATA`/ ~hF. `2 U6 "FREEDATA~C. `/ pF5 x%\FREEDATAC. .~蓕^6 FREEDATA.XԒC. (1 CFREEDATAXԒ2 .O( `J7 DATA2 ʖXԒ* h9FREEDATAʖ0˖2 {2( FREEDATA0˖˖ʖ0 FREEDATA˖̖0˖oА* FREEDATA̖P̖˖#~( "%(DATAP̖̖̖0Jp* **"DATA̖p͖P̖̖(͖2EEDATAp͖͖̖P(\0 FREEDATA͖Ζp͖ ; t"EDATAΖHΖ͖h[0 FREEDATAHΖΖΖ[0 [0 DATAΖhϖHΖH[0 * )DATAhϖ * Ζp* 5 /FREEDATA * h* hϖ08 - QFREEDATAh* @* * 3 5 /FREEDATA@* * h* @* pFREEDATA* * @* < }6 FREEDATA* `* * `.P~DATA`* 8* * J0* DATA8* * `* * * DATA* X* 8* X) %FREEDATAX* * * * ЭFREEDATA* 0* X* * )'curDATA0* * `|) DATA80* p5 DATA85 R.DATA8XDATA0 DATA0x ؔDATAx08w2 *FREEDATA`Xxh~DATA`XP*  R0 FREEDATAP* 蔕`X) * *FREEDATA蔕@P* - 0- 6FREEDATA@`蔕- - 2FREEDATA`$5 @8 FREEDATA$5 h%5 `hZ0 Z0 FREEDATAh%5 * $5 X, FREEDATA* h%5 Z0 8E( extDATAȉ2 * 0/ FREEDATAȉ2 2 (i* @* &FREEDATA2 X( ȉ2 ]( mFREEDATAX( Y2 3 E'**"DATAYZX( p* E5 8"%(DATAZ_Y * ( $"EEDATA_0 Zh- p2 4()DATA0 }2 _8ئ2 /REEDATA}2 0Ő0 @2 2 3FREEDATA0Ő2 }2 2 P1 3REEDATA2 ʖ0Ő@В* FREEDATAʖx˖2 * 'FREEDATAx˖Ζʖ N) `ߖ;**"DATAΖ ϖx˖1 GFREEDATA ϖ* Ζ* * FREEDATA* * ϖ* ne:DATA* * * F. А2 VFREEDATA* * * $FREEDATA2 * 0FREEDATA2 pP]+ 0Z0 FREEDATApз2 P0FREEDATAзp* Y0 FREEDATAHH. #!BPYEEDATA|DATA/ """DATAp0 Name: 'Arm2Empty'DATAؕ0 Blender: 237REEDATAP) Group: 'Wizards'DATA0 Tip: 'Create parented empties upon armature'REEDATA0"""DATADATA$`2 __author__ = "Jean-Baptiste PERIN"tDATA`pF5 __url__ = ("blender", "elysiun", "http://jmsoler.free.fr/util/blenderfile/py/bvh_import.py")DATA 蓕__version__ = "0.2 01/12/2005"EDATAD(1 __email__= ["M. PERIN Jean-Baptiste, jb_perin@yahoo.fr", "scripts"]DATAO( __bpydoc__ = """\DATA<* This script create parented empties upon a given armature()DATA{DATA0 Supported:
EDATAoDATA#~Missing:
REEDATA0JDATA̖Known issues:
DATAPDATA Notes:
7DATAhDATA[0 """DATAH[0 DATA0p* #----------------------------------------------DATAT08 # (c) Jean-Baptiste PERIN december 2005, released under Blender Artistic LicenceDATA03 #----------------------------------------------DATA@* DATA< import BlenderDATA`.DATAJdef getRootBone(armature):EDATA*  rootBone = NoneDATA( for bone in armature.bones.values():)DATA*  if bone.parent == None :DATA*  if rootBone == None:DATA` rootBone = boneDATA p5  else:endDATA05  print "Multiple root armature not handled"EDATAX return rootBoneDATADATAdef makeParenting(bone):lAjDATA,8w2  lempty = Blender.Object.Get(bone.name)DATA h~ if bone.children != None:EEDATA R for b in bone.children:DATA,)  if bone.name == b.parent.name:eDATA8-  chld_empt = Blender.Object.Get(b.name)EDATA4-  lempty.makeParent([chld_empt],0,0)EDATA$ makeParenting(b)NamDATAhZ0 DATAXprint "**** START ****"DATAZ0 DATA0/ armaturename = ""DATA((i* obj_sel = Blender.Object.GetSelected()DATAp]if (obj_sel != None) and (len (obj_sel) == 1) and (type(obj_sel[0].getData()) == Blender.Types.ArmatureType):5DATA(3  armaturename = obj_sel[0].getName()DATA<p*  armData = Blender.Object.Get(armaturename).getData(),DATA( *  for b in armData.bones.values():REEDATA8h-  lempty = Blender.Object.New('Empty',b.name) REEDATA08 Blender.Scene.getCurrent().link(lempty)DATA4@2  lempty.setMatrix(b.matrix['ARMATURESPACE'])DATA42  lempty.setLocation(b.head['ARMATURESPACE'])DATA@DATA( makeParenting(getRootBone(armData))DATA< N)  rootemp = Blender.Object.Get(getRootBone(armData).name)DATAH rootemp.setLocation(Blender.Object.Get(armaturename).getLocation())DATA*  Blender.Redraw()REEDATAelse:* DATAXF.  error_txt = "Error%t|Select one and only one armature before running this script"EDATA(*  Blender.Draw.PupMenu(error_txt)REEDATA print error_txtREEDATAP]+  REEDATAPprint "**** END ****"EEDATA* TXdp( pTXIKBaker.py55 @|) 0 @|) @|) XADATAX55 C:\Documents and Settings\Jean-Baptiste\Mes documents\Mes Projets\IKBaker\IKBaker.pyDATA@|) {) ) FREEDATA{) {) @|) ) FREEDATA{) h{) {) `9 ߑREEDATAh{)  {) {) 0 (FREEDATA {) z) h{)  FREEDATAz) $ {) 4%FREEDATA$$z) P. H. &DATA$@$$(* * DATA@$#$QpQFREEDATA##@$. . "FREEDATA#h##. I9 FREEDATAh# ##g* FREEDATA #"h#0 / / CDATA"" #"H"FREEDATA"!"x9 87FREEDATA!p!"0DATAp!(!!i* FREEDATA(! p!G. G. FREEDATA  (!Δ ne:DATA P  0P( PFREEDATAP x  extDATAx0P * xb6 DATA0xc6 :( DATA000) DATAXX}* G7 DATAX~* DATAX9 H9 /DATA* - 1 QDATA* * 9 p / /DATA* * * Y0 * DATA* @* * ؗ* DATA@* * * ݖ8~6 DATA*  * @* * h* DATA * * * 8'curDATA* * * * Y0 FREEDATA* H* * p* WFREEDATAH* p* * * * ileSDATAp* (* H* 0J9 J9 %DATA(* * p* oHG. DATA* P* (* * ~DATAP* x* * * * FREEDATAx* 0* P* e6 FREEDATA0* * x* 9 9 -FREEDATA* * 0* * X* FREEDATA* * * hА]+ FREEDATA* 0w* O9 < "FREEDATA0wv* p< 9 'EEDATAvv0whm)DATAvXvvxFDATAXvvv< p< "FREEDATAvuXv(< 9 't"EDATAuuv8 / / (FREEDATAu8uu(2 REEDATA8utuȳ< #"EEDATAtt8ut`t2EEDATAtst`xM7 FREEDATAsstXݐ`0 #FREEDATAs@ssh^0 / 'FREEDATA@shrsrrFREEDATAhr r@s/ 0 5 FREEDATA rHqhrqq()DATAHqp rqFREEDATApppHqH3 (\6 FREEDATApppp(pFREEDATAppp(FREEDATAPp0ϔSDATAP / ` / 0FREEDATAP1 1 6FREEDATAx^0 ]0 #FREEDATAx0(1 5FREEDATA0脗xh) (FREEDATA脗P( 0ئx< )EEDATAP( ( 脗@(@[%(DATA( AP( / 1 Mt"EDATAA@( \0 D7 !"DATA@?Az2 (C5 LDATA?>@8 0 FREEDATA>x>?3 S#**"DATAx>@9 >`1 1 .REEDATA@9 9 x>X2 D()DATA9 9 @9 `U5 ameDATA9 9 9 P5 H<7FREEDATA9 9 9 5 2 0FREEDATA9 / 9 2 B"%(DATA/ x/ 9 ?g2EEDATAx/ 1 / w2 x9 gDATA1 1 x/ R6 ސgFREEDATA1 P1 1 2 2 0t"DATAP1 1 1 O~ƒ 2 DATA1 1 P1 03#)) DATA1 1 1 0* `6 FREEDATA1 p1 1 88* FREEDATAp1 (1 1 @*2 Ő&FREEDATA(1 1 p1 ˕x?!ne:DATA1 1 (1 xJ7 #FREEDATA1 1 @T7 2 VFREEDATAІ1 35[FREEDATAІv, HT5 [FREEDATAv, Pd6 І2 2 TDATAPd6 v, H55 x3 UextDATA)2 Pd6 ?* DATA)2 >81 ȇ.DATA> W6 )2 '5 15 9DATA W6 ~>_@h0 DATA~0? W6 3 ؞* DATA0?w~HDATAwx0?`N.ObjDATAx?6 wL9 +----DATA?6 Ƚ* xp3 E----DATAȽ* 0?6 ݐܐBnDATA0(@6 Ƚ* hܐ0 Bone.DATA(@6 0h0 @1 BnDATA(@6 8=DATA 1 1 E 5 DATA `y2 Eoot DATA`y' @2 U6 EotBoDATA'`yPT6 EDATAX'(F5 DATAX* x8ҕ'FREEDATA* (Xx* FREEDATA(ȣ2 * . DATAȣ2 * (<HFREEDATA* ȣ2 FREEDATAU* hFREEDATAU@* ( X6 FREEDATA@* * U0X6 ОFREEDATA* p~@* xѕ 5 *DATAp~* AFREEDATA;p~)( $~FREEDATA;* FREEDATA;ՖؚREEDATA(@/"FREEDATA> * $DATAp;(<h FREEDATAp;0* 15 h35 :FREEDATA0* .p;P45 85 :FREEDATA.~0* 2 < :FREEDATA~x. ; < SDATAxhA~5 $5 SextDATAhA@J. x%2 ܖRFREEDATA@J. 83 hAߐ+ FREEDATA83 p@J. W6 * FREEDATAp* 83 p 5  5 *FREEDATA* 脒pX0DATA脒ڐ* X8= hVFREEDATAڐ( 脒`; 2 @< DATA( xwڐP/ FREEDATAxw賗( * FREEDATA賗ȕxwXWDATAȕ(賗) B5 GDATA(`ȕ* (DATA`(P;* &DATA02 `* )( DATA02 X* H#DATAX* {02 p(DATA{hX* 2= X2= #DATAh]0 {`(2 DATA]0 أh!5 @#5 8DATAأ]0 5 ԒFREEDATAأ(* /DATA(5 V6 ) FREEDATA(5 2= 3= FREEDATAy(5 p:DATAy@2 PnDATA@2 2 y02 Y0 DATA2 2@2 xD) x :DATA22 4= * 'FREEDATAX2 2P-FREEDATAX2 x6Xo2 4FREEDATAxx* X2  3 -EmptDATAx* P( x06= 6= !DATAP( * x* . $5 9DATA* ৗP( X0 * hie DATAৗ2 *  g0 "%(iDATA2 H2 ৗ(ɕxDATAH2 2 7= 3 'DATAP;H2 X DATAP;h_6 <肒5DATAh_6 G7 P;J. DATAG7 &h_6 ϖnDATA&ȾG7 FREEDATAȾ * &8= := #FREEDATA * 885 ȾH3 G( %(DATA885 E * /("HIDATAE2 885 8* %f %DATA2 P:( EX:= ;= &DATAP:(  < 2 2 tmDATA < ߑP:( 2 A. pMenDATAߑ蚕 < 8~* $DATA蚕ߑ@< 'DATAP?蚕) x0 BFREEDATAP?* p@6 ?= e.reDATA* ) P?(B5 V bonDATA) Ⱥ* P; $d emDATAȺ|) 3 DATA|0 ȺDATA0 |pȴe.reDATA) #!BPYEEDATADATA`9 """DATA 0 Name: 'IK Capture (.bvh)...'REEDATABlender: 237],DATA4Group: 'Export'DATA(P. Tip: 'Export a (.bvh) IK capture file'EDATA(* """DATAQ DATA$. __author__ = "Jean-Baptiste PERIN"DATA$. __url__ = ("blender", "elysiun").naDATA g* __version__ = "0.4 05/12/01"n:DATAD0 / __email__= ["M. PERIN Jean-Baptiste, jb_perin@yahoo.fr", "scripts"]DATA"__bpydoc__ = """\DATA8x9 This script exports Empty animation to bvh file format.DATA0DATAi* Supported: Poser 3.01
n:DATAG.  DATAMissing:
EEDATA0P( DATA Known issues:
DATA* DATA c6 Notes:
DATA0DATAX}* """DATA~DATA09 #----------------------------------------------DATAT- # (c) Jean-Baptiste PERIN december 2005, released under Blender Artistic LicenceipDATA09 #----------------------------------------------DATAY0 DATAimport BlenderDATA ݖimport mathDATA* empty_rest_ori = {}DATA DATA* DATAp* def getRootBone(armature):EDATA*  rootBone = NoneDATA(0J9  for bone in armature.bones.values():EEDATAo if bone.parent == None :DATA*  if rootBone == None:DATA*  rootBone = boneDATA e6  else:>=DATA09  print"Multiple root armature not handled")DATA*  return rootBoneDATAhАDATA$O9 def getBoneCurPos(armature, bone):DATA(p<  lempty = Blender.Object.Get(bone.name)DATA  return (lempty.getLocation())DATAxDATA$< def getBoneCurRot(armature, bone):)DATA((<  lempty = Blender.Object.Get(bone.name)DATA,8 /  return (lempty.getMatrix('worldspace'))):DATA(DATA$ȳ< def getBoneRestPos(armature, bone):DATAt return (bone.head)DATA`""DATA$Xݐdef getBoneRestRot(armature, bone):DATA(h^0  lempty = Blender.Object.Get(bone.name)DATAr return (bone.matrix)EEDATA/  REEDATAqdef indentString(i):REEDATA string = ""DATAH3  for v in range(0,i):ne%DATA(p string += "\t"EDATA( return stringDATA0ϔDATA4 / def printBoneHierarchie (armature, bone, level):REEDATA81  str = "%sJOINT %s\n"%(indentString(level), bone.name)EDATA$^0  str += "%s{\n"%indentString(level)DATA8(1  str += "%s\tOFFSET %f %f %f\n"%(indentString(level),EEDATAh)  getBoneRestPos(armature, bone)['ARMATURESPACE'][0] - getBoneRestPos(armature, bone.parent)['ARMATURESPACE'][0],REEDATAئ getBoneRestPos(armature, bone)['ARMATURESPACE'][1]- getBoneRestPos(armature, bone.parent)['ARMATURESPACE'][1],DATA@( getBoneRestPos(armature, bone)['ARMATURESPACE'][2]- getBoneRestPos(armature, bone.parent)['ARMATURESPACE'][2])DATAP/  empty_rest_ori [bone.name] = getBoneRestRot(armature, bone)['ARMATURESPACE']?DATA$\0  print empty_rest_ori [bone.name])DATAPz2  str += "%s\tCHANNELS 3 Zrotation Xrotation Yrotation\n"%indentString(level)5EDATA8  if bone.children != None:EDATA$3  for b in bone.children:DATA0`1  if bone.name == b.parent.name:EDATAHX str += printBoneHierarchie (armature,b, level+1)REEDATA` else:EEDATA8P5  str += "%s\tEnd Site\n"%indentString(level)DATA45  str += "%s\t{\n"%indentString(level)REEDATAD2  str += "%s\t\tOFFSET %f %f %f\n"%(indentString(level),DATAh bone.tail['ARMATURESPACE'][0]-bone.head['ARMATURESPACE'][0],DATAhw2  bone.tail['ARMATURESPACE'][1]-bone.head['ARMATURESPACE'][1],DATAhR6  bone.tail['ARMATURESPACE'][2]-bone.head['ARMATURESPACE'][2])DATA42  str += "%s\t}\n"%indentString(level)xtDATAO~ DATA$03 str += "%s}\n"%indentString(level)DATA0*  return (str)EEDATA8 DATA(@*2 def printArmatureHierarchie(armature):EDATA$˕ rootBone = getRootBone(armature)DATA$x str = "ROOT %s\n{\n"%rootBone.nameDATAX@T7  str += "\tOFFSET %f %f %f\n"%(getBoneRestPos(armature, rootBone)['ARMATURESPACE'][0],EDATA\3 getBoneRestPos(armature, rootBone)['ARMATURESPACE'][1],DATA\H getBoneRestPos(armature, rootBone)['ARMATURESPACE'][2])DATAX2  str += "\tCHANNELS 6 Xposition Yposition Zposition Zrotation Xrotation Yrotation\n"DATAXH55  empty_rest_ori [rootBone.name] = getBoneRestRot(armature, rootBone)['ARMATURESPACE']EDATA ? for b in rootBone.children:REEDATA081  if rootBone.name == b.parent.name:DATA< '5  str += printBoneHierarchie (armature,b,1)'DATA_ str += "}\n"EEDATA3  return (str)EEDATA * DATA`DATA,L9 def printBoneFrame (armature, bone, level):DATAH mat1inv = Blender.Mathutils.Matrix(empty_rest_ori [bone.name][0],DATADݐ empty_rest_ori [bone.name][1],DATADhܐ empty_rest_ori [bone.name][2],DATADh0  empty_rest_ori [bone.name][3])DATA8 mat1inv.invert()triDATAH1  mat2 = Blender.Mathutils.Matrix(getBoneCurRot(armature, bone)[0],DATAH getBoneCurRot(armature, bone)[1],DATAH@2  getBoneCurRot(armature, bone)[2],EEDATAHPT6  getBoneCurRot(armature, bone)[3])EEDATA mat3=mat1inv*mat2EEDATA(x eul = mat3.rotationPart().toEuler()DATA REEDATA.  str = "%f %f %f "%(DATA< eul[2],DATA eul[0],DATA eul[1])DATA (  if bone.children != None:EEDATA 0X6  for b in bone.children:DATA,xѕ if bone.name == b.parent.name:DATAD  str += printBoneFrame (printBoneFrame,b, level+1))DATA)(  return (str)DATA* ""DATAՖDATA$(def printArmatureFrame (armature):lDATA(>  rootBone = getRootBone(armature)))DATA$(< str = "%f %f %f %f %f %f "%(NamDATA<15  getBoneCurPos(armature, getRootBone(armature))[0],eDATA<P45  getBoneCurPos(armature, getRootBone(armature))[1],DATA<2  getBoneCurPos(armature, getRootBone(armature))[2],DATAT ;  getBoneCurRot(armature, getRootBone(armature)).rotationPart().toEuler()[2],DATAT5  getBoneCurRot(armature, getRootBone(armature)).rotationPart().toEuler()[0],DATAT%2  getBoneCurRot(armature, getRootBone(armature)).rotationPart().toEuler()[1]DATA ߐ ) DATA W6  for b in rootBone.children:DATA,p 5  if rootBone.name == b.parent.name:DATA4X str += printBoneFrame (armature,b,1)REEDATAX8=  str += "\n"DATA`;  return (str)DATAP DATA* def exportBVH(filename):DATA global armaturenameDATAH)  print "Exporting armature %s to file %s "%( armaturename, filename)DATA, startFrame = Blender.Get('staframe') DATA(P; endFrame = Blender.Get('endframe')EDATA* ""DATA$ outputfile = file(filename,'w')DATAp!BPDATA$2=  outputfile.write("HIERARCHY\n")DATA`DATA<!5  armData = Blender.Object.Get(armaturename).getData()namDATA5 ""DATA0(*  str_res = printArmatureHierarchie (armData)DATA V6  outputfile.write(str_res)EEDATA$2=  outputfile.write("MOTION\n")* DATA<p outputfile.write("Frames: %d\n"%(endFrame-startFrame)))DATAp outputfile.write("Frame Time: %f\n"%(1.0/Blender.Scene.getCurrent().getRenderingContext().framesPerSec()))DATA02 !BPDATA<xD)  ctx = Blender.Scene.getCurrent().getRenderingContext()\DATA(4=  Blender.Set('curframe', startFrame)DATA0P while Blender.Get('curframe') < endFrame:DATA86 print "frame : %d"%(Blender.Get('curframe'))REEDATA0 str_res = printArmatureFrame(armData)DATA$06=  outputfile.write(str_res)?=?=??=L=???DATAX; (`/ ; ; ; Bone.001>p?d?>d???>W?d?>d????C|=?=?=??L=C|W=???DATA; X; ; ; Bone.002 ?h ?4?55?4??>W?R?I @>OlsOls?>?>W???=?=OC?=??C|W=?=???DATA; ; FFBone.003?_ᖾtt?ᖾ?R?I @{?]?<?R?I @?(=?=x9?=???=(]=???DATAF; Bone.004:V??bʺb:??{?]?w?OϽBfBf<?{?]??W=?=V?=??(]=Wu=???DATA(`/ X; ; `a/ `a/ Bone.005 ׾X]l?h? > Ծh??? ׾.?h? > Ծh????'=?=?=??L='O=???DATA`a/ (`/ b/ b/ Bone.006Y>?lH?lH?? ׾.?M@)[x>D[x?D[x)[x>? ׾.??=?=QC?=??'O==???DATAb/ `a/ c/ c/ Bone.007׀ETM}?TM}E?M@N]?~=˽~?M@?jX=?=B7?=??=jXP=???DATAc/ b/ Bone.008zK4INF??d.=d.??M]?¬Di=iD?M]??B=?=Ci?=??jXP=Br=???OBe/ GאOBArmatureh/ EW`:????????W`:????????W;`?DOBd0A? #=?>=?@???DATAD(06 16 Bone; ѐ?????????????4444C4C4CDATAD16 36 (06 Bone.001X; (06 36 ???????vv?d?>d?????>W?4444C4C4CDATAD36 46 16 Bone.002; 16 46 ????K>xTk?~yTkK>4$%[%?z@b=?2K$?~?··=~?.f%[%?>W??>W?t ?J,@4004444C4C4CDATAD46 p66 36 Bone.003; 36 p66 ????ԍ>Hu?l>Juԍ>΂Ns$# $%?6@8r?%? 9wx%:w? =$s$# $%?t ?I,@200?t ?I,@200?T@04444C4C4CDATAL0h/ , o:? #<DATA466 0h/ Const?DATADp66 ѐ46 66 66 Bone.004F46 ????3u>x?x-u> ؤ74%?@ y?I%?8gWYyZ%YYy?0g:$74%??T@-??T@-/@lU @n 4444C4C4CDATADѐӐp66 Bone.005(`/ (06 Ӑ???????n.2?h? > Ծh????? ׾.?4444C4C4CDATADӐԐѐBone.006`a/ ѐԐ?????fD:3D[x??1 3-`%?)[x>D[x?D[x)[x>? ׾.?? ׾.?M@4444C4C4CDATADԐ֐ӐBone.007b/ Ӑ֐?????q#˲??pe4{'?~=˽~?M@?M@N]?4444C4C4CDATAD֐ԐBone.008c/ Ԑ?????2??g)H3u?Di=iD?M]??M]?¬4444C4C4CDATAh/ (06 ֐OBאG`1 e/ OBBone.008Y5 I]?Km@???hE@??Bi=iC?LbS??º~˽=º~? =?@???H86 1 DATA,76 e/ Bone.008DATA4H86 1 76 Const?DATA,86 e/ Bone.008DATA41 H86 86 Const.001?OB`1 G1 אOBBone.006- ׾.?$WX0????h???)[x>C[x?D[x%[x>?پ_??h? Ծ >h?? Ծh?Dd0A? #=?>=?@???1 1 DATA,1 e/ Bone.006DATA41 1 1 Const?DATA,P1 e/ Bone.006DATA41 1 P1 Const.001?OB1 G)`1 OBBone.001U5 ?W`:???c??d?>d??lWX0??????Dd0A? #=?>=?@???1 )DATA,@1 e/ Bone.001DATA41 )@1 Const?DATA,1 e/ Bone.001DATA4)1 1 Const.001?OB)G8.1 OBBone.0021 >W?lWX0????Š??~?··=~?/f%[%?->؇??d?>復d??>d?Dd0A? #=?>=?@???--DATA,,e/ Bone.002DATA4--, Const?DATA,p-e/ Bone.002DATA4--p-Const.001?OB8.G(- )OBBone.003)R?I @->؇????H?? =wy%9w? =$o$#!$%?ۜ ?u,@100?>Lls?Nls>?k?`?Dd0A? #=?>=?@???12DATA,`1e/ Bone.003DATA412`1 Const?DATA,(2e/ Bone.003DATA421(2Const.001?OB(- G- 8.OBBone.0048.{?]?ۜ ?u,@100???,)H??=?@???- x- DATA,P- e/ Bone.004DATA4- x- P- Const?DATA,- e/ Bone.004DATA4x- - - Const.001?OB- GU5 (- OBBone.005U5 ?W`:???&e>??h? > Ծh??$WX0??????Dd0A? #=?>=?@???h- 0- DATA,- e/ Bone.005DATA4h- 0- - Const?DATA,- e/ Bone.005DATA40- h- - Const.001?OBU5 GY5 - OBBone????????W`:?????Dd0A? #=?>=?@???- hY5 DATA,- e/ BoneDATA4- hY5 - Const?DATA,Y5 e/ BoneDATA4hY5 - Y5 Const.001?OBY5 G, U5 OBBone.007`1 M@پ_????B@??~=˽~?Km@?([x>B[xD[x?*[x>?Ῡ*`?Dd0A? #=?>=?@???X]5 ^5 DATA,\5 e/ Bone.007DATA4X]5  ^5 \5 Const?DATA,]5 e/ Bone.007DATA4 ^5 X]5 ]5 Const.001?OB, GY5 OBEmpty) /@No @????????/@No @?????DOBd0A? #=?>=?@???GLOBxrp( (Ö p0 DNA18d|, SDNANAME*next*prev*first*lastxyzwxminxmaxyminymax*newid*libname[24]usflagpadid*idblock*filedataname[160]totcurvecurblocktypeshowkeyposcurvaltypeadrcodetotelem*data*weightsname[32]vgroup[32]sliderminslidermax*refkeyelemstr[32]elemsizeblock*ipo*fromtotkeyslurph**scripts*flagactscripttotscript*line*formatlenblen*nameflagsnlineslines*curl*sellcurcselc*undo_bufundo_posundo_len*compiledsizeseekpassepartalphapad1clipstaclipendlensortho_scaledrawsizeYF_dofdistYF_apertureYF_bkhtypeYF_bkhbiasYF_bkhrotscriptlink*anim*ibuf*mipmap[10]oklastframelastqualitytpageflagtotbindxrepyreptwstatwendbindcode*repbind*packedfilelastupdatelastusedanimspeedreserved1reserved2texcomaptomaptonegblendtype*object*texprojxprojyprojzmappingofs[3]size[3]texflagcolormodelrgbkdef_varcolfacnorfacvarfacdispfacwarpfac*handle*pname*stnamesstypesvars*varstr*result*cfradata[32](*doit)()(*callback)()versionaipotypedata[16]*ima*cube[6]imat[4][4]stypenotlaycuberesdepthrecalclastsizenoisesizeturbulbrightcontrastrfacgfacbfacfiltersizemg_Hmg_lacunaritymg_octavesmg_offsetmg_gaindist_amountns_outscalevn_w1vn_w2vn_w3vn_w4vn_mexpvn_distmvn_coltypenoisedepthnoisetypenoisebasisnoisebasis2imaflagcropxmincropymincropxmaxcropymaxxrepeatyrepeatextendcheckerdistnablaframesoffsetsfrafie_ima*plugin*coba*envfradur[4][2]modetotexenergydistspotsizespotblendhaintatt1att2bufsizesampshadspotsizebiassoftray_sampray_sampyray_sampzray_samp_typearea_shapearea_sizearea_sizeyarea_sizeztexactshadhalostepYF_numphotonsYF_numsearchYF_phdepthYF_useqmcYF_bufsizeYF_padYF_causticblurYF_ltradiusYF_glowintYF_glowofsYF_pad3YF_glowtypeYF_pad2*mtex[10]layspecrspecgspecbmirrmirgmirbambrambbambgambemitangspectraray_mirroralpharefspeczoffsaddtranslucencyfresnel_mirfresnel_mir_ifresnel_trafresnel_tra_ifilterray_depthray_depth_traharseed1seed2mode2flarecstarclinecringchasizeflaresizesubsizeflarebooststrand_stastrand_endstrand_easergbselpr_typepr_backpr_lampseptexpad4pad5diff_shaderspec_shaderroughnessrefracparam[4]rmsdarkness*ramp_col*ramp_specrampin_colrampin_specrampblend_colrampblend_specramp_showpad3rampfac_colrampfac_specfrictionfhreflectfhdistxyfrictdynamodepad2YF_arYF_agYF_abYF_dscaleYF_dpwrYF_dsmpYF_presetYF_djitname[256]scale*bbi1j1k1i2j2k2selcol1selcol2quat[4]expxexpyexpzradrad2s*mat*imatelemsdisp**mattotcolloc[3]rot[3]wiresizerendersizethreshvec[3][3]alfaweighth1h2f1f2f3hidevec[4]mat_nrpntsupntsvresoluresolvorderuordervflaguflagv*knotsu*knotsv*bp*beztcharidxkernhnurb*bevobj*taperobj*textoncurve*path*keybevpathlenbevresolwidthext1ext2spacemodespacinglinedistshearfsizewordspaceulposulheightxofyoflinewidth*strfamily[24]*vfont*vfontb*vfonti*vfontbisepchartotboxactbox*tbselstartselend*strinfocurinfo*obname[128]maxrcttotrctvartypetotvertipoextraprtbitmask*driver*tpageuv[4][2]col[4]transptileunwrapeffect*mface*tface*dface*mvert*medge*dvert*mcol*msticky*texcomesh*oc*sumohandletotedgetotfacecubemapsizesmoothreshsubdivsubdivrsubsurftypev1v2v3v4edcodecreasedef_nr*dwtotweightco[3]no[3]co[2]*errormodifiersubdivTypelevelsrenderLevels*emCache*mCachestartlengthrandomizeseedaxistolerancepercentfaceCountstartxstartyheightnarrowspeeddamptimeoffslifetimedeformflagparentinv[4][4]cent[3]falloff*indexartotindexforceoperationpntswopntsuopntsvopntswtypeutypevtypewfufvfwdudvdw*defvec[8][3]dvec[3]max**obpartypepar1par2par3parsubstr[32]*pardata*parent*track*action*poseconstraintChannelsnetworkdefbasemodifiersdloc[3]orig[3]dsize[3]drot[3]dquat[4]obmat[4][4]colbitstransflagipoflagtrackflagupflagnlaflagprotectflagipowinscaflagscavisflagboundtypedupondupoffdupstadupendsfctimemassdampinginertiaformfactorsofttimerdampingsizefacdtdtxactcolpropsensorscontrollersactuatorsbbsize[3]dfrasactdefgameflaggameflag2softflaganisotropicFriction[3]constraintsnlastripshooks*pd*soft*lifelbufportfluidsimFlagshapenrshapeflag*fluidsimSettings*derivedDeform*derivedFinalmat[4][4]curindexactivedeflectforcefieldpdef_damppdef_rdamppdef_permf_strengthf_powermaxdistpdef_sbdamppdef_sbiftpdef_sbofttotpointtotspring*bpoint*bspringnodemassgravmediafrictrklimitphysics_speedgoalspringgoalfrictmingoalmaxgoaldefgoalvertgroupinspringinfrictefrainterval**keystotpointkeyshow_advancedoptionsresolutionxyzpreviewresxyzrealsizeguiDisplayModerenderDisplayModeviscosityValueviscosityModeviscosityExponentgravxgravygravzanimStartanimEndgstarmaxRefineiniVelxiniVelyiniVelz*orgMesh*meshSurface*meshBBsurfdataPath[240]bbStart[3]bbSize[3]mistypehorrhorghorbhorkzenrzengzenbzenkambkfastcolexposureexprangelinfaclogfacgravityactivityBoxRadiusskytypephysicsEnginemisimiststamistdistmisthistarrstargstarbstarkstarsizestarmindiststardiststarcolnoisedofstadofenddofmindofmaxaodistaodistfacaoenergyaobiasaomodeaosampaomixaocolor*aospherehemiresmaxiterdrawtypesubshootpsubshootenodelimmaxsublamppamapamielmaelmimaxnodeconvergenceradfacgammaselcolsxsy*lpFormat*lpParmscbFormatcbParmsfccTypefccHandlerdwKeyFrameEverydwQualitydwBytesPerSeconddwFlagsdwInterleaveEveryavicodecname[128]*cdParms*padcdSizeqtcodecname[128]mixratemainpad[3]*avicodecdata*qtcodecdatacfraimagesframaptoframelenblurfacedgeRedgeGedgeBfullscreenxplayyplayfreqplayattribrt1rt2stereomodedimensionspresetfiltertypemaximsizexschyschxaspyaspxpartsypartssafetyborderwinposplanesimtypebufflagqualityscemoderendererocresrpad[2]alphamodedogammaosafrs_secedgeintsame_mat_reduxgausspostmulpostgammapostaddpostigammaposthuepostsatdither_intensityzminfocuszgammazsigmazblurGIqualityGIcacheGImethodGIphotonsGIdirectYF_AAYFexportxmlYF_nobumpYF_clamprgbyfpad1GIdepthGIcausdepthGIpixelspersampleGIphotoncountGImixphotonsGIphotonradiusYF_numprocsYF_raydepthYF_AApassesYF_AAsamplesGIshadowqualityGIrefinementGIpowerGIindirpowerYF_gammaYF_exposureYF_raybiasYF_AApixelsizeYF_AAthresholdbackbuf[160]pic[160]ftype[160]col[3]framename[64]cornertypeeditbutflagdegrstepturnextr_offsdoublimitsegmentsringsvertices*camera*world*setbase*basact*groupcursor[3]twcent[3]twmin[3]twmax[3]selectmodeproportionalprop_modeeditbutsize*ed*radioframing*toolsettingsaudiomarkers*theDagdagisvaliddagflagszoomblendximyim*rectspacetypeblockscale*areablockhandler[8]viewmat[4][4]viewinv[4][4]persmat[4][4]persinv[4][4]winmat1[4][4]viewmat1[4][4]viewquat[4]perspview*bgpic*localvdlocalviewlayactscenelockaroundcamzoomgridgridviewpixsizenearfargridlinesviewbutgridflagmodeselectmenunrtexnrtwtypetwmodetwflagtwdrawflagtwmat[4][4]clip[4][4]*clipbbafterdrawzbufxrayverthormaskmin[2]max[2]minzoommaxzoomscrollkeeptotkeepaspectkeepzoomoldwinxoldwinyrowbutv2d*editipoipokeyactname[32]constname[32]totipopinbutofschannellockmedian[3]cursenscuractaligntabomainbmainbo*lockpointexfromshowgrouprectxrectycurymodeltypescriptblockre_alignoldkeypresstab[7]*filelisttotfiletitle[24]dir[160]file[80]ofssortmaxnamelencollums*libfiledataretvalmenuact(*returnfunc)()*menupoopsvisiflagtree*treestoreoutlinevisstoreflagdeps_flags*imageimanrcurtile*texttopviewlinesfont_idlheightleftshowlinenrstabnumbercurrtab_setshowsyntaxunused_paddpix_per_linetxtscrolltxtbar*scriptredrawstitle[28]fasesubfasemouse_move_redrawimafasemxmydirslidirsli_linesdirsli_sxdirsli_eydirsli_exdirsli_himaslifileselmenuitemimasli_sximasli_eyimasli_eximasli_hdssxdssydsexdseydesxdesydeexdeeyfssxfssyfsexfseydsdhfsdhfesxfesyfeexfeeyinfsxinfsyinfexinfeydnsxdnsydnwdnhfnsxfnsyfnwfnhfole[128]dor[128]file[128]dir[128]*firstdir*firstfiletopdirtotaldirshilitetopfiletotalfilesimage_sliderslider_heightslider_spacetopimatotalimacurimaxcurimay*first_sel_ima*hilite_imatotal_selectedima_redraw*cmap*arg1outline[4]neutral[4]action[4]setting[4]setting1[4]setting2[4]num[4]textfield[4]textfield_hi[4]popup[4]text[4]text_hi[4]menu_back[4]menu_item[4]menu_hilite[4]menu_text[4]menu_text_hi[4]but_drawtypepad1[3]back[4]header[4]panel[4]shade1[4]shade2[4]hilite[4]grid[4]wire[4]select[4]lamp[4]active[4]transform[4]vertex[4]vertex_select[4]edge[4]edge_select[4]edge_seam[4]edge_facesel[4]face[4]face_select[4]face_dot[4]normal[4]bone_solid[4]bone_pose[4]strip[4]strip_select[4]vertex_sizefacedot_sizebpad[2]syntaxl[4]syntaxn[4]syntaxb[4]syntaxv[4]syntaxc[4]tuitbutstv3dtfiletipotinfotsndtacttnlatseqtimatimaseltexttoopsttimespec[4]dupflagsavetimetempdir[160]fontdir[160]renderdir[160]textudir[160]plugtexdir[160]plugseqdir[160]pythondir[160]sounddir[160]yfexportdir[160]versionsvrmlflaggameflagswheellinescrolluiflaglanguageuserprefviewzoomconsole_bufferconsole_outmixbufsizefontsizeencodingtransoptsmenuthreshold1menuthreshold2fontname[256]themesundostepscurssizetb_leftmousetb_rightmouselight[3]tw_hotspottw_flagtw_handlesizetw_sizetextimeouttexcollectrateobcenter_diavertbaseedgebaseareabase*sceneendxendysizexsizeyscenenrscreennrfullmainwinwinakthandler[8]*newvvec*v1*v2panelname[64]tabname[64]ofsxofsycontrolold_ofsxold_ofsysortcounter*paneltab*v3*v4*fullwinmat[4][4]headrctwinrctheadwinwinheadertypebutspacetypewinxwinyhead_swaphead_equalwin_swapwin_equalheadbutlenheadbutofscursorspacedatauiblockspanels*curscreen*curscenedisplaymodefileflagsglobalfname[80]*se1*se2*se3nrdone*stripdataorxory*newseqstartofsendofsstartstillendstillmachinestartdispenddispmulhandsize*strip*curelemfacf0facf1*seq1*seq2*seq3seqbase*soundlevelpancurposstrobe*effectdata*oldbasep*parseq*seqbasepmetastackedgeWidthangleforwardwipetypefMinifClampfBoostdDistdQualitybNoCompbuttypeuserjitstaendtotpartnormfacobfacrandfactexfacrandlifeforce[3]vectsizedefvec[3]mult[4]life[4]child[4]mat[4]texmapcurmultstaticstepomattimetexspeedtexflag2flag2negvertgroup_vvgroupname[32]vgroupname_v[32]*keysminfacused*idusedelemdxdylinkotypedataold*poin*oldpoinresetdistlastval*makeyqualqual2targetName[32]toggleName[32]value[32]maxvalue[32]materialName[32]damptimerdelaypropname[32]matname[32]axisflag*fromObjectsubject[32]body[32]pulsefreqtotlinks**linksinvertfreq2axisfbuttonbuttonfhathatfprecisionstr[128]*mynewinputstotslinks**slinksvalvalotime*actblendinprioritystridelengthstrideaxisreserved3sndnrmakecopycopymadepad[1]trackvolume*melinVelocity[3]localflagforceloc[3]forcerot[3]linearvelocity[3]angularvelocity[3]addedlinearvelocity[3]anotherpad[4]butstabutendminfacvisifacslowminloc[3]maxloc[3]minrot[3]maxrot[3]distributionint_arg_1int_arg_2float_arg_1float_arg_2toPropName[32]*toObjectbodyTypefilename[64]loadaniname[64]goaccellerationmaxspeedmaxrotspeedmaxtiltspeedrotdamptiltdampspeeddamp*sample*stream*newpackedfile*snd_soundpanningattenuationpitchmin_gainmax_gaindistancestreamlenloopstartloopendchannelshighpriopad[10]gaindopplerfactordopplervelocitynumsoundsblendernumsoundsgameengine*gkeypadfokeygobjectgkey*activechildbaserollhead[3]tail[3]bone_mat[3][3]arm_head[3]arm_tail[3]arm_mat[4][4]xwidthzwidthease1ease2rad_headrad_tailboneclassbonebasechainbaseghostepghostsizeconstflagikflag*bone*childiktree*b_bone_matschan_mat[4][4]pose_mat[4][4]pose_head[3]pose_tail[3]limitmin[3]limitmax[3]stiffness[3]ikstretchchanbasestride_offset[3]actnrtimeslidename[30]enforce*tariterationsrootbonesubtarget[32]orientweightgrabtarget[3]minmaxflagstickystuckcache[3]locallockflagfollowflagoffset[3]zmaxvolmodeplaneorglengthbulgestride_axisactstartactendstridelenrepeatblendoutstridechannel[32]TYPEcharucharshortushortintlongulongfloatdoublevoidLinkListBasevec2svec2ivec2fvec2dvec3ivec3fvec3dvec4ivec4fvec4drctirctfIDLibraryFileDataIpoKeyBlockKeyScriptLinkTextLineTextPackedFileCameraImageanimImBufMTexObjectTexPluginTexCBDataColorBandEnvMapLampWaveMaterialVFontVFontDataMetaElemBoundBoxMetaBallBezTripleBPointNurbCharInfoTextBoxCurvePathIpoDriverIpoCurveTFaceMeshMFaceMVertMEdgeMDeformVertMColMStickyOcInfoMDeformWeightModifierDataSubsurfModifierDataLatticeModifierDataCurveModifierDataBuildModifierDataMirrorModifierDataDecimateModifierDataWaveModifierDataArmatureModifierDataHookModifierDataSoftbodyModifierDataBooleanModifierDataLatticebDeformGroupLBufbActionbPosePartDeflectSoftBodyLifeFluidsimSettingsDerivedMeshObHookSBVertexBodyPointBodySpringWorldRadioBaseAviCodecDataQuicktimeCodecDataAudioDataRenderDataGameFramingTimeMarkerToolSettingsSceneGroupDagForestBGpicView3DSpaceLinkScrAreaView2DSpaceInfoSpaceIpoSpaceButsSpaceSeqSpaceFiledirentryBlendHandleSpaceOopsTreeStoreSpaceImageSpaceNlaSpaceTextSpaceScriptScriptSpaceTimeSpaceImaSelImaDirOneSelectableImaThemeUIThemeSpacebThemeSolidLightUserDefbScreenScrVertScrEdgePanelFileGlobalStripElemStripPluginSeqSequencebSoundMetaStackEditingWipeVarsGlowVarsEffectBuildEffPartEffParticleWaveEffTreeStoreElemOopsbPropertybNearSensorbMouseSensorbTouchSensorbKeyboardSensorbPropertySensorbCollisionSensorbRadarSensorbRandomSensorbRaySensorbMessageSensorbSensorbControllerbJoystickSensorbExpressionContbPythonContbActuatorbAddObjectActuatorbActionActuatorbSoundActuatorbCDActuatorbEditObjectActuatorbSceneActuatorbPropertyActuatorbObjectActuatorbIpoActuatorbCameraActuatorbConstraintActuatorbGroupActuatorbRandomActuatorbMessageActuatorbGameActuatorbVisibilityActuatorFreeCamerabSamplebSoundListenerSpaceSoundGroupKeyObjectKeyGroupObjectBonebArmaturebPoseChannelbActionChannelSpaceActionbConstraintChannelbConstraintbKinematicConstraintbTrackToConstraintbRotateLikeConstraintbLocateLikeConstraintbMinMaxConstraintbActionConstraintbLockTrackConstraintbFollowPathConstraintbDistanceLimitConstraintbRotationConstraintbStretchToConstraintbActionStripTLEN  0Phtdt0XP4@l`88,T< 4DXXD<<\@4@l( 8,\T (PD$$x$(T x H8th  8 ,@0,HhH,(lDLP@< <@Lx0848l(@0pPD<,4L,,,<8,<4XSTRC                   !"#$% &'( )*+,-./012345 678 9:;<=>?@ A!BC7 "DEFGHIJKLMNO*P#$Q%R%STUVWXYZ[\]^!_`abcd&efgh'i(jklmnopqrstuvwxyz{|) }~  *stu+*,'i##FGTUE(44y*#)+,-2rstuvFG&*P.*/_rstu     ef+ +!"#$%&'()&**+,-./012345678P09:1 !_2223;<=>?@ABCDEFGHIJ4KL43; M N*/OPqQpRSTU5 VWXYZ[\]^6_WX[^777`^abcdefghij6k5lm8n`09o:63; p N'q'r's*;tu/O vQpRqwPxyz{cd49|}~0000988<'===6k5l  <> ? 3; *u/O@> ABCDE?F qQpRP@`BGXCGA`DstuEHHH"IH7  JH'i"KH'i"LHMHNHO HyPHE0'iQ H'i"RHSH'iTab06*uUUU"3FpV''_ ''*;t3;WX    N  /OQpRD      !"#P$P % & ' ( )*+,-./ 0 1 2Y3Z4[5V6V789:\;]<]=^^^'>"?@Y ABCDEFGHIJK__ZLM`NaOPQRSTUVWXYZE[\]^0__`,\abcdefghijklmnopqrs?t?u?vwxyb8rz{|}~*&Pcddd'ie  f  0ghbef]B      !"#$i%E0'jjj&'k ()*+,E-./010'l'2b3l4# 5d6m789:;<=>? @cA iBkChsgDP EnFGHEo #(jBIJKLMp5qqNOrPQRSTUVWXYZ'2o[p\]^_`aHbcdefo8ghijklmnopqr3s tuv0swxyz{|}~qqqNOrPQtqqNOrPQuqqNOrPQ0s  *+kvqqNOrPQsk lMEw qqNOrPQsI0xqqNOrPQyz {qqNOrPQs   |}qqNOrPQs#Ik~ qqNOrPQksqqNOrPQ 7k qqNOrP07kqqNOrPsQqqNOrP     0%   !"#$%$&'()*+,-./0123456789:;<=>?@ABCDEFG"HIJKLMNOPQRSTUVW_-XYZ[\]^_`abcdefghijklmnopqrs tuvwxyz{|}~E0'   l @rrrNP     %RT 4 9 }~  & 4*l$Q      4)Z,Ny| "^  "     "E0"/""0"""E' ! "#$E0" %'&' "()*+,-. /0$ 10'" %2345' W6"789:cd; <=>?<@A 5'?B"CDl'2"' EFQRGHIJ "EKL'MNOPQRST "EKLm7UVWXYZ'[ \E0!]^ / _" ' `abcdefg h!_!i j*Aklmnop7qrstuvwxyz{qqNOrPs<0]"|''*QpRD    }' ~m   "Xp/   0"wE0  QpDtX * "cW qqNOrPQsW* c 'X0'cd'c'c' 'MW6' ' 'E0p   '*W67ENDB