.[ ČeskéHry.cz ].

Laboratoř ČeskýchHer.cz - PasteBin

Vložit nový kód

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

  1. 2026110811h44min56sec
    4 min
  2. 2026110811h39min55sec
    10 min
  3. 2026110811h34min50sec
    15 min
  4. 2026110811h29min48sec
    20 min
  5. 2026110811h24min47sec
    25 min
  6. 2026110811h19min45sec
    30 min
  7. 2026110811h14min45sec
    35 min
  8. 2026110811h09min29sec
    40 min
  9. ČPx MEGA LINKS 2026 VIP - ČPx COLLECTIONS
    44 min
  10. ČPx MEGA LINKS 2026 VIP - ČPx COLLECTIONS
    44 min
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.