[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [3268] trunk/py/scripts/addons: update a bit of animation import a bit.
John Phan
darkneter at gmail.com
Sun Apr 15 17:55:18 CEST 2012
Revision: 3268
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=3268
Author: darknet
Date: 2012-04-15 15:55:18 +0000 (Sun, 15 Apr 2012)
Log Message:
-----------
update a bit of animation import a bit.
Modified Paths:
--------------
trunk/py/scripts/addons/io_export_unreal_psk_psa.py
trunk/py/scripts/addons/io_import_scene_unreal_psk.py
Modified: trunk/py/scripts/addons/io_export_unreal_psk_psa.py
===================================================================
--- trunk/py/scripts/addons/io_export_unreal_psk_psa.py 2012-04-14 22:09:40 UTC (rev 3267)
+++ trunk/py/scripts/addons/io_export_unreal_psk_psa.py 2012-04-15 15:55:18 UTC (rev 3268)
@@ -2052,7 +2052,7 @@
for i in bpy.context.scene.objects: i.select = False #deselect all objects
obj.select = True #set current object select
bpy.context.scene.objects.active = obj #set active object
- for face in obj.data.faces:
+ for face in obj.data.tessfaces:
if face.use_smooth == True:
face.select = True
smoothcount += 1
Modified: trunk/py/scripts/addons/io_import_scene_unreal_psk.py
===================================================================
--- trunk/py/scripts/addons/io_import_scene_unreal_psk.py 2012-04-14 22:09:40 UTC (rev 3267)
+++ trunk/py/scripts/addons/io_import_scene_unreal_psk.py 2012-04-15 15:55:18 UTC (rev 3268)
@@ -20,7 +20,7 @@
"name": "Import Unreal Skeleton Mesh (.psk)",
"author": "Darknet",
"version": (2, 1),
- "blender": (2, 6, 2),
+ "blender": (2, 6, 3),
"location": "File > Import > Skeleton Mesh (.psk)",
"description": "Import Skeleleton Mesh",
"warning": "",
@@ -74,13 +74,6 @@
flipyz = False
flipuv = True
-"""
-def unpack_list(list_of_tuples):
- l = []
- for t in list_of_tuples:
- l.extend(t)
- return l
-"""
#pack read words
def word(long):
s=''
@@ -154,289 +147,7 @@
ob.vertex_groups.new(namebone)
me_ob.update()
bpy.context.scene.objects.link(ob)
-def drawmesh4():
- global DEBUGLOG, plik,vertexes,uvcoord,faceslist,num_faces,facemat,facesmooth,m
- global vertexes_ids,bonesdata,meshesdata,groups,num_materials,skala,flipyz,flipuv,mat_faceslist
- global vertices,faces
- print("CREATING MESH")
- me_ob = bpy.data.meshes.new('testmesh')
- print("CREATING BMESH")
- bm = bmesh.new() # create an empty BMesh
- #print(dir(bm))
- bm.from_mesh(me_ob) # fill it in from a Mesh
-
- #print("CREATING:")
-
- #vertices
- #print("-VERTICES")
- #for v_co in vertices:
- #bm.verts.new(v_co)
-
- #faces
- #print("-FACES")
- for f_idx in faces:
- #face idx
- bm.faces.new([bm.verts[i] for i in f_idx])
-
- print("-FACE SMOOTHS")
- for face in bm.faces:
- face.smooth = facesmooth[face.index]
-
- bm.to_mesh(me_ob) #write mesh
- ob = bpy.data.objects.new("TestObject",me_ob)
- me_ob.update() #update object
- bpy.context.scene.objects.link(ob) #link to scene
-
- #print(dir(bm))
-
- #create vertex group
- for bone_id in range(len(bonesdata)):
- bonedata = bonesdata[str(bone_id)]
- namebone = bonedata[0]#.strip()[-25:]
- #print("NAME:",namebone)
- ob.vertex_groups.new(namebone)
-
- #print("CREATING > Assign Weights")
-
-
- materialname = "pskmat"
- psktexname = "psktex"
-
- me_ob.uv_textures.new()
- for matcount in range(1):
- matdata = bpy.data.materials.new(materialname + str(1))
- me_ob.materials.append(matdata)
-
-
- print(dir(me_ob))
- #me_ob.tessface_uv_textures.new(name=psktexname)
- #me_ob.uv_textures.new(name=psktexname)
- #me_ob.uv_textures[0].active =True
-
- #print((me_ob.uv_textures[0].name))
- #print(dir(me_ob.uv_textures[0]))
- #for uv in me_ob.uv_textures:
- #print(dir(uv.data[0]))
-
- """
- print("NEW TEXTURE")
- me_ob.uv_textures.new()
-
- print("CREATING UV")
- for uv in me_ob.uv_textures:
- #print(len(uv.data))
- for face in bm.faces:
- print(dir(face.verts[0]))
- #print(dir(uv.data[face.index].image))
- #print(dir(uv.data[face.index]))
-
- print("CREATING > Vertex Group")
- """
- bpy.context.scene.update()
-def drawmesh3():
- global DEBUGLOG, plik,vertexes,uvcoord,faceslist,num_faces,facemat,facesmooth,m
- global vertexes_ids,bonesdata,meshesdata,groups,num_materials,skala,flipyz,flipuv,mat_faceslist
- global vertices,faces
- print("CREATING MESH")
- me_ob = bpy.data.meshes.new('testmesh')
- print("CREATING BMESH")
- bm = bmesh.new() # create an empty BMesh
- #print(dir(bm))
- bm.from_mesh(me_ob) # fill it in from a Mesh
-
- print("CREATING:")
-
- #vertices
- print("-VERTICES")
- for v_co in vertices:
- bm.verts.new(v_co)
-
- #faces
- print("-FACES")
- for f_idx in faces:
- #face idx
- bm.faces.new([bm.verts[i] for i in f_idx])
-
- print("-FACE SMOOTHS")
- for face in bm.faces:
- face.smooth = facesmooth[face.index]
-
- bm.to_mesh(me_ob) #write mesh
- ob = bpy.data.objects.new("TestObject",me_ob)
- me_ob.update() #update object
- bpy.context.scene.objects.link(ob) #link to scene
-
- #print(dir(bm))
-
- #create vertex group
- for bone_id in range(len(bonesdata)):
- bonedata = bonesdata[str(bone_id)]
- namebone = bonedata[0]#.strip()[-25:]
- #print("NAME:",namebone)
- ob.vertex_groups.new(namebone)
-
- #print("CREATING > Assign Weights")
-
-
- materialname = "pskmat"
- psktexname = "psktex"
-
- me_ob.uv_textures.new()
- for matcount in range(1):
- matdata = bpy.data.materials.new(materialname + str(1))
- me_ob.materials.append(matdata)
-
-
- print(dir(me_ob))
- me_ob.tessface_uv_textures.new(name=psktexname)
- #me_ob.uv_textures.new(name=psktexname)
- #me_ob.uv_textures[0].active =True
-
- #print((me_ob.uv_textures[0].name))
- #print(dir(me_ob.uv_textures[0]))
- #for uv in me_ob.uv_textures:
- #print(dir(uv.data[0]))
-
- """
- print("NEW TEXTURE")
- me_ob.uv_textures.new()
-
- print("CREATING UV")
- for uv in me_ob.uv_textures:
- #print(len(uv.data))
- for face in bm.faces:
- print(dir(face.verts[0]))
- #print(dir(uv.data[face.index].image))
- #print(dir(uv.data[face.index]))
-
- print("CREATING > Vertex Group")
- """
- bpy.context.scene.update()
-def drawmesh1():
- global DEBUGLOG, plik,vertexes,uvcoord,faceslist,num_faces,facemat,facesmooth,m
- global vertexes_ids,bonesdata,meshesdata,groups,num_materials,skala,flipyz,flipuv,mat_faceslist
- global vertices,faces
- print(faces[0])
- me_ob = bpy.data.meshes.new('testmesh')
- #obmesh = bpy.data.objects.new('testdata',me_ob)
- #uvtex = me_ob.uv_textures.new(name="pskuvtexture")
- #uvtex = me_ob.tessface_uv_textures.new(name="pskuvtexture")
-
- #material = bpy.data.materials.new('pskmat')
- #me_ob.materials.append(material)
- #uvtex = me_ob.uv_textures.new('pskuvtexture')
-
- #create mesh
- #me_ob.from_pydata(vertexes,[],faceslist)#create the faces and vertices
-
- me_ob.vertices.add(len(vertices))
- me_ob.tessfaces.add(len(faces))
- me_ob.vertices.foreach_set("co", unpack_list(vertices))
- me_ob.tessfaces.foreach_set("vertices_raw",unpack_list( faces))
-
-
-
- #bm = bmesh.new() # create an empty BMesh
- #print(dir(bm))
- #bm.from_mesh(me_ob) # fill it in from a Mesh
-
-
- #for v_co in vertices:
- #bm.verts.new(v_co)
- #for f_idx in faces:
- #bm.faces.new([bm.verts[i] for i in f_idx])
-
-
- #bm.to_mesh(me_ob)
- ob = bpy.data.objects.new("TestObject",me_ob)
- me_ob.update()
- bpy.context.scene.objects.link(ob)
-
- #set face smooth list boolean
- #for face in bm.faces:
- #face.smooth = facesmooth[face.index]
- #bm.uv_textures.new()
- #print(dir(bm))
- #bm.verts.foreach_set("co", vertices)
- #bm.faces.add(len(faces))
- #bm.faces.foreach_set("vertices_raw", faces)
-
- #print(dir(me_ob))
- #print(dir(bm))
-
- #print(dir(uvtex.data[0].image))
- #for countm in range(len(me_ob.uv_textures)):
- #me_ob.update()
- #uvtex = me_ob.uv_textures[countm] #add one uv texture
- #me_ob.update()
- #for i, face in enumerate(bm.faces):
- #print(dir(face))
-
-
-
-
- #texture
- #texture = bpy.data.textures.new(name="texture",type='IMAGE')
- #material
- #matdata = bpy.data.materials.new(name="pskmat")
- #mtex = matdata.texture_slots.add()
- #mtex.texture = texture
- #mtex.texture_coords = 'UV'
- #mtex.use_map_color_diffuse = True
- #mtex.use_map_alpha = True
- #uvtex = me_ob.uv_textures[0]
-
- #print(dir(uvtex.data[0]))
- #print(dir(uvtex.data[0].image))
- #print(dir(texture))
-
- #for i, face in enumerate(bm.faces):
- #print(face.material_index)
- #face.material_index = faceuv[i][1]
- #blender_tface = uvtex.data[i].image #face
- """
-
- #mesh vertex group #not done
- #create vertex group
- for bone_id in range(len(bonesdata)):
- bonedata = bonesdata[str(bone_id)]
- namebone = bonedata[0]#.strip()[-25:]
- obmesh.vertex_groups.new(namebone)
- #assgin group
- for m in range(len(groups)):
- data = groups[m]
- w = float(data[0])
- v_id = data[1]
- gr = data[2]
- gr = bonenames[gr]
-
- #for vgroup in obmesh.vertex_groups:
- #print(vgroup.name,":",vgroup.index)
-
- for vgp in RWghts:
- #bone index
- if vgp[1] == vgroup.index:
- #print(vgp)
- #[vertex id],weight
- vgroup.add([vgp[0]], vgp[2], 'ADD')
- """
-
-
- # Finish up, write the bmesh back to the mesh
- #bm.to_mesh(me_ob)
-
-
-
- #print((uvtex.name))
- #print((uvtex.data))
- #print(dir(uvtex))
- #print(dir(uvtex.data[0].image))
- #print(type(uvtex.data[0].image))
-
-
-
- #bpy.context.scene.objects.link(obmesh)
- bpy.context.scene.update()
+
#Create Armature
def check_armature():
global DEBUGLOG, plik,vertexes,uvcoord,faceslist,num_faces,facemat,facesmooth,m
@@ -802,6 +513,67 @@
print ("IMPORTER PSK Blender 2.6 completed")
#End of def pskimport#########################
+def psaimport(filename):
+ global plik,bonesdata,animdata,anim_offset,animation_names
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-extensions-cvs
mailing list