.[ ČeskéHry.cz ].

Laboratoř ČeskýchHer.cz - PasteBin

Vložit nový kód

ČeskéHry.cz - KOMUNITA HERNÍCH VÝVOJÁŘŮ

  1. Mega l3aks video links
    2 hod
  2. Mega l3aks video links
    2 hod
  3. Mega l3aks video links
    2 hod
  4. Mega l3aks video links
    2 hod
  5. Mega l3aks video links
    2 hod
  6. Mega l3aks video links
    2 hod
  7. Mega l3aks video links
    2 hod
  8. Mega l3aks video links
    2 hod
  9. Mega l3aks video links
    2 hod
  10. Mega l3aks video links
    2 hod
Link: http://nopaste.ceske-hry.cz/subdom/nopaste222883
Zaslal: if.then
Popis: Můj export skript. Bohužel v něm špatně fungují kosti :-(
Jazyk: Python
Vloženo: 3.2.2010, 17:43
Stáhnout jako soubor
  1. #!BPY
  2.  
  3. """
  4. Name: 'Ifthen triple D (.itd)'
  5. Blender: 244
  6. Group: 'Export'
  7. Tooltip: 'File format like .obj'
  8. """
  9. import Blender
  10. import bpy
  11.  
  12. def write_bone(bone,out):
  13. out.write("b n "+bone.name+"\n")
  14. out.write("b h")
  15. for i in [0,1,2]:
  16. head = (bone.head["ARMATURESPACE"][i])
  17. if bone.hasParent():
  18. parentTail = (bone.parent.tail["ARMATURESPACE"][i])
  19. out.write(" %f"%((parentTail)-(head)))
  20. else:
  21. out.write(" %f"%(head))
  22. out.write("\n")
  23. out.write("b t")
  24. for i in [0,1,2]:
  25. head = (bone.head["ARMATURESPACE"][i])
  26. tail = (bone.tail["ARMATURESPACE"][i])
  27. out.write(" %f"%(-((head)-(tail))))
  28. out.write("\n")
  29. out.write("b l %f\n" % (bone.length))
  30. if bone.hasParent():
  31. out.write("b p "+bone.parent.name+"\n")
  32. else:
  33. out.write("b r x\n")
  34. for bonechild in bone.children:
  35. write_bone(bonechild,out)
  36.  
  37.  
  38. def write_itd(filename):
  39. out = file(filename, "w")
  40. sce = bpy.data.scenes.active
  41. materials = bpy.data.materials
  42. for mat in materials:
  43. out.write("m n "+(mat.name)+"\n")
  44. for mattex in mat.getTextures():
  45. if mattex!=None:
  46. if(mattex.tex.getImage()!=None):
  47. out.write("m t "+mattex.tex.getName()+"\n")
  48. out.write("m f "+mattex.tex.getImage().getName()+"\n")
  49. for ob in sce.objects:
  50. out.write("o n "+(ob.name)+"\n")
  51. out.write("o t "+(ob.type)+"\n")
  52. out.write("o p")
  53. for i in [0,1,2]:
  54. out.write( " %f" % (ob.loc[i]))
  55. out.write("\n")
  56. out.write("o s")
  57. for i in [0,1,2]:
  58. out.write( " %f" % (ob.size[i]))
  59. out.write("\n")
  60. out.write("o r")
  61. for i in [0,1,2]:
  62. out.write( " %f" % (ob.rot[i]*180/3.14159265))
  63. out.write("\n")
  64. if ob.type=="Mesh":
  65. mesh = ob.getData(mesh=1)
  66. for meshMat in mesh.materials:
  67. if meshMat!=None:
  68. out.write("o m "+meshMat.name+"\n")
  69. break;
  70. for vert in mesh.verts:
  71. out.write( "v %f %f %f\n" % (vert.co.x, vert.co.y, vert.co.z) )
  72. for bonedata in mesh.getVertexInfluences(vert.index):
  73. out.write("i "+bonedata[0]+(" %f\n" % (bonedata[1])))
  74. for face in mesh.faces:
  75. out.write("f")
  76. for vertnum in range(3):
  77. out.write(" %i" % (face.verts[vertnum].index + 1) )
  78. out.write("\n")
  79. if mesh.faceUV:
  80. out.write("c")
  81. for vertnum in range (3):
  82. out.write(" %f %f" % (face.uv[vertnum][0],face.uv[vertnum][1]))
  83. out.write("\n");
  84. if ob.type=="Armature":
  85. arm_data = ob.getData()
  86. bones = arm_data.bones.values()
  87. for bone in bones:
  88. if not bone.hasParent():
  89. write_bone(bone,out);
  90. out.close()
  91.  
  92. Blender.Window.FileSelector(write_itd, "Export",".blender\something.itd")
  93.