Skinned avatars

From ActiveWiki
Jump to: navigation, search

This article is thought to be advanced with detailed information about skinned bone animated geometries.

Bone Hierarchy

Level		Frame Name			parent->tag
-------------------------------------------------------------------
0           -any name-				0->0
1           aw_pelvis				0->1
2             aw_rthip				1->15
3               aw_rtknee			15->16
4                 aw_rtankle			16->17
5                   aw_rttoes			17->18
2             aw_lfhip				1->19
3               aw_lfknee			19->20
4                 aw_lfankle			20->21
5                   aw_lftoes			21->22
2             aw_back				1->2
3               aw_back2			2->55
4                 aw_neck			55->3
5                   aw_head			3->4
6                     aw_rtlid			4->45
6                     aw_lflid			4->46
6                     aw_lipupper		4->39
6                     aw_rteye			4->37
6                     aw_rtcheek		4->47
7                       aw_rtlipupper		47->49
6                     aw_lfcheek		4->48
7                       aw_lflipupper		48->50
6                     aw_lfbrowouter		4->58
6                     aw_rtbrow			4->43
6                     aw_lfbrow			4->44
6                     aw_chin			4->54
6                     aw_rtbrowouter		4->57
6                     aw_hair			4->31
7                       aw_hair2		31->32
8                         aw_hair3		32->33
4                 aw_chest			55->56
5                   aw_rtbreast			56->35
5                   aw_lfbreast			56->36
4                 aw_rtsternum			55->5
5                   aw_rtshoulder		5->6
6                     aw_rtelbow		6->7
7                       aw_rtwrist		7->8
8                         aw_rt5finger1		8->67
9                           aw_rt5finger2	67->68
8                         aw_rt4finger1		8->65
9                           aw_rt4finger2	65->66
8                         aw_rt3finger1		8->63
9                           aw_rt3finger2	63->64
8                         aw_rt2finger1		8->61
9                           aw_rt2finger2	61->62
8                         aw_rt1finger1		8->59
9                           aw_rt1finger2	59->60
4                 aw_lfsternum			55->10
5                   aw_lfshoulder		10->11
6                     aw_lfelbow		11->12
7                       aw_lfwrist		12->13
8                         aw_lf5finger1		13->77
9                           aw_lf5finger2	77->78
8                         aw_lf4finger1		13->75
9                           aw_lf4finger2	75->76
8                         aw_lf3finger1		13->73
9                           aw_lf3finger2	73->74
8                         aw_lf2finger1		13->71
9                           aw_lf2finger2	71->72
8                         aw_lf1finger1		13->69
9                           aw_lf1finger2	69->70

Notes

When a differnt hierarchy than shown here is used, children may become siblings of their parent tag, but they can not become parent of tags from a lower level.

If the hierarchy is broken, the browser will report an error message as soon an animation sequences is applied and then stops the animation sequence in worst case. Usually the browser will attempt to apply an animation sequence even limbs are missing, or limbs are applied to wrong parents, what may lead to unwanted results.

Fingers are numbered starting with 1 for the thumb. Each finger can have up to 2 bones. The back can be splitted in 2 parts, aw_back for the lower part and aw_back2 for the upper part. aw_chest goes onto aw_back2 if present, otherwise it goes to aw_back. aw_neck is the lower neck and goes onto aw_back2 if present also.

The head goes to aw_neck2, the upper neck, if present, otherwise the head goes to aw_neck.

The left and right upper lips can be children of the corresponding left and right cheek, but don't have to be. aw_lipupper and aw_liplower are in the vertical center of the face. The chin may be connected to the lower lip and the noes may be connected to the nose (aw_nose is not shown here, it is tag 40). Also not shown in this hierachy are the right and left ear (aw_rtear / 41, aw_lfear / 42).


Important when you make animation sequences for skinned avatars, make sure to animate all bones that are actually affected; i.e. because the sternum was rarely used in older animation sequences, the skin under the arm shrinkles when the arm is shifted up higher than 90° from it's initial position pointing downwards.

