<div dir="auto">ChatGPT says (I’ll have to check accuracy later):<div dir="auto"><br></div><div dir="auto"><div dir="auto">armature = None</div><div dir="auto">for obj in bpy.context.scene.objects:</div><div dir="auto">    if obj.type == 'ARMATURE':</div><div dir="auto">      armature = obj</div><div dir="auto">      break</div></div><div dir="auto"><div dir="auto"><br></div><div dir="auto">if armature:</div><div dir="auto">    for bone in armature.pose.bones:</div><div dir="auto">         # Access bone name, location, rotation, and scale</div><div dir="auto">         bone_name = <a href="http://bone.name" target="_blank">bone.name</a></div><div dir="auto">         bone_location = bone.location</div><div dir="auto">         bone_rotation = bone.rotation_euler</div><div dir="auto">         bone_scale = bone.scale</div><div dir="auto">         # Do something with this bone information</div><div dir="auto">         print(f"Bone: {bone_name}")</div><div dir="auto">         print(f"Location: {bone_location}")</div><div dir="auto">         print(f"Rotation: {bone_rotation}")</div><div dir="auto">         print(f"Scale: {bone_scale}")<br></div><div dir="auto"><br></div><div dir="auto"><div dir="auto">if armature:</div><div dir="auto">    for obj in bpy.context.selected_objects:</div><div dir="auto">           if obj.type == 'MESH':</div><div dir="auto">                 mesh = obj.data</div><div dir="auto">                 for vertex in mesh.vertices:</div><div dir="auto">                       # Access vertex coordinates  </div><div dir="auto">                       vertex_coords = <a href="http://vertex.co" target="_blank">vertex.co</a></div><div dir="auto">                       # Do something with this vertex information</div><div dir="auto">                        print(f"Vertex Coordinates {vertex_coords}")</div><div dir="auto"><br></div><div dir="auto"># Additionally,  getting skin coord information</div><div dir="auto"> </div><div dir="auto"># Replace 'YourMeshObjectName' with the actual name of your mesh object</div><div dir="auto"><br></div><div dir="auto">mesh_obj = bpy.data.objects['YourMeshObjectName']</div><br></div><div dir="auto"><div>vertex_groups = mesh_obj.vertex_groups</div><div dir="auto">for group in vertex_groups: l</div><div dir="auto">    group_name = <a href="http://group.name" target="_blank">group.name</a></div><div dir="auto">    for index, weight in group.weight_paint:</div><div dir="auto">        # 'index' is the vertex index, and 'weight' is the weight value</div><div dir="auto">        print(f"Group: {group_name}, Vertex Index: {index}, Weight: {weight}")</div><div dir="auto"><br></div><div dir="auto">Seems straightforward, if custom per model.  group_name is probably analogous to joint name.  Combining scripts would probably be best.</div><div dir="auto"><br></div><div dir="auto">Animations are another step.  I’m not sure how accessible this is because it refers to selected_objects for one.  Also, one will have to convert bones to Joints (hmm, look at an import script?)</div><div dir="auto"><br></div><div dir="auto">Sorry, I couldn’t read the Blender documentation or the ChatGPT English.  Just the facts, ma’am.</div><div dir="auto"><br></div><div dir="auto">John</div><br></div><br></div><div dir="auto"><br></div>
</div>