OSDN Git Service

implement converter
[meshio/pymeshio.git] / pymeshio / pmd / reader.py
index f8defda..b120052 100644 (file)
@@ -1,4 +1,7 @@
 #coding: utf-8\r
+"""\r
+pmd reader\r
+"""\r
 import io\r
 from .. import common\r
 from .. import pmd\r
@@ -127,7 +130,7 @@ def __read(reader, model):
             for _ in range(reader.read_uint(2))]\r
     model.morph_indices=[reader.read_uint(2)\r
             for _ in range(reader.read_uint(1))]\r
-    model.bone_group_list=[reader.read_text(50)\r
+    model.bone_group_list=[pmd.BoneGroup(reader.read_text(50))\r
             for _ in range(reader.read_uint(1))]\r
     model.bone_display_list=[(reader.read_uint(2), reader.read_uint(1))\r
             for _i in range(reader.read_uint(4))]\r
@@ -150,8 +153,9 @@ def __read(reader, model):
         if morph.name==b'base':\r
             continue\r
         morph.english_name=reader.read_text(20)\r
-    model.bone_group_english_list=[reader.read_text(50)\r
-            for _ in model.bone_group_list]\r
+    for g in model.bone_group_list:\r
+        g.english_name=reader.read_text(50)\r
+\r
 \r
     ############################################################\r
     # extend2: toon_textures\r
@@ -201,6 +205,7 @@ def read(ios):
 \r
         # build bone tree\r
         for i, child in enumerate(model.bones):\r
+            child.index=i\r
             if child.parent_index==0xFFFF:\r
                 # no parent\r
                 model.no_parent_bones.append(child)\r