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

Aktuelle Zeit: So Jul 13, 2025 09:35

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



Ein neues Thema erstellen Auf das Thema antworten  [ 12 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Milkshape Ascii specification
BeitragVerfasst: Do Dez 16, 2010 21:20 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Sep 19, 2007 21:36
Beiträge: 46
Hi, ich habe mir eine wavefront obj loader gebastelt und will jetzt die Möglichkeit haben, die geladenen models zu animieren.
Dazu möchte ich zusätzlich zu dem model eine milkshape ascii datei zur animation laden können.
Ich habe jetzt ne weile gesucht, aber finde einfach keine ordentliche specification zum Milkshape Ascii Format.

Hat jemand ne idee wo ich das finden kann, oder vielleicht einen besseren Vorschlag zur animation?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Do Dez 16, 2010 21:32 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jul 01, 2003 18:59
Beiträge: 887
Wohnort: (The Netherlands)
Programmiersprache: fpc/delphi/java/c#
Have a look at my glmodel project at http://www.noeska.com/dogl/glmodel.aspx or its subversion repository: http://thuis.vanderhoning.net/svn_glmodel/trunk/

in the techdocs i included the milkshape ascii documents for easy reference: http://thuis.vanderhoning.net/svn_glmod ... format.txt

That documentation should also be availeable on the milkshape site at the downloads:
http://chumbalum.swissquake.ch/ms3d/download.html i believe it is in the sdk download.

_________________
http://3das.noeska.com - create adventure games without programming


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Do Dez 16, 2010 21:46 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Sep 19, 2007 21:36
Beiträge: 46
hi, danke erstmal für die antwort,

ich vergaß zu erwähnen, dass ich nicht in opengl, sondern in webgl entwickle, genauer noch im gwt-g3d wrapper.

Da gibts es noch keine Klassen, die mir das laden von obj etc ermöglichen. ich muss also alles selbst schreiben


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Fr Dez 17, 2010 09:05 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Jan 04, 2008 21:29
Beiträge: 419
Wohnort: Lübeck
http://chumbalum.swissquake.ch/ms3d/download.html

da gibts gleich in der ersten Tabelle nen download für nen Milkshape viewer für das ascii und das binary format, inklusive source. Daraus kannste garantiert was machen. In der Model.cpp ist eine Methode die heißt cModel::Read (const char *szFilename). Da kannste mit ein bischen c/c++ Kenntnissen anschauen, wie man das ascii file lädt. Die Typendefinition steht wohl in der Model.h.

gruß, Sellmann.

_________________
Klar Soweit?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Fr Dez 17, 2010 12:16 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
http://chumbalum.swissquake.ch/ms3d/ms3dspec.txt

das ascii Format funktioniert eigentlich genauso wie das binäre Format
die Unterschiede sind ziehmlich selbsterklärend wenn du dir die Datei mal
anschaust... Problem ist aber das ms3d nicht exportieren kann wenn du nur
ein Skelett im Model hast (jedenfalls bis zur 1.8.0 nicht), sprich du brauchst
min. ein Mesh.... von daher nimm lieber das binäre Format

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: So Dez 19, 2010 13:27 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Sep 19, 2007 21:36
Beiträge: 46
Danke für die Antworten, ich denke damit kann ich was anfangen


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Mo Dez 20, 2010 15:22 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Sep 19, 2007 21:36
Beiträge: 46
So, das Laden hab ich jetz durch, jetzt hab ich das Problem beim rendering.

Wie muss ich die matrizen berechnen? ich habe jetz schon alles mögliche durchprobiert und gelesen etc aber die animation sieht einfach nicht so aus wie sie sollte.

kann mir jemand eine kurze Beschreibung geben, wie ich alles berechnen muss?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Mo Dez 20, 2010 19:54 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Sep 19, 2007 21:36
Beiträge: 46
oder anders ausgedrückt: was mach ich mit den Werten (Joint Position/Rotation, keyframe position/rotation)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Mo Dez 20, 2010 21:50 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Jan 04, 2008 21:29
Beiträge: 419
Wohnort: Lübeck
also ich kenne das format nicht, aber es könnte sein, dass dir nur ein rotationswinkel und eine achse gegeben ist aus denen du dann ein quaternion machst. Aus diesem kannst du dann wiederum die matrix berechnen. Die Position ist wichtig, weil du ja nur um das Zentrum des Koordinatensystems rotieren kannst, deshalb musst du alle vertices ersteinmal in das Zentrum relativ vom joint verschieben. Also entgegen der Position. Wenn man dann die Rotationsmatrix drauf anwendet sollte es klappen.
Falls du mit quaternions bewandert bist, kannste auch direkt mit denen die rotation ausführen (musst dann aber trotzdem noch verschieben), dadurch sparst du dir zwar das umrechnen in eine matrix, aber der rechenaufwand ist ein kleinesbischen höher. Die darstellung als quaternion wird meist gewählt um speicher zu sparen im dateiformat.

_________________
Klar Soweit?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Mi Dez 22, 2010 19:38 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Sep 19, 2007 21:36
Beiträge: 46
Danke, das wirds warscheinlich gewesen sein. Die Animation hat immer richtig funktioniert, sofern die bones nichts rotiert waren, sobald das der fall war hats meine animation zerhaun.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Mo Feb 14, 2011 12:20 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Sep 19, 2007 21:36
Beiträge: 46
So ich hab jetz vor kurzen die Arbeit an meinem Projekt wieder aufgenommen und hänge immernoch an dem animations problem.
Ich bekomm es einfach nicht richtig hin.

Also ich mache es jetzt folgendermaßen:
- Für jeden Root-Bone habe ich eine Matrix (ParentMatrix) , die erst von diesem bone transliert und rotiert wird und dann an das kind-bone weitergereicht wird, welches diese wieder rotiert, transliert
- für jeden bone berechne ich eine KeyFrameMatrix.

Dann mache ich:
- multipliziere die Modelview matrix mit der ParentMatrix
- multipliziere die ModelView matrix mit der KeyFrameMatrix
- multipliziere die Modelview matrix mit der inverse der ParentMatrix
- gehe weiter zum Kind-Bone und reiche die ParentMatrix durch, welche dann in gleicher weise von Kind-bone transliert und rotiert wird


Mein Problem liegt (denke ich) beim Berechnen der rotations matrix.

Leider bin ich nicht bewaldelt mit Quaternions und bin gerade dabei mich einzulesen. Aber so wie ich das verstehe, braucht man, um mit einem Quaternion
die Rotation zu berechnen einmal die Achse (als 3-Vektor) und den Winkel, was vier Werte ergibt.

Im Milkshape format finde ich aber zur Rotation je nur 3 Werte, von denen ich ausgegangen bin, dass sie einfach nur die Rotation um x,y,z achse repräsentieren.

Diese eingesetzt ergeben aber nur eine Sinnvolle animation, wenn ich vorher nicht die ParentMatrix rotiere.

ich hoffe ihr könnt helfen. bin echt am verzweifeln


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Milkshape Ascii specification
BeitragVerfasst: Di Feb 15, 2011 10:19 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 11, 2009 08:02
Beiträge: 532
Programmiersprache: pascal (Delphi 7)
Zitat:
Diese eingesetzt ergeben aber nur eine Sinnvolle animation, wenn ich vorher nicht die ParentMatrix rotiere
Ohne jetzt genaueres zu wissen: Kann es sein, dass da die Parent Matrix bereits drin ist?

bzw meinst du mit einer sinnvollen Animation die gewünschte, oder zB nur irgendwas, was nicht herumspringt?


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 11 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:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]