Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Do Mär 28, 2024 21:53

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 8 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Blender-Export
BeitragVerfasst: Di Sep 10, 2013 23:12 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Okt 03, 2007 14:22
Beiträge: 388
Hi,

die Codes im Artikel zum Blenderexport funktionieren nicht mehr, da bei irgendeinem Update dummerweise das Modul Blender gestrichen wurde (stand in irgendeinem Forum) - zumindest in dem Kontext Export ist das Modul jedenfalls nicht mehr benutzbar. Dummerweise drücken sie sich nicht klar aus, wie man die entsprechenden Codeteile nun anpassen muss - ich habe ewig gesucht und nirgends etwas gefunden. (Ich hoffe fast, ich habe doch nur was übersehen, ist zwar immer peinlich, aber wenn man jetzt hier Befehle raten muss, dann gute Nacht....)
Habt Ihr irgendeine Idee, wo man die nötigen Infos herkriegen könnte, oder was man mit den folgenden Zeilen nun anstellt ?
Code:
  1. obj = Blender.Object.GetSelected()[0]
  2. Blender.NMesh  # Beispiel aus Wiki-Artikel:  flist += [Blender.NMesh.Face([..., ..., ...])]    oder auch    vtan += [Blender.NMesh.Vert().co]
  3. Blender.Mathutils  # Ich nehme mal an, das müsste zu lösen sein, da es nur um simplen Mathe-Kram geht, ich schreibe es nur der Vollständigkeit halber auf. 

file gibt es nicht mehr und ich habe das mal auf gut Glück durch open ersetzt. Python ist bei mir lange her und ich habe den Eindruck dass sich Python auch hin und wieder mal ein wenig ändert.

Das ist schon eine recht wichtige Sache, ich finde man kann mit eigenen Export-Plugins - zumindest in meinem kleinen Ausmaß - auf diese Weise wesentlich angenehmer arbeiten, wäre für mich ein recht großer Verlust.

Ahso: Denke das Thema gehört vielleicht doch eher ins Forum Allgemein, da hier ja sogar programmiert wird. Hatte das jetzt wohl eher falsch in Off-Topic gepostet, weil ich Blender-Fragen immer unterbewusst mit Bedienungsfragen verbinde, wobei es hier ja nicht wirklich um so etwas geht. Also sry und falls nötig bitte verschieben.

Gruß,
Nils

_________________
Meine Musik: spiker-music.net


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Blender-Export
BeitragVerfasst: Mi Sep 11, 2013 08:57 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 18, 2004 16:45
Beiträge: 2621
Wohnort: Berlin
Programmiersprache: Go, C/C++
Folgende URL's sollten Hilfreich sein, da dort auch erklärt wird, wieso es so große Änderungen gab.
http://www.blender.org/documentation/blender_python_api_2_68_2/
http://wiki.blender.org/index.php/Extensions:Py/Scripts

Als alternative zu einem eigenem Exporter, würde ich FBX/OBJ als exporter empfehlen, dafür gibt es sehr gute reader und man spart sich die exporter Pflege.

_________________
"Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren"
Benjamin Franklin

Projekte: https://github.com/tak2004


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Blender-Export
BeitragVerfasst: Mi Sep 11, 2013 09:38 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Verschoben nach Allgemein, schon allein weil Off-Topic von nicht-membern nicht einsehbar ist.

Ja, die Blender-API ändert sich öfter, das ist auch ein Thema auf der Mailingliste und sie versuchen zumindest, an Lösungen für die Kompatibilitätsprobleme zu arbeiten. TAKs zweiter Link führt auch zur API Referenz von Blender und zu einer allgemeinen Manual für extensions. Meine persönliche Empfehlung ist dann noch, dir mal z.B. den mitgelieferten Obj-Exporter anzuschauen. Da findest du die passenden Routinen bestimmt und wahrscheinlich schneller als wenn du dich durch die Doku wühlst (ich finde es ja immer einfacher, mit Referenzen umzugehen, wenn man schon einen Ansatzpunkt hat)

grüße

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Blender-Export
BeitragVerfasst: Mi Sep 11, 2013 13:11 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Okt 03, 2007 14:22
Beiträge: 388
Hm, welches Format, das Bones gescheit unterstützt, hat einen guten Loader für Pascal ? Einen Loader ständig neu übersetzen ist denke ich mehr Arbeit als hin und wieder ein Export-Script anzupassen.

Eine andere Idee: Assimp kann einige Formate laden und quasi konvertieren. Irgendwo schrieb mal jemand, dass man sich dann mit Assimp die Infos rauszieht, die man braucht und in irgendein Format exportiert. In wie weit das gut ist, ist halt auch wieder die Frage.
Es geht hier gar nicht um Faulheit, sondern darum dass 3D-Projekte immer gleich ausarten, wenn man nicht taktisch agiert und gewisse Arbeiten irgendwie umgeht. Im Großteil der Fälle komme ich nie zu den interessanten Sachen, weil ich vorher ewig viel Zeit mit dem Schreiben allermöglichen Klassen verbringe, die irgendeine Basis-Funktionalität bieten. Dann kommt wieder was anderes dazwischen und es dauert wieder ewig bis man mal weitermachen kann. Das ist halt der Fluch alleine zu arbeiten.