Reference list of all bone/limb names and tag #s

  // Pelvis & Children
  aw_pelvis      // 1
  aw_tail        // 24
  aw_tail2       // 25
  aw_tail3       // 26
  aw_tail4       // 27

  // Back/Chest & Children
  aw_back        // 2
  aw_back2       // 55
  aw_chest       // 56
  aw_rtbreast    // 35
  aw_lfbreast    // 36

  // Neck & Children
  aw_neck        // 3
  aw_neck2       // 23

  // Head & Children
  aw_head        // 4
  aw_hair        // 31
  aw_hair2       // 32
  aw_hair3       // 33
  aw_hair4       // 34

  // Facial Details
  aw_rteye       // 37
  aw_rtlid       // 45
  aw_lfeye       // 38
  aw_lflid       // 46
  aw_nose        // 40
  aw_lipupper    // 39
  aw_rtear       // 41
  aw_lfear       // 42
  aw_rtbrow      // 43
  aw_rtbrowouter // 57
  aw_lfbrow      // 44
  aw_lfbrowouter // 58
  aw_rtcheek     // 47
  aw_rtlipupper  // 49
  aw_lfcheek     // 48
  aw_lflipupper  // 50
  aw_rtliplower  // 52
  aw_lfliplower  // 53
  aw_chin        // 54
  aw_liplower    // 51

  // Right Arm & Children
  aw_rtsternum   // 5
  aw_rtshoulder  // 6
  aw_rtelbow     // 7
  aw_rtwrist     // 8
  aw_rtfingers   // 9

  // Right Hand Fingers Detailed
  // 2 bones per finger  1st finger is thumb
  aw_rt1finger1  // 59
  aw_rt1finger2  // 60
  aw_rt2finger1  // 61
  aw_rt2finger2  // 62
  aw_rt3finger1  // 63
  aw_rt3finger2  // 64
  aw_rt4finger1  // 65
  aw_rt4finger2  // 66
  aw_rt5finger1  // 67
  aw_rt5finger2  // 68

  // Left Arms & Children
  aw_lfsternum   // 10
  aw_lfshoulder  // 11
  aw_lfelbow     // 12
  aw_lfwrist     // 13
  aw_lffingers   // 14

  // Left Hand Fingers Detailed
  // 2 bones per finger  1st finger is thumb
  aw_lf1finger1  // 69
  aw_lf1finger2  // 70
  aw_lf2finger1  // 71
  aw_lf2finger2  // 72
  aw_lf3finger1  // 73
  aw_lf3finger2  // 74
  aw_lf4finger1  // 75
  aw_lf4finger2  // 76
  aw_lf5finger1  // 77
  aw_lf5finger2  // 78

  // Right Leg & Children
  aw_rthip       // 15
  aw_rtknee      // 16
  aw_rtankle     // 17
  aw_rttoes      // 18

  // Left Leg & Children
  aw_lfhip       // 19
  aw_lfknee      // 20
  aw_lfankle     // 21
  aw_lftoes      // 22

  // Misc Tags 
  // any parent, no other children than aw_obj*
  aw_obj         // 28
  aw_obj2        // 29
  aw_obj3        // 30

Alias tag names

aw_sternumr 	aw_rtsternum
aw_shoulderr	aw_rtshoulder
aw_elbowr   	aw_rtelbow
aw_wristr   	aw_rtwrist
aw_fingersr 	aw_rtfingers
aw_sternuml 	aw_lfsternum
aw_shoulderl	aw_lfshoulder
aw_elbowl   	aw_lfelbow
aw_wristl   	aw_lfwrist
aw_fingersl 	aw_lffingers
aw_hipr     	aw_rthip
aw_kneer    	aw_rtknee
aw_ankler   	aw_rtankle
aw_toesr    	aw_rttoes
aw_hipl     	aw_lfhip
aw_kneel    	aw_lfknee
aw_anklel   	aw_lfankle
aw_toesl    	aw_lftoes
aw_breastr  	aw_rtbreast
aw_breastl  	aw_lfbreast
aw_eyer     	aw_rteye
aw_eyel     	aw_lfeye
aw_earr     	aw_rtear
aw_earl     	aw_lfear
aw_browr    	aw_rtbrow
aw_browl    	aw_lfbrow
aw_lidr     	aw_rtlid
aw_lidl     	aw_lflid
aw_cheekr   	aw_rtcheek
aw_cheekl   	aw_lfcheek
aw_lipupperr	aw_rtlipupper
aw_lipupperl	aw_lflipupper
aw_liplowerr	aw_rtliplower
aw_lipdownl 	aw_lfliplower


Character Animation Sequences

For animation sequence format and how to generate character animations look at DX Animation.


Example for a bone hierarchy like shown above in a X-file

Frame RootFrame {

  FrameTransformMatrix {
    1.000000,0.000000,0.000000,0.000000,
    0.000000,1.000000,0.000000,0.000000,
    0.000000,0.000000,1.000000,0.000000,
    0.000000,0.000000,0.000000,1.000000;;
  }
    Frame aw_pelvis {

      FrameTransformMatrix {
        1.000000,0.000000,0.000000,0.000000,
        0.000000,0.521600,-0.853200,0.000000,
        0.000000,0.853200,0.521600,0.000000,
        0.000000,-0.031700,0.052000,1.000000;;
      }
      Frame aw_back {

        FrameTransformMatrix {
          1.000000,0.000000,0.000000,0.000000,
          0.000000,0.569800,0.821800,0.000000,
          0.000000,-0.821800,0.569800,0.000000,
          0.000000,0.077800,0.000000,1.000000;;
        }
        Frame aw_back2 {

          FrameTransformMatrix {
            1.000000,0.000000,0.000000,0.000000,
            0.000000,0.987500,0.157900,0.000000,
            0.000000,-0.157900,0.987500,0.000000,
            0.000000,0.150700,0.000000,1.000000;;
          }
          Frame aw_lfsternum {

            FrameTransformMatrix {
              0.251200,-0.898300,0.360500,0.000000,
              0.930100,0.120800,-0.346900,0.000000,
              0.268100,0.422400,0.865800,0.000000,
              0.000000,0.210700,0.000000,1.000000;;
            }
            Frame aw_lfshoulder {

              FrameTransformMatrix {
                0.470900,-0.093500,0.877200,0.000000,
                0.882000,0.068700,-0.466200,0.000000,
                -0.016600,0.993200,0.114800,0.000000,
                0.000000,0.143900,0.000000,1.000000;;
              }
              Frame aw_lfelbow {

                FrameTransformMatrix {
                  -0.202600,0.388100,0.899100,0.000000,
                  0.690700,0.707400,-0.149800,0.000000,
                  -0.694200,0.590700,-0.411400,0.000000,
                  0.000000,0.239000,0.000000,1.000000;;
                }
                Frame aw_lfwrist {

                  FrameTransformMatrix {
                    0.873200,0.148200,-0.464300,0.000000,
                    -0.082800,0.983900,0.158400,0.000000,
                    0.480300,-0.099900,0.871400,0.000000,
                    0.000000,0.227400,0.000000,1.000000;;
                  }
                  Frame aw_lf1finger1 {

                    FrameTransformMatrix {
                      0.900800,0.074100,-0.427900,0.000000,
                      -0.136800,0.983600,-0.117600,0.000000,
                      0.412200,0.164500,0.896100,0.000000,
                      -0.009400,0.079000,-0.022200,1.000000;;
                    }
                    Frame aw_lf1finger2 {

                      FrameTransformMatrix {
                        0.670100,0.105400,-0.734700,0.000000,
                        -0.273100,0.955400,-0.112100,0.000000,
                        0.690200,0.275800,0.669000,0.000000,
                        0.000000,0.038900,0.000000,1.000000;;
                      }
                    }
                  }
                  Frame aw_lf2finger1 {

                    FrameTransformMatrix {
                      0.869100,0.088800,-0.486600,0.000000,
                      -0.150800,0.984500,-0.089800,0.000000,
                      0.471000,0.151400,0.869000,0.000000,
                      -0.002500,0.082600,-0.001700,1.000000;;
                    }
                    Frame aw_lf2finger2 {

                      FrameTransformMatrix {
                        0.887000,0.082900,-0.454300,0.000000,
                        -0.138600,0.986200,-0.090800,0.000000,
                        0.440500,0.143500,0.886200,0.000000,
                        0.000000,0.036100,0.000000,1.000000;;
                      }
                    }
                  }
                  Frame aw_lf3finger1 {

                    FrameTransformMatrix {
                      0.999100,0.009300,-0.041600,0.000000,
                      -0.012900,0.996000,-0.088400,0.000000,
                      0.040600,0.088900,0.995200,0.000000,
                      -0.001900,0.080100,0.017400,1.000000;;
                    }
                    Frame aw_lf3finger2 {

                      FrameTransformMatrix {
                        0.236000,0.074100,-0.968900,0.000000,
                        -0.459000,0.887400,-0.043900,0.000000,
                        0.856500,0.455100,0.243500,0.000000,
                        0.000000,0.035900,0.000000,1.000000;;
                      }
                    }
                  }
                  Frame aw_lf4finger1 {

                    FrameTransformMatrix {
                      0.999000,0.010300,-0.042400,0.000000,
                      -0.011000,0.999800,-0.016600,0.000000,
                      0.042200,0.017100,0.999000,0.000000,
                      -0.001600,0.072600,0.030900,1.000000;;
                    }
                    Frame aw_lf4finger2 {

                      FrameTransformMatrix {
                        0.309600,0.064100,-0.948700,0.000000,
                        -0.395500,0.916000,-0.067200,0.000000,
                        0.864700,0.396000,0.309000,0.000000,
                        0.000000,0.039100,0.000000,1.000000;;
                      }
                    }
                  }
                  Frame aw_lf5finger1 {

                    FrameTransformMatrix {
                      0.531400,-0.031000,-0.846600,0.000000,
                      -0.430000,0.851200,-0.301100,0.000000,
                      0.729900,0.524000,0.439000,0.000000,
                      -0.022200,0.055000,-0.029000,1.000000;;
                    }
                    Frame aw_lf5finger2 {

                      FrameTransformMatrix {
                        0.986600,0.158900,-0.037200,0.000000,
                        -0.148400,0.968200,0.201300,0.000000,
                        0.068000,-0.193100,0.978800,0.000000,
                        0.000000,0.030300,0.000000,1.000000;;
                      }
                    }
                  }
                }
              }
            }
          }
          Frame aw_rtsternum {

            FrameTransformMatrix {
              0.251200,0.898300,-0.360500,0.000000,
              -0.930100,0.120800,-0.346900,0.000000,
              -0.268100,0.422400,0.865800,0.000000,
              0.000000,0.210700,0.000000,1.000000;;
            }
            Frame aw_rtshoulder {

              FrameTransformMatrix {
                0.470900,0.093600,-0.877200,0.000000,
                -0.882000,0.068700,-0.466200,0.000000,
                0.016600,0.993200,0.114900,0.000000,
                0.000000,0.143900,0.000000,1.000000;;
              }
              Frame aw_rtelbow {

                FrameTransformMatrix {
                  -0.202600,-0.388100,-0.899100,0.000000,
                  -0.690700,0.707400,-0.149700,0.000000,
                  0.694200,0.590700,-0.411400,0.000000,
                  0.000000,0.239000,0.000000,1.000000;;
                }
                Frame aw_rtwrist {

                  FrameTransformMatrix {
                    0.873200,-0.148200,0.464300,0.000000,
                    0.082800,0.983900,0.158400,0.000000,
                    -0.480300,-0.099900,0.871400,0.000000,
                    0.000000,0.227400,0.000000,1.000000;;
                  }
                  Frame aw_rt1finger1 {

                    FrameTransformMatrix {
                      0.900800,-0.074100,0.427900,0.000000,
                      0.136800,0.983600,-0.117600,0.000000,
                      -0.412200,0.164500,0.896100,0.000000,
                      0.009400,0.079000,-0.022200,1.000000;;
                    }
                    Frame aw_rt1finger2 {

                      FrameTransformMatrix {
                        0.670100,-0.105400,0.734700,0.000000,
                        0.273100,0.955400,-0.112100,0.000000,
                        -0.690200,0.275800,0.669000,0.000000,
                        0.000000,0.038900,0.000000,1.000000;;
                      }
                    }
                  }
                  Frame aw_rt2finger1 {

                    FrameTransformMatrix {
                      0.869100,-0.088800,0.486600,0.000000,
                      0.150800,0.984500,-0.089800,0.000000,
                      -0.471000,0.151400,0.869000,0.000000,
                      0.002500,0.082600,-0.001700,1.000000;;
                    }
                    Frame aw_rt2finger2 {

                      FrameTransformMatrix {
                        0.887000,-0.082900,0.454300,0.000000,
                        0.138600,0.986200,-0.090800,0.000000,
                        -0.440500,0.143500,0.886200,0.000000,
                        0.000000,0.036100,0.000000,1.000000;;
                      }
                    }
                  }
                  Frame aw_rt3finger1 {

                    FrameTransformMatrix {
                      0.999100,-0.009300,0.041600,0.000000,
                      0.012900,0.996000,-0.088400,0.000000,
                      -0.040600,0.088900,0.995200,0.000000,
                      0.001900,0.080100,0.017400,1.000000;;
                    }
                    Frame aw_rt3finger2 {

                      FrameTransformMatrix {
                        0.236000,-0.074100,0.968900,0.000000,
                        0.459000,0.887400,-0.043900,0.000000,
                        -0.856500,0.455100,0.243500,0.000000,
                        0.000000,0.035900,0.000000,1.000000;;
                      }
                    }
                  }
                  Frame aw_rt4finger1 {

                    FrameTransformMatrix {
                      0.999000,-0.010300,0.042400,0.000000,
                      0.011000,0.999800,-0.016600,0.000000,
                      -0.042200,0.017100,0.999000,0.000000,
                      0.001600,0.072600,0.030900,1.000000;;
                    }
                    Frame aw_rt4finger2 {

                      FrameTransformMatrix {
                        0.309600,-0.064100,0.948700,0.000000,
                        0.395500,0.916000,-0.067200,0.000000,
                        -0.864700,0.396000,0.309000,0.000000,
                        0.000000,0.039100,0.000000,1.000000;;
                      }
                    }
                  }
                  Frame aw_rt5finger1 {

                    FrameTransformMatrix {
                      0.531400,0.031000,0.846600,0.000000,
                      0.430000,0.851200,-0.301100,0.000000,
                      -0.729900,0.524000,0.439000,0.000000,
                      0.022200,0.055000,-0.029000,1.000000;;
                    }
                    Frame aw_rt5finger2 {

                      FrameTransformMatrix {
                        0.986600,-0.158900,0.037200,0.000000,
                        0.148400,0.968200,0.201300,0.000000,
                        -0.068100,-0.193100,0.978800,0.000000,
                        0.000000,0.030300,0.000000,1.000000;;
                      }
                    }
                  }
                }
              }
            }
          }
          Frame aw_chest {

            FrameTransformMatrix {
              1.000000,0.000000,0.000000,0.000000,
              0.000000,-0.780700,0.624900,0.000000,
              0.000000,-0.624900,-0.780700,0.000000,
              0.000000,0.175800,0.013000,1.000000;;
            }
            Frame aw_lfbreast {

              FrameTransformMatrix {
                0.937700,0.024800,0.346600,0.000000,
                0.209000,0.756700,-0.619500,0.000000,
                -0.277600,0.653300,0.704400,0.000000,
                0.086800,0.073900,-0.004500,1.000000;;
              }
            }
            Frame aw_rtbreast {

              FrameTransformMatrix {
                0.937700,-0.024700,-0.346600,0.000000,
                -0.209000,0.756700,-0.619400,0.000000,
                0.277600,0.653300,0.704400,0.000000,
                -0.086800,0.073900,-0.004500,1.000000;;
              }
            }
          }
          Frame aw_neck {

            FrameTransformMatrix {
              1.000000,0.000000,0.000000,0.000000,
              0.000000,0.953200,-0.302400,0.000000,
              0.000000,0.302400,0.953200,0.000000,
              0.000000,0.210700,0.000000,1.000000;;
            }
            Frame aw_head {

              FrameTransformMatrix {
                1.000000,0.000000,0.000000,0.000000,
                0.000000,0.923600,0.383500,0.000000,
                0.000000,-0.383500,0.923600,0.000000,
                0.000000,0.141100,0.000000,1.000000;;
              }
              Frame aw_hair {

                FrameTransformMatrix {
                  1.000000,0.000000,0.000000,0.000000,
                  0.000000,-0.825500,-0.564400,0.000000,
                  0.000000,0.564400,-0.825500,0.000000,
                  0.000000,0.102100,0.000000,1.000000;;
                }
                Frame aw_hair2 {

                  FrameTransformMatrix {
                    1.000000,0.000000,0.000000,0.000000,
                    0.000000,0.903200,-0.429100,0.000000,
                    0.000000,0.429100,0.903200,0.000000,
                    0.000000,0.124700,0.000000,1.000000;;
                  }
                  Frame aw_hair3 {

                    FrameTransformMatrix {
                      1.000000,0.000000,0.000000,0.000000,
                      0.000000,0.973900,-0.226800,0.000000,
                      0.000000,0.226800,0.973900,0.000000,
                      0.000000,0.120300,0.000000,1.000000;;
                    }
                  }
                }
              }
              Frame aw_rtbrowouter {

                FrameTransformMatrix {
                  0.999800,0.019900,0.005300,0.000000,
                  -0.018600,0.759700,0.650000,0.000000,
                  0.008900,-0.650000,0.759900,0.000000,
                  -0.043700,0.112600,0.078000,1.000000;;
                }
              }
              Frame aw_chin {

                FrameTransformMatrix {
                  1.000000,0.000000,0.000000,0.000000,
                  0.000000,-0.127300,0.991900,0.000000,
                  0.000000,-0.991900,-0.127300,0.000000,
                  0.000000,0.025900,0.012100,1.000000;;
                }
              }
              Frame aw_lfbrow {

                FrameTransformMatrix {
                  0.999900,-0.010800,-0.005600,0.000000,
                  0.009500,0.408300,0.912800,0.000000,
                  -0.007500,-0.912800,0.408300,0.000000,
                  0.017400,0.115700,0.081100,1.000000;;
                }
              }
              Frame aw_rtbrow {

                FrameTransformMatrix {
                  0.999900,0.010700,0.005600,0.000000,
                  -0.009500,0.408300,0.912800,0.000000,
                  0.007500,-0.912800,0.408300,0.000000,
                  -0.017400,0.115700,0.081100,1.000000;;
                }
              }
              Frame aw_lfbrowouter {

                FrameTransformMatrix {
                  0.999800,-0.019900,-0.005300,0.000000,
                  0.018600,0.759700,0.650000,0.000000,
                  -0.008900,-0.650000,0.759900,0.000000,
                  0.043700,0.112600,0.078000,1.000000;;
                }
              }
              Frame aw_lfcheek {

                FrameTransformMatrix {
                  0.770900,-0.471700,-0.428000,0.000000,
                  0.383700,-0.192400,0.903200,0.000000,
                  -0.508400,-0.860500,0.032700,0.000000,
                  0.034300,0.068800,0.080800,1.000000;;
                }
                Frame aw_lflipupper {

                  FrameTransformMatrix {
                    0.770900,0.383700,-0.508400,0.000000,
                    -0.329500,0.923300,0.197200,0.000000,
                    0.545100,0.015500,0.838200,0.000000,
                    -0.002500,0.009300,0.025200,1.000000;;
                  }
                }
              }
              Frame aw_rtcheek {

                FrameTransformMatrix {
                  0.770900,0.471700,0.428000,0.000000,
                  -0.383700,-0.192400,0.903200,0.000000,
                  0.508400,-0.860500,0.032700,0.000000,
                  -0.034300,0.068800,0.080800,1.000000;;
                }
                Frame aw_rtlipupper {

                  FrameTransformMatrix {
                    0.770900,-0.383700,0.508400,0.000000,
                    0.329500,0.923300,0.197200,0.000000,
                    -0.545100,0.015500,0.838200,0.000000,
                    0.002500,0.009300,0.025200,1.000000;;
                  }
                }
              }
              Frame aw_rteye {

                FrameTransformMatrix {
                  1.000000,0.000000,0.000000,0.000000,
                  0.000000,0.170100,0.985400,0.000000,
                  0.000000,-0.985400,0.170100,0.000000,
                  0.000000,0.098600,0.067900,1.000000;;
                }
              }
              Frame aw_lipupper {

                FrameTransformMatrix {
                  1.000000,0.000000,0.000000,0.000000,
                  0.000000,-0.030200,0.999500,0.000000,
                  0.000000,-0.999500,-0.030200,0.000000,
                  0.000000,0.054100,0.097100,1.000000;;
                }
              }
              Frame aw_lflid {

                FrameTransformMatrix {
                  1.000000,0.000000,0.000000,0.000000,
                  0.000000,0.177100,0.984200,0.000000,
                  0.000000,-0.984200,0.177100,0.000000,
                  0.029000,0.106700,0.068400,1.000000;;
                }
              }
              Frame aw_rtlid {

                FrameTransformMatrix {
                  1.000000,0.000000,0.000000,0.000000,
                  0.000000,0.177100,0.984200,0.000000,
                  0.000000,-0.984200,0.177100,0.000000,
                  -0.029000,0.106700,0.068400,1.000000;;
                }
              }
            }
          }
        }
      }
      Frame aw_lfhip {

        FrameTransformMatrix {
          -0.264800,-0.764600,0.587600,0.000000,
          -0.102600,-0.583600,-0.805500,0.000000,
          0.958800,-0.273600,0.076100,0.000000,
          0.108300,0.023500,-0.042400,1.000000;;
        }
        Frame aw_lfknee {

          FrameTransformMatrix {
            -0.715300,-0.153600,0.681700,0.000000,
            -0.185500,0.982300,0.026700,0.000000,
            -0.673700,-0.107400,-0.731200,0.000000,
            0.000000,0.379400,0.000000,1.000000;;
          }
          Frame aw_lfankle {

            FrameTransformMatrix {
              0.853100,-0.033700,-0.520600,0.000000,
              -0.467200,0.394500,-0.791200,0.000000,
              0.232100,0.918300,0.320800,0.000000,
              0.000000,0.419800,0.000000,1.000000;;
            }
            Frame aw_lftoes {

              FrameTransformMatrix {
                0.961900,0.075600,-0.262600,0.000000,
                -0.189800,0.876300,-0.442900,0.000000,
                0.196600,0.475800,0.857300,0.000000,
                0.000000,0.106000,0.000000,1.000000;;
              }
            }
          }
        }
      }
      Frame aw_rthip {

        FrameTransformMatrix {
          -0.264800,0.764600,-0.587600,0.000000,
          0.102600,-0.583600,-0.805500,0.000000,
          -0.958800,-0.273600,0.076100,0.000000,
          -0.108300,0.023500,-0.042400,1.000000;;
        }
        Frame aw_rtknee {

          FrameTransformMatrix {
            -0.715500,0.153700,-0.681600,0.000000,
            0.185500,0.982300,0.026700,0.000000,
            0.673600,-0.107300,-0.731300,0.000000,
            0.000000,0.379400,0.000000,1.000000;;
          }
          Frame aw_rtankle {

            FrameTransformMatrix {
              0.853000,0.033700,0.520800,0.000000,
              0.467400,0.394500,-0.791100,0.000000,
              -0.232100,0.918300,0.320800,0.000000,
              0.000000,0.419800,0.000000,1.000000;;
            }
            Frame aw_rttoes {

              FrameTransformMatrix {
                0.961900,-0.075600,0.262700,0.000000,
                0.189800,0.876300,-0.442800,0.000000,
                -0.196700,0.475800,0.857300,0.000000,
                0.000000,0.106000,0.000000,1.000000;;
              }
            }
          }
        }
      }
  }  // End of the Bone aw_pelvis 
      Frame AVFbody0 {

        FrameTransformMatrix {
          1.000000,0.000000,0.000000,0.000000,
          0.000000,1.000000,0.000000,0.000000,
          0.000000,0.000000,1.000000,0.000000,
          0.000000,0.000000,0.000000,1.000000;;
        }
Mesh {
...
       }
...
  }  // End of the Object AVF body0 
}  // End of the Root Frame