Perhaps I am mistaken then, it could be an issue with the Matrix1 limb parent command not recognizing the relationship. I am not familiar with the Direct X format, but it looks like the children are nested. I use your plugin everyday, (which I will remember, is it Chris Foster or Kira Vakaan).
So my engine must be fooling me into think my car wheels are not the children of the car mesh. Or DarkBASIC does not parse the X files properly.
Direct X File:
xof 0303txt 0032
Frame Root {
FrameTransformMatrix {
1.000000, 0.000000, 0.000000, 0.000000,
0.000000,-0.000000, 1.000000, 0.000000,
0.000000, 1.000000, 0.000000, 0.000000,
0.000000, 0.000000, 0.000000, 1.000000;;
}
Frame Parent {
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 { // Parent mesh
8;
1.000000; 1.000000;-1.000000;,
1.000000;-1.000000;-1.000000;,
-1.000000;-1.000000;-1.000000;,
-1.000000; 1.000000;-1.000000;,
1.000000; 0.999999; 1.000000;,
0.999999;-1.000001; 1.000000;,
-1.000000;-1.000000; 1.000000;,
-1.000000; 1.000000; 1.000000;;
6;
4;3,2,1,0;,
4;5,6,7,4;,
4;1,5,4,0;,
4;2,6,5,1;,
4;3,7,6,2;,
4;7,3,0,4;;
MeshNormals { // Parent normals
6;
0.000000; 0.000000;-1.000000;,
0.000000;-0.000000; 1.000000;,
1.000000;-0.000000; 0.000000;,
-0.000000;-1.000000;-0.000000;,
-1.000000; 0.000000;-0.000000;,
0.000000; 1.000000; 0.000000;;
6;
4;0,0,0,0;,
4;1,1,1,1;,
4;2,2,2,2;,
4;3,3,3,3;,
4;4,4,4,4;,
4;5,5,5,5;;
} // End of Parent normals
MeshMaterialList { // Parent material list
1;
6;
0,
0,
0,
0,
0,
0;;
Material Material {
0.640000; 0.640000; 0.640000; 1.000000;;
96.078431;
0.500000; 0.500000; 0.500000;;
0.000000; 0.000000; 0.000000;;
}
} // End of Parent material list
} // End of Parent mesh
Frame Child {
FrameTransformMatrix {
0.457503, 0.000000, 0.000000, 0.000000,
0.000000, 0.457503, 0.000000, 0.000000,
0.000000, 0.000000, 0.457503, 0.000000,
1.282399, 2.263994,-0.518791, 1.000000;;
}
Mesh { // Child mesh
33;
0.000000; 1.000000;-1.000000;,
0.195090; 0.980785;-1.000000;,
0.382683; 0.923880;-1.000000;,
0.555570; 0.831470;-1.000000;,
0.707107; 0.707107;-1.000000;,
0.831470; 0.555570;-1.000000;,
0.923880; 0.382683;-1.000000;,
0.980785; 0.195090;-1.000000;,
1.000000; 0.000000;-1.000000;,
0.000000; 0.000000; 1.000000;,
0.980785;-0.195090;-1.000000;,
0.923880;-0.382683;-1.000000;,
0.831470;-0.555570;-1.000000;,
0.707107;-0.707107;-1.000000;,
0.555570;-0.831470;-1.000000;,
0.382683;-0.923880;-1.000000;,
0.195090;-0.980785;-1.000000;,
-0.000000;-1.000000;-1.000000;,
-0.195091;-0.980785;-1.000000;,
-0.382684;-0.923879;-1.000000;,
-0.555571;-0.831469;-1.000000;,
-0.707107;-0.707106;-1.000000;,
-0.831470;-0.555570;-1.000000;,
-0.923880;-0.382683;-1.000000;,
-0.980785;-0.195089;-1.000000;,
-1.000000; 0.000001;-1.000000;,
-0.980785; 0.195091;-1.000000;,
-0.923879; 0.382684;-1.000000;,
-0.831469; 0.555571;-1.000000;,
-0.707106; 0.707108;-1.000000;,
-0.555569; 0.831470;-1.000000;,
-0.382682; 0.923880;-1.000000;,
-0.195089; 0.980786;-1.000000;;
33;
3;32,9,31;,
3;1,9,0;,
3;0,9,32;,
3;2,9,1;,
3;31,9,30;,
3;30,9,29;,
3;29,9,28;,
3;28,9,27;,
3;27,9,26;,
3;26,9,25;,
3;25,9,24;,
3;24,9,23;,
3;23,9,22;,
3;22,9,21;,
3;21,9,20;,
3;20,9,19;,
3;19,9,18;,
3;18,9,17;,
3;17,9,16;,
3;16,9,15;,
3;15,9,14;,
3;14,9,13;,
3;13,9,12;,
3;12,9,11;,
3;11,9,10;,
3;10,9,8;,
3;8,9,7;,
3;7,9,6;,
3;6,9,5;,
3;5,9,4;,
3;4,9,3;,
3;3,9,2;,
32;32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,8,7,6,5,4,3,2,1,0;;
MeshNormals { // Child normals
33;
-0.259887; 0.856737; 0.445488;,
0.087754; 0.890977; 0.445488;,
-0.087753; 0.890977; 0.445488;,
0.259888; 0.856737; 0.445488;,
-0.422035; 0.789574; 0.445488;,
-0.567964; 0.692067; 0.445488;,
-0.692066; 0.567966; 0.445488;,
-0.789573; 0.422037; 0.445488;,
-0.856737; 0.259889; 0.445488;,
-0.890977; 0.087754; 0.445488;,
-0.890977;-0.087753; 0.445488;,
-0.856737;-0.259887; 0.445488;,
-0.789574;-0.422035; 0.445488;,
-0.692067;-0.567964; 0.445488;,
-0.567965;-0.692066; 0.445488;,
-0.422036;-0.789573; 0.445488;,
-0.259889;-0.856737; 0.445488;,
-0.087754;-0.890977; 0.445488;,
0.087753;-0.890977; 0.445488;,
0.259888;-0.856737; 0.445488;,
0.422036;-0.789573; 0.445488;,
0.567965;-0.692067; 0.445488;,
0.692067;-0.567965; 0.445488;,
0.789573;-0.422035; 0.445488;,
0.856737;-0.259888; 0.445488;,
0.890977;-0.087753; 0.445488;,
0.890977; 0.087754; 0.445488;,
0.856737; 0.259888; 0.445488;,
0.789573; 0.422036; 0.445488;,
0.692067; 0.567965; 0.445488;,
0.567965; 0.692067; 0.445488;,
0.422036; 0.789573; 0.445488;,
0.000000; 0.000000;-1.000000;;
33;
3;0,0,0;,
3;1,1,1;,
3;2,2,2;,
3;3,3,3;,
3;4,4,4;,
3;5,5,5;,
3;6,6,6;,
3;7,7,7;,
3;8,8,8;,
3;9,9,9;,
3;10,10,10;,
3;11,11,11;,
3;12,12,12;,
3;13,13,13;,
3;14,14,14;,
3;15,15,15;,
3;16,16,16;,
3;17,17,17;,
3;18,18,18;,
3;19,19,19;,
3;20,20,20;,
3;21,21,21;,
3;22,22,22;,
3;23,23,23;,
3;24,24,24;,
3;25,25,25;,
3;26,26,26;,
3;27,27,27;,
3;28,28,28;,
3;29,29,29;,
3;30,30,30;,
3;31,31,31;,
32;32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32;;
} // End of Child normals
} // End of Child mesh
} // End of Child
Frame Child_001 {
FrameTransformMatrix {
0.457503, 0.000000, 0.000000, 0.000000,
0.000000, 0.457503, 0.000000, 0.000000,
0.000000, 0.000000, 0.457503, 0.000000,
-0.652409,-2.627703,-0.933492, 1.000000;;
}
Mesh { // Child_001 mesh
33;
0.000000; 1.000000;-1.000000;,
0.195090; 0.980785;-1.000000;,
0.382683; 0.923880;-1.000000;,
0.555570; 0.831470;-1.000000;,
0.707107; 0.707107;-1.000000;,
0.831470; 0.555570;-1.000000;,
0.923880; 0.382683;-1.000000;,
0.980785; 0.195090;-1.000000;,
1.000000; 0.000000;-1.000000;,
0.000000; 0.000000; 1.000000;,
0.980785;-0.195090;-1.000000;,
0.923880;-0.382683;-1.000000;,
0.831470;-0.555570;-1.000000;,
0.707107;-0.707107;-1.000000;,
0.555570;-0.831470;-1.000000;,
0.382683;-0.923880;-1.000000;,
0.195090;-0.980785;-1.000000;,
-0.000000;-1.000000;-1.000000;,
-0.195091;-0.980785;-1.000000;,
-0.382684;-0.923879;-1.000000;,
-0.555571;-0.831469;-1.000000;,
-0.707107;-0.707106;-1.000000;,
-0.831470;-0.555570;-1.000000;,
-0.923880;-0.382683;-1.000000;,
-0.980785;-0.195089;-1.000000;,
-1.000000; 0.000001;-1.000000;,
-0.980785; 0.195091;-1.000000;,
-0.923879; 0.382684;-1.000000;,
-0.831469; 0.555571;-1.000000;,
-0.707106; 0.707108;-1.000000;,
-0.555569; 0.831470;-1.000000;,
-0.382682; 0.923880;-1.000000;,
-0.195089; 0.980786;-1.000000;;
33;
3;32,9,31;,
3;1,9,0;,
3;0,9,32;,
3;2,9,1;,
3;31,9,30;,
3;30,9,29;,
3;29,9,28;,
3;28,9,27;,
3;27,9,26;,
3;26,9,25;,
3;25,9,24;,
3;24,9,23;,
3;23,9,22;,
3;22,9,21;,
3;21,9,20;,
3;20,9,19;,
3;19,9,18;,
3;18,9,17;,
3;17,9,16;,
3;16,9,15;,
3;15,9,14;,
3;14,9,13;,
3;13,9,12;,
3;12,9,11;,
3;11,9,10;,
3;10,9,8;,
3;8,9,7;,
3;7,9,6;,
3;6,9,5;,
3;5,9,4;,
3;4,9,3;,
3;3,9,2;,
32;32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,8,7,6,5,4,3,2,1,0;;
MeshNormals { // Child_001 normals
33;
-0.259887; 0.856737; 0.445488;,
0.087754; 0.890977; 0.445488;,
-0.087753; 0.890977; 0.445488;,
0.259888; 0.856737; 0.445488;,
-0.422035; 0.789574; 0.445488;,
-0.567964; 0.692067; 0.445488;,
-0.692066; 0.567966; 0.445488;,
-0.789573; 0.422037; 0.445488;,
-0.856737; 0.259889; 0.445488;,
-0.890977; 0.087754; 0.445488;,
-0.890977;-0.087753; 0.445488;,
-0.856737;-0.259887; 0.445488;,
-0.789574;-0.422035; 0.445488;,
-0.692067;-0.567964; 0.445488;,
-0.567965;-0.692066; 0.445488;,
-0.422036;-0.789573; 0.445488;,
-0.259889;-0.856737; 0.445488;,
-0.087754;-0.890977; 0.445488;,
0.087753;-0.890977; 0.445488;,
0.259888;-0.856737; 0.445488;,
0.422036;-0.789573; 0.445488;,
0.567965;-0.692067; 0.445488;,
0.692067;-0.567965; 0.445488;,
0.789573;-0.422035; 0.445488;,
0.856737;-0.259888; 0.445488;,
0.890977;-0.087753; 0.445488;,
0.890977; 0.087754; 0.445488;,
0.856737; 0.259888; 0.445488;,
0.789573; 0.422036; 0.445488;,
0.692067; 0.567965; 0.445488;,
0.567965; 0.692067; 0.445488;,
0.422036; 0.789573; 0.445488;,
0.000000; 0.000000;-1.000000;;
33;
3;0,0,0;,
3;1,1,1;,
3;2,2,2;,
3;3,3,3;,
3;4,4,4;,
3;5,5,5;,
3;6,6,6;,
3;7,7,7;,
3;8,8,8;,
3;9,9,9;,
3;10,10,10;,
3;11,11,11;,
3;12,12,12;,
3;13,13,13;,
3;14,14,14;,
3;15,15,15;,
3;16,16,16;,
3;17,17,17;,
3;18,18,18;,
3;19,19,19;,
3;20,20,20;,
3;21,21,21;,
3;22,22,22;,
3;23,23,23;,
3;24,24,24;,
3;25,25,25;,
3;26,26,26;,
3;27,27,27;,
3;28,28,28;,
3;29,29,29;,
3;30,30,30;,
3;31,31,31;,
32;32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32;;
} // End of Child_001 normals
} // End of Child_001 mesh
} // End of Child_001
Frame Child_002 {
FrameTransformMatrix {
0.457503, 0.000000, 0.000000, 0.000000,
0.000000, 0.457503, 0.000000, 0.000000,
0.000000, 0.000000, 0.457503, 0.000000,
-1.590895,-1.214637, 1.936806, 1.000000;;
}
Mesh { // Child_002 mesh
33;
0.000000; 1.000000;-1.000000;,
0.195090; 0.980785;-1.000000;,
0.382683; 0.923880;-1.000000;,
0.555570; 0.831470;-1.000000;,
0.707107; 0.707107;-1.000000;,
0.831470; 0.555570;-1.000000;,
0.923880; 0.382683;-1.000000;,
0.980785; 0.195090;-1.000000;,
1.000000; 0.000000;-1.000000;,
0.000000; 0.000000; 1.000000;,
0.980785;-0.195090;-1.000000;,
0.923880;-0.382683;-1.000000;,
0.831470;-0.555570;-1.000000;,
0.707107;-0.707107;-1.000000;,
0.555570;-0.831470;-1.000000;,
0.382683;-0.923880;-1.000000;,
0.195090;-0.980785;-1.000000;,
-0.000000;-1.000000;-1.000000;,
-0.195091;-0.980785;-1.000000;,
-0.382684;-0.923879;-1.000000;,
-0.555571;-0.831469;-1.000000;,
-0.707107;-0.707106;-1.000000;,
-0.831470;-0.555570;-1.000000;,
-0.923880;-0.382683;-1.000000;,
-0.980785;-0.195089;-1.000000;,
-1.000000; 0.000001;-1.000000;,
-0.980785; 0.195091;-1.000000;,
-0.923879; 0.382684;-1.000000;,
-0.831469; 0.555571;-1.000000;,
-0.707106; 0.707108;-1.000000;,
-0.555569; 0.831470;-1.000000;,
-0.382682; 0.923880;-1.000000;,
-0.195089; 0.980786;-1.000000;;
33;
3;32,9,31;,
3;1,9,0;,
3;0,9,32;,
3;2,9,1;,
3;31,9,30;,
3;30,9,29;,
3;29,9,28;,
3;28,9,27;,
3;27,9,26;,
3;26,9,25;,
3;25,9,24;,
3;24,9,23;,
3;23,9,22;,
3;22,9,21;,
3;21,9,20;,
3;20,9,19;,
3;19,9,18;,
3;18,9,17;,
3;17,9,16;,
3;16,9,15;,
3;15,9,14;,
3;14,9,13;,
3;13,9,12;,
3;12,9,11;,
3;11,9,10;,
3;10,9,8;,
3;8,9,7;,
3;7,9,6;,
3;6,9,5;,
3;5,9,4;,
3;4,9,3;,
3;3,9,2;,
32;32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,8,7,6,5,4,3,2,1,0;;
MeshNormals { // Child_002 normals
33;
-0.259887; 0.856737; 0.445488;,
0.087754; 0.890977; 0.445488;,
-0.087753; 0.890977; 0.445488;,
0.259888; 0.856737; 0.445488;,
-0.422035; 0.789574; 0.445488;,
-0.567964; 0.692067; 0.445488;,
-0.692066; 0.567966; 0.445488;,
-0.789573; 0.422037; 0.445488;,
-0.856737; 0.259889; 0.445488;,
-0.890977; 0.087754; 0.445488;,
-0.890977;-0.087753; 0.445488;,
-0.856737;-0.259887; 0.445488;,
-0.789574;-0.422035; 0.445488;,
-0.692067;-0.567964; 0.445488;,
-0.567965;-0.692066; 0.445488;,
-0.422036;-0.789573; 0.445488;,
-0.259889;-0.856737; 0.445488;,
-0.087754;-0.890977; 0.445488;,
0.087753;-0.890977; 0.445488;,
0.259888;-0.856737; 0.445488;,
0.422036;-0.789573; 0.445488;,
0.567965;-0.692067; 0.445488;,
0.692067;-0.567965; 0.445488;,
0.789573;-0.422035; 0.445488;,
0.856737;-0.259888; 0.445488;,
0.890977;-0.087753; 0.445488;,
0.890977; 0.087754; 0.445488;,
0.856737; 0.259888; 0.445488;,
0.789573; 0.422036; 0.445488;,
0.692067; 0.567965; 0.445488;,
0.567965; 0.692067; 0.445488;,
0.422036; 0.789573; 0.445488;,
0.000000; 0.000000;-1.000000;;
33;
3;0,0,0;,
3;1,1,1;,
3;2,2,2;,
3;3,3,3;,
3;4,4,4;,
3;5,5,5;,
3;6,6,6;,
3;7,7,7;,
3;8,8,8;,
3;9,9,9;,
3;10,10,10;,
3;11,11,11;,
3;12,12,12;,
3;13,13,13;,
3;14,14,14;,
3;15,15,15;,
3;16,16,16;,
3;17,17,17;,
3;18,18,18;,
3;19,19,19;,
3;20,20,20;,
3;21,21,21;,
3;22,22,22;,
3;23,23,23;,
3;24,24,24;,
3;25,25,25;,
3;26,26,26;,
3;27,27,27;,
3;28,28,28;,
3;29,29,29;,
3;30,30,30;,
3;31,31,31;,
32;32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32;;
} // End of Child_002 normals
} // End of Child_002 mesh
} // End of Child_002
Frame Child_003 {
FrameTransformMatrix {
0.457503, 0.000000, 0.000000, 0.000000,
0.000000, 0.457503, 0.000000, 0.000000,
0.000000, 0.000000, 0.457503, 0.000000,
0.978266,-0.471539,-2.179500, 1.000000;;
}
Mesh { // Child_003 mesh
33;
0.000000; 1.000000;-1.000000;,
0.195090; 0.980785;-1.000000;,
0.382683; 0.923880;-1.000000;,
0.555570; 0.831470;-1.000000;,
0.707107; 0.707107;-1.000000;,
0.831470; 0.555570;-1.000000;,
0.923880; 0.382683;-1.000000;,
0.980785; 0.195090;-1.000000;,
1.000000; 0.000000;-1.000000;,
0.000000; 0.000000; 1.000000;,
0.980785;-0.195090;-1.000000;,
0.923880;-0.382683;-1.000000;,
0.831470;-0.555570;-1.000000;,
0.707107;-0.707107;-1.000000;,
0.555570;-0.831470;-1.000000;,
0.382683;-0.923880;-1.000000;,
0.195090;-0.980785;-1.000000;,
-0.000000;-1.000000;-1.000000;,
-0.195091;-0.980785;-1.000000;,
-0.382684;-0.923879;-1.000000;,
-0.555571;-0.831469;-1.000000;,
-0.707107;-0.707106;-1.000000;,
-0.831470;-0.555570;-1.000000;,
-0.923880;-0.382683;-1.000000;,
-0.980785;-0.195089;-1.000000;,
-1.000000; 0.000001;-1.000000;,
-0.980785; 0.195091;-1.000000;,
-0.923879; 0.382684;-1.000000;,
-0.831469; 0.555571;-1.000000;,
-0.707106; 0.707108;-1.000000;,
-0.555569; 0.831470;-1.000000;,
-0.382682; 0.923880;-1.000000;,
-0.195089; 0.980786;-1.000000;;
33;
3;32,9,31;,
3;1,9,0;,
3;0,9,32;,
3;2,9,1;,
3;31,9,30;,
3;30,9,29;,
3;29,9,28;,
3;28,9,27;,
3;27,9,26;,
3;26,9,25;,
3;25,9,24;,
3;24,9,23;,
3;23,9,22;,
3;22,9,21;,
3;21,9,20;,
3;20,9,19;,
3;19,9,18;,
3;18,9,17;,
3;17,9,16;,
3;16,9,15;,
3;15,9,14;,
3;14,9,13;,
3;13,9,12;,
3;12,9,11;,
3;11,9,10;,
3;10,9,8;,
3;8,9,7;,
3;7,9,6;,
3;6,9,5;,
3;5,9,4;,
3;4,9,3;,
3;3,9,2;,
32;32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,8,7,6,5,4,3,2,1,0;;
MeshNormals { // Child_003 normals
33;
-0.259887; 0.856737; 0.445488;,
0.087754; 0.890977; 0.445488;,
-0.087753; 0.890977; 0.445488;,
0.259888; 0.856737; 0.445488;,
-0.422035; 0.789574; 0.445488;,
-0.567964; 0.692067; 0.445488;,
-0.692066; 0.567966; 0.445488;,
-0.789573; 0.422037; 0.445488;,
-0.856737; 0.259889; 0.445488;,
-0.890977; 0.087754; 0.445488;,
-0.890977;-0.087753; 0.445488;,
-0.856737;-0.259887; 0.445488;,
-0.789574;-0.422035; 0.445488;,
-0.692067;-0.567964; 0.445488;,
-0.567965;-0.692066; 0.445488;,
-0.422036;-0.789573; 0.445488;,
-0.259889;-0.856737; 0.445488;,
-0.087754;-0.890977; 0.445488;,
0.087753;-0.890977; 0.445488;,
0.259888;-0.856737; 0.445488;,
0.422036;-0.789573; 0.445488;,
0.567965;-0.692067; 0.445488;,
0.692067;-0.567965; 0.445488;,
0.789573;-0.422035; 0.445488;,
0.856737;-0.259888; 0.445488;,
0.890977;-0.087753; 0.445488;,
0.890977; 0.087754; 0.445488;,
0.856737; 0.259888; 0.445488;,
0.789573; 0.422036; 0.445488;,
0.692067; 0.567965; 0.445488;,
0.567965; 0.692067; 0.445488;,
0.422036; 0.789573; 0.445488;,
0.000000; 0.000000;-1.000000;;
33;
3;0,0,0;,
3;1,1,1;,
3;2,2,2;,
3;3,3,3;,
3;4,4,4;,
3;5,5,5;,
3;6,6,6;,
3;7,7,7;,
3;8,8,8;,
3;9,9,9;,
3;10,10,10;,
3;11,11,11;,
3;12,12,12;,
3;13,13,13;,
3;14,14,14;,
3;15,15,15;,
3;16,16,16;,
3;17,17,17;,
3;18,18,18;,
3;19,19,19;,
3;20,20,20;,
3;21,21,21;,
3;22,22,22;,
3;23,23,23;,
3;24,24,24;,
3;25,25,25;,
3;26,26,26;,
3;27,27,27;,
3;28,28,28;,
3;29,29,29;,
3;30,30,30;,
3;31,31,31;,
32;32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32;;
} // End of Child_003 normals
} // End of Child_003 mesh
} // End of Child_003
} // End of Parent
} // End of Root
Code:
Load Object "ParentChildren.x", 1
lc = Get Limb Count(1)
Do
Set Cursor 0, 0
For l = 0 to lc
Print "Limb "; l; "'s ("; Limb Name$(1,l); ") parent is "; Get Limb Parent(1,l)
Next l
Loop
Attached is a package containing the blend file and X file.