"Anhängsel"-Objekte oder Child-Objects?

Started by Elrohir, July 15, 2009, 02:33:29 AM

Previous topic - Next topic

Elrohir

Guten Abend,

mal wieder treibt mich eine weitere Frage, zu der ich bissher keine Antwort zu finden imstande war, hierher...
In der feud-demo hattest du eine Waffe als child-objekt dem Charakter zugewiesen....somit hat sie sich bei bleibender hand-position ja auch super mitbewegt...
Doch was geschieht, wenn sich die Hand bewegt? ist es möglich, quasi eine art "Ausrüstung" festzulegen, die dann an bestimmten korperstellen mitbewegt wird?
wenn man z.B. einem charakter einen knüppel in die hand gibt, dass bei einer schlagbewegung dieser knüppel entsprechend der Handbewegung mitbewegt wird?
Allerdings müsste dies unabhängig von dem knüppel geschehen... denn man könnte zwar einfach eine animation des charakters mit knüppel machen, doch mit diesem System kommt man nciht weiter, wenn man verschiedene "Waffen" nur auswahl hat, und mehrere Charaktere... ab einem gewissen grad kann man ja nichtmehr sämtliche kombinationen animieren und dementsprechend aufrufen....
gibt es in jPCT somit eine Möglichkeit, bestimmte Gegenstände einander "anzupassen"?

MfG
Elrohir

EDIT: die frage stelle ich, insbesondere dieses Beispiel, weil ich mich mit der programmierung eines kleines rollenspiels beschäftige, und natürlich sollen die Charaktere auch individuelle Ausrüstung tragen und an- und ablegen können ;)

EgonOlsen

Die Feud-Demo nutzt ein MD2-Modell. Die haben den Vorteil, dass die Waffen die Animationen des Characters immer mitmachen, d.h. sie sind so animiert, dass das passt. Von daher ist das dort einfach.
Einen allgemeingültigen Weg zur Lösung dieser Aufgabenstellung gibt es IMHO nicht, deswegen ist in jPCT auch nichts derartiges drin. Keine Ahnung, was schlau wäre...vielleicht sich zwei definierte Fixpunkte/Vertices im Handbereich rauspicken und entsprechend dem Vector zwischen diesen Punkten die Keule irgendwie transformieren...

Elrohir

#2
in der tat, müsste klappen, ein interessanter ansatz =) vielen dank mal wieder =)

EDIT: das MD2-forrmat wäre zwar eine lösung, doch wie schon bei einem alten thread erwähnt scheue ich dies, weil man nur eine textur verwenden kann, und bei meinen modellen nunmal nur zu häufig mehrere zum tragen kommen... insbesondere da bei den MD2-files die Texturen doch nachträglich nach dem laden in jPCT aufgetragen werden müssen, und dann würde es mit der richtigen positionierung und skalierung doch eh probleme geben :o

Elrohir

Also, es sei denn natürlich, es gibt eine methode um die texturen alle in eine zu komprimieren, und diese textur dann richtig aufzutragen, die ich bissher übersehn habe (und ich rede nicht von stundenlangem rumprobieren, bis endlich alles sitzt^^)

EgonOlsen

Du könntest ja auch eine Figur aus mehreren MD2s zusammensetzen, also quasi eines für den Kopf, eines für den Rumpf, für die Beine etc...denen kannst du doch dann problemlos die jeweils passende Textur zuweisen. Ob das praktikabel ist, weiß ich nicht...ich habe keine Ahnung von Erstellung von Modellen.
Ansonsten kann man denselben Effekt natürlich auch mit 3DS- oder OBJ-Files erreichen, wenn man die Keyframes einzeln lädt. Ich würde aber vermutlich trotzdem erstmal versuchen, die Waffe irgendwie rechnerisch an das Modell zu heften, anstatt eine Animation dafür zu erstellen. Mag aber nicht ganz trivial sein, bis man das vernünftig hinbekommt...

Elrohir

Nungut, dann werde ich es mit den berechnungen versuchen.. das problem ist natürlich erstmal, die passenden vertexe für die berechnung von der Figur zu bekommen... Denn auch wenn mir bekannt ist, dass man darauf per PolygonManager zugreifen kann, so muss natürlich zuerst der richtige puntk gefunden werden, was wohl eine weile dauern kann, und dann muss eben auch irgentwie bei einem punkt herausgefunden werden, welcher von der figur es ist^^
Aber gut, das werde ich mit ein bisschen Geduld und spucke wohl herausbekommen.... werde mich dann wiedermelden, sobald es geklappt hat (oder ich kläglich gescheitert bin^^) :)

EgonOlsen

Quote from: Elrohir on July 16, 2009, 09:54:04 PM
Denn auch wenn mir bekannt ist, dass man darauf per PolygonManager zugreifen kann, so muss natürlich zuerst der richtige puntk gefunden werden, was wohl eine weile dauern kann, und dann muss eben auch irgentwie bei einem punkt herausgefunden werden, welcher von der figur es ist
Ja, das wird vermutlich etwa fummelig werden, gute Punkte zu finden.