|
MDL7 Exporter auf Blender 2.78 Updaten
#467254
07/23/17 09:39
07/23/17 09:39
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
Hallo =) ich versuche mich gerade darin in blender 2.78 ein Python script zu schreiben mit dem ich direkt in MDL7 exportieren kann. es gibt ja schon einen alten exporter für blender 2.45 http://opserver.de/swik10/index.php?title=Blender#blender_mdl7_exporterdoch die module in blender wurden seither enorm verändert. daher wollte ich mein wissen etwas vertiefen zum MDL7 format. ein modul ist das "struct" da wird etwas gemacht was ich nicht verstehe:
file.write(struct.pack("<4sllllllHHHHHHHHHH",
"MDL7", 0, len(self.bones), len(self.groups), self.getsize(), # 0 = subversion
0, 0, # entlumpsize, medlumpsize
36, 28, 16, 68, 8, 16, 26, 26, 68, 24))
was ist dieses "4sllllllHHHHHHHHHH" ?
|
|
|
Re: MDL7 Exporter auf Blender 2.78 Updaten
[Re: Ch40zzC0d3r]
#467258
07/23/17 13:49
07/23/17 13:49
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
|
|
|
Re: MDL7 Exporter auf Blender 2.78 Updaten
[Re: tagimbul]
#467268
07/24/17 00:52
07/24/17 00:52
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
ich muss sagen ich komme ziemlich gut voran also naja sehr sehr langsam aber es dafür immer wie schneller ^^ ich hab mich richtig schnell in python reingefuxt =)
|
|
|
Re: MDL7 Exporter auf Blender 2.78 Updaten
[Re: tagimbul]
#467288
07/24/17 21:26
07/24/17 21:26
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
ach lol in image.pixels sind ALLE pixel der textur aneinander gereiht also hab ich so zugriff ^^ muss ich da mein eigenes lese teil schreiben um an ein rgba an einer x y stelle zu kommen oder gibts da was?
|
|
|
Re: MDL7 Exporter auf Blender 2.78 Updaten
[Re: tagimbul]
#467329
07/26/17 15:12
07/26/17 15:12
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
EUREKA !!! ich habs geschaft :DDD direkter model export von blender in MDL7v!!
Last edited by tagimbul; 07/26/17 15:15.
|
|
|
Re: MDL7 Exporter auf Blender 2.78 Updaten
[Re: tagimbul]
#467330
07/26/17 15:31
07/26/17 15:31
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
ich muss jetzt nurnoch die animationen und bones exportieren dann noch das panel fürs exportieren. sollte ab jetzt kein problem mehr sein =)
ich bin noch voll unter schock weil funktioniert :DDD
Last edited by tagimbul; 07/26/17 15:32.
|
|
|
Re: MDL7 Exporter auf Blender 2.78 Updaten
[Re: tagimbul]
#467336
07/26/17 20:29
07/26/17 20:29
|
Joined: Jun 2009
Posts: 2,210 Bavaria, Germany
Kartoffel
Expert
|
Expert
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
|
hey, echt cool! seh' ich das richtig, man kann auch mit externen texturen exportieren?
POTATO-MAN saves the day! - Random
|
|
|
Re: MDL7 Exporter auf Blender 2.78 Updaten
[Re: Kartoffel]
#467338
07/26/17 23:55
07/26/17 23:55
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
jap die texturen klappen schon. also mesh + mehrere texturen die den faces zugewiesen sind funzen jetzt schon nun kommen die schwirigeren sachen bastle gerade an den vertex weights, bones und animationen rum ... dachte das schlimmste habe ich hinter mir insgesamt muss ich etwa 90% des codes umschreiben wird wohl noch ein weile dauern. als ich ein mesh exportieren konnte bin ich ausgeflipt vor freude am ende mache ich dann noch ein schönes controll panel so das mans dann im blender/file/export aufgelistet bekommt mit scalierung parametern und ein paar setings interne texturen muss ich noch testen. aber externe da geb ich den pfad von "C: " aus also die textur wirds immer finden auch noch nennenswert. im material nimmt es sich die erste textur. solten aber im textur slot noch mehrere texturen sein nimmt es diese auch mit. auf diese weise kann man mehrere texturen exportieren z.B material1: texture1.png normalmap1.png material2: texture2.png normalmap2.png usw ich frage mich wieso bisher noch keiner den aktualisiert hat. der MED ist schon etwas veraltet. und Blender wäre ein super ersatz. vor allem seit ich mich nun mit blender und python auseinander gesetzt habe habe ich erkannt wie mächtig blender ist. da kann man sachen machen das glaubst du nicht ich habe mal ein tutorial gemacht wo man in blender ein terrain erstellt und nach 3dgs exportiert. http://flashbreaker.com/media/tutorials/blender-terrain.htmlwäre auch cool sowas direkt in .hmp zu exportieren das terrain mit sculpting mode und direkt mit einem multi texturing shader in blender selber die RGB map zu zeichnen ist einfach göttlich ^^
Last edited by tagimbul; 07/27/17 00:32.
|
|
|
MDL7 Weights? Hilfe!
[Re: tagimbul]
#467340
07/27/17 01:15
07/27/17 01:15
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
oh jetzt wird wirklich kompliziert... ich bräuchte da echt hilfe von einem der sich besser auskennt. in der script beschreibung: the mdl7 format currently doesn't support weighted skinning so every vertex should only have 1 bone influence. if there is more than one influence the exporter will take the strongest one or a random one if all influences have the same weight.
im code wird nicht das weight eines vertexes geschriben sondern nur der boneindex. also die nummer des bones die das grösste gewicht auf Vertex hat
group.addvertex(v.co[0], v.co[1], v.co[2],
-v.no[0], -v.no[1], -v.no[2], # negative -> because of reverse winding
boneindex)
in c_groups habe ich für addvertex
def addvertex(self, x, y, z, nx, ny, nz, boneindex=65535):
"""add a vertex to the group"""
self.vertices.append(c_mainvertex(x, y, z, nx, ny, nz, boneindex))
und dann wird in das struct.pack geschriben.
file.write(struct.pack("<BBBBl16slllll",
1, 0, 0, 0, # type 1 = triangle mesh
self.getsize(),
self.name,
len(self.skins),
len(self.uvs),
len(self.triangles),
len(self.vertices),
len(self.frames)))
.....
if extension == "mdl":
file.write(struct.pack("<fffHfff",
self.x, self.y, self.z,
self.boneindex,
self.nx, self.ny, self.nz))
in A8 werden ja bis zu 4 bones pro Weights unterstützt. wie kann ich da die vertex weight mit hinein schreiben? kann mir da einer helfen? mfg tom
Last edited by tagimbul; 07/27/17 10:53.
|
|
|
Re: MDL7 Weights? Hilfe!
[Re: tagimbul]
#467344
07/27/17 11:03
07/27/17 11:03
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
ich schreibe glaubs erstmal den exporter mit nur dem schwerten weight pro bone für ein vertex mal eine "beta version" ich hab im MDL SDK mal gestöbert. ich denke es wird einfacher wenn ich erstmal ein funktionierender exporter habe. einfach der formatter wie bei einem printf, sieht man recht gut an dem 4s => "MDL7". s steht dabei für string, l für long und H wohl für Hex
um die weights zu schreiben werde ich dann wohl mich mit formatter und hex auseinander setzen müssen.
|
|
|
Re: MDL7 Weights? Hilfe!
[Re: tagimbul]
#467352
07/27/17 19:44
07/27/17 19:44
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
niiice hab den vertex animations export hingekrigt und hab den code noch geupgradet in der alten version musste man die frames die man exportieren will so als string übergeben: "0 1 2 3 4 5 6 7" ich mach jetzt einfach from_frame = 0 to frame = 7 ^^ ich will noch einbauen das er automtishc erkennt in welchem frame einer action sich das erste keyframe befindet und das letzte. diese 2 werte sind dann die defaul initalisierungen für die exportierung einer animation aber ich mache dann im GUI das ich noch designen werde eine liste so dass man auch noch nach der initalisierung den from und to frame wert verändern kann =) nun geht es an die bones animationen ^.^
Last edited by tagimbul; 07/27/17 19:45.
|
|
|
Re: MDL7 Weights? Hilfe!
[Re: tagimbul]
#467375
07/29/17 12:31
07/29/17 12:31
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
ich bin richtig nahe dran ! ich habe noch probleme mit bones Matrizen und sie in den frames richtig abzuspeichern. aber es sieht schonmal gut aus. mit diesen matrizen komm ich noch nicht so ganz klar
|
|
|
Re: MDL7 Weights? Hilfe!
[Re: tagimbul]
#467383
07/30/17 17:15
07/30/17 17:15
|
Joined: Jun 2009
Posts: 2,210 Bavaria, Germany
Kartoffel
Expert
|
Expert
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
|
was du versuchen kannst: ein modell mit bone-animations von blender als fbx exportieren, in med importieren und den teil der datei ansehen, der für die matritzen zuständig ist.
POTATO-MAN saves the day! - Random
|
|
|
Re: MDL7 Weights? Hilfe!
[Re: Kartoffel]
#467402
07/31/17 22:01
07/31/17 22:01
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
.
Last edited by tagimbul; 07/31/17 22:37.
|
|
|
Re: MDL7 Weights? Hilfe!
[Re: tagimbul]
#467418
08/01/17 18:02
08/01/17 18:02
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
AHHHH ich habs geschaft !!!! von der alten blender version auf die neue wurden bei den matrizen von einer row zu einer collum variante gewechselt. nur hat das keine sau irgendwo im netz erwähnt xD boahhh entlich xD ich muss noch weitere test's machen aber es sieht alles gut aus bones frame matrizen werdne nun richtig ausgegeben wuuhuuu !! :DDD
|
|
|
Re: MDL7 export !
[Re: tagimbul]
#467492
08/06/17 17:30
08/06/17 17:30
|
Joined: Jun 2009
Posts: 2,210 Bavaria, Germany
Kartoffel
Expert
|
Expert
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
|
schönes ding wie sieht es eigentlich mit groups aus, werden die auch mit exportiert?
POTATO-MAN saves the day! - Random
|
|
|
Re: MDL7 export !
[Re: tagimbul]
#467500
08/07/17 10:10
08/07/17 10:10
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
also mehrere meshes als eigene objekte/gruppen? noch nicht muss ich noch machen ich muss noch ein memory leck beheben ^^" ich zähle mal auf was noch nicht geht da zur zeit mehr geht als nicht geht: -interne texturen exportieren -scale, alles wird in 1 exportiert -mehrere objekte: "kann gehen noch nicht getestet" ^^ -vertex weights bei bones animation. zur zeit wird ein vertex mit dem grössten weight exportiert. da muss ich noch das MDL formal besser unter die luppe nhemen damit ich das in binary form abspeichern kann. -beim exportieren erzeuge ich "meshes" im zwichen speicher, diese bleiben nach beenden des scripts im zwischen speicher und ich kann sie nicht löschen was bei einer vertex animation bei grossen modelen mit vielen animationen dazu führt das der speicher mal schnell vollgeballert wird :"D aber bisher sieht alles wirklich gut aus! der exporter funzt. man kann das script runnen und hat auch ein export panel wo man einen speicher ort auswählen kann und den namen bestimmen. genau so wie ein normaler blender exporter halt geht =) ich stopf noch das leck behebe den scale und dann hau ich ne beta raus
Last edited by tagimbul; 08/07/17 10:11.
|
|
|
Re: MDL7 export !
[Re: tagimbul]
#467510
08/07/17 23:32
08/07/17 23:32
|
Joined: Jun 2010
Posts: 212
tagimbul
OP
Member
|
OP
Member
Joined: Jun 2010
Posts: 212
|
update ^^ die leaks kann ich noch nicht stopfen ich schreib erstmal den exporter fertig. nun kann man auch den scale nutzen. und ich habe noch einen bug beim armatur export behoben. nun ist alles so wie es sein sollte =) jetzt nurnoch interne texturen, mehrere objekte und dann noch objekt und world space export am ende dann noch die vertex weights picture1 zoom picture2 zoom
Last edited by tagimbul; 08/08/17 00:15.
|
|
|
|