Der Reiz am eigenen Exporter ist eben, dass dann sogar ich :mrgreen: wirklich den Loader mal runterschreiben kann. Wenn man die ganzen Arbeiten vorher macht, erspart mir das viel Mühe, weil ich die Infos dann nicht mehr im Programm noch zurechtbiegen muss. Außerdem gefällt mir der Gedanke, da es für meine kleinen Zwecke ganz nett ist, wenn das Dateiformat nicht mehr als nötig kann. Ich bin da aber für Vorschläge offen, ich will mich einfach mal ein wenig mit Bones beschäftigen und nicht wieder ein halbes Jahr irgendwas programmieren müssen vorher.

_________________
Meine Musik: spiker-music.net


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Blender-Export
BeitragVerfasst: Mi Sep 11, 2013 16:47 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jan 31, 2007 18:32
Beiträge: 150
Programmiersprache: Pascal
Assimp hat eine C-API schnitstelle hatte dazu mal einen header gebastelt vll ist das ja was für dich.

mfg Frenk


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Blender-Export
BeitragVerfasst: Do Sep 12, 2013 16:51 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Okt 03, 2007 14:22
Beiträge: 388
Hm, das Ersetzen des Blender-Moduls erweist sich als ziemlich schwierig.

Welche Formate können denn überhaupt Bones ? FBX kann Bones, aber leider finde ich keinen Loader für Pascal. Wirkt wieder so, als müsste man das selbst schreiben. Problematisch ist nur eben, dass es für jemanden, der noch nie mit Bones gearbeitet hat, schwierig ist, da gleich einen eigenen Loader zu schreiben. Mir fehlen zur Zeit ja sogar noch sämtliche Datenstrukturen bezüglich Bones (klar, die sind nicht kompliziert - aber das sage ich sonst leider auch immer bevor ich auf die Schnauze falle), das heißt ich müsste die ausarbeiten und dann den Loader auf diese ausrichten - das sind zwei teilweise voneinander abhängige Baustellen, so etwas geht erfahrungsgemäß nicht gut.
Assimp kann FBX nicht, allerdings das DirectX-Format, welches an sich nicht mal unbedingt übel wirkt. Aber ist es eine gute Idee ausgerechnet das DirectX-Format für eine OpenGL-Anwendung zu missbrauchen ? Ich nehme mal an die Datenanordnung wird schon an DirectX-Strukturen angepasst sein. Kenne zumindest niemanden der das gemacht hat, daher wird es wohl schon einen Grund geben.
Wavefront Obj kann keine Bones, das heißt ohne größere Anpassungen vom Obj-Exporter von Blender und dem Loader dürfte da nichts gehen. Ansonsten ist das mein Standardformat, es funktioniert halt wie es soll normalerweise.

Milkshape 3D ist wohl zu veraltet/beschränkt oder sehe ich das falsch ? Da gibt es von Jan Horn (zumindest für die ASCII-Version) ein Beispielprojekt. Das wäre zumindest ganz nützlich für mich um da ein wenig einzusteigen, aber alles auf das eventuell falsche Dateiformat aufzubauen ist halt auch nicht gerade sinnvoll. Außerdem bräuchte man jetzt noch ein Export-Plugin für Blender dass die ASCII-Version unterstützt und nicht die binäre, ich glaube dann stehe ich recht schnell wieder vor dem Problem, bei dem ich schon beim eigenen Exporter stehe.

Am sinnvollsten wäre ein bestehendes Dateiformat zu nehmen, allerdings kriege ich bei Google - also allen möglichen Foren - nicht raus, welches Format man nutzen sollte. Skeletal Animation ist eigentlich was Grundlegendes, es überrascht mich doch ein wenig, dass das wieder so vielseitige Probleme aufwirft.

_________________
Meine Musik: spiker-music.net


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Blender-Export
BeitragVerfasst: Do Sep 12, 2013 17:36 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 18, 2004 16:45
Beiträge: 2621
Wohnort: Berlin
Programmiersprache: Go, C/C++
Ich würde kein eigenen loader für fbx bauen, sondern den offiziellen loader benutzen.
Da du nicht c/c++ verwendest, solltest du die dll verwenden und dir entweder eine wrapper lib bauen oder eine existierenden verwenden.
assimp hat z.B. ein delphi header.

_________________
"Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren"
Benjamin Franklin

Projekte: https://github.com/tak2004


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Blender-Export
BeitragVerfasst: So Sep 15, 2013 21:02 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Okt 03, 2007 14:22
Beiträge: 388
Habe noch lange rumhantiert und das resultiert nur in einer simplen Frage: Spricht etwas gegen MD5 (Doom 3) ? assimp kann das Laden und ich habe eine Export-Möglichkeit dafür. In wie weit das komfortabel ist zeigt sich erst, aber zumindest funktioniert das Laden vom Modell und den Bones.
Außerdem gibt es zahlreiche MD5-Loader, der Codeumfang ist meistens recht gering und ich könnte da durch Übersetzen nach Pascal sogar die Abhängigkeit zu assimp auflösen - Kompaktheit und eine Abhängigkeit weniger, das gefällt mir eigentlich sehr gut. Natürlich könnte es sein, dass Ihr mit dem Format schlechte Erfahrungen gemacht habt oder es hat einfach nur keiner daran gedacht, daher frage ich.

_________________
Meine Musik: spiker-music.net


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 8 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 27 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.090s | 19 Queries | GZIP : On ]