Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

WhiteMike

Alter Hase

  • »WhiteMike« ist der Autor dieses Themas

Beiträge: 507

Wohnort: Ulm

Beruf: Schüler

  • Private Nachricht senden

1

24.11.2006, 20:58

3D Charakter-Modelle

Ich hatte eine kurze Frage, bei der ich alleine nicht allzu schnell auf eine Lösung komme, fürchte ich.

Wie bringt man Charaktere in sein Spiel.
Nicht, dass ich so weit wäre, aber bei mir scheitert es schon in der Theorie :(

Die erste Möglichkeit, die ich mir überlegt hab, war die, dass man einfach ein Modell erstellt.
Wie soll man es dann aber bewegen!?

Die aktuelle Möglichkeit, über die ich nachgrüble, ist die, dass ich die einzelnen Körperteile als einzelne Modelle modelliere (2xOberschenkel, 1xBrust, ...) und sie alle dann im Programm zusammensetze.
Wenn man jetzt den Charakter bewegen will, muss man die Körperteile, die dem Körperteil untergeordnet sind, das man bewegen will, mitbewegen. Beim Zusammensetzten des Charakters sollte man also eine Art Skelett-Baumstruktur verwenden.
So weit bin ich.
Allerdings frag ich mich, ob diese Vorgehensweise nicht allzu viele Schwachpunkte hat. Verbraucht es nicht zu viel Performance? Geht es wirklich gut, wenn man ein Modell aus vielen anderen modelliert?


Ich denke, dass sehr viele sich schon damit beschäftigt haben, aber wahrscheinlich weiter als ich gekommen sind :-/
Könnt ihr mir hier weiterhelfen!?

Vielen Dank schon mal an alle,
WhiteMike

Mit freundlichen Grüßen,
WhiteMike

Beiträge: 774

Beruf: Student

  • Private Nachricht senden

2

24.11.2006, 21:19

Also deine Lösung wollt ich auch mal machen ^^
Ist ziemlich die schnellste Möglichkeit. Doch dann hast du lauter ziemlich seltsam anmutende Gliedmaßen.

Die erste (und ältere) Möglichkeit ist, sich einzelne Keyframes zu speichern, die man dann wie einen Film abspielt, bzw interpoliert man die einzelnen Modelle.

Die für Chrakatere übliche Methode ist, dass man wie du gesagt hast ein Skelet hat. Sooo jetzt macht man es normalerweise so, dass jeder Vertex weiß wie stark er von welchen Knochen beeinflusst wird .... und dann kann man den Vertex an Hand dieses Faktors multipliziert mit der Bewegung des Knochens verschieben.

Oh ich weiß schlechte Erklärung .... frag einfach Google mal nach Boneanimation ... hier im Forum dürft es da auch mehrere Themen drüber geben.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

3

24.11.2006, 21:53

skeletal/bone animation ist was du suchst. alles andere ist, würd ich mal sagen, etwas antik ;)

WhiteMike

Alter Hase

  • »WhiteMike« ist der Autor dieses Themas

Beiträge: 507

Wohnort: Ulm

Beruf: Schüler

  • Private Nachricht senden

4

25.11.2006, 09:36

Das heißt, dass in jedem guten 3D-ModellierungsProgramm Möglichkeiten sind, um so ein Gerüst aufzustellen.
Und dann kann man dann auf dieses Gerüst im Spiel zugreifen und Animationen bewerkstelligen.

Wie das genau gemacht wird, hängt jedoch von dem jeweiligen Programm ab.

Hab ich das so richtig verstanden!?

Mit freundlichen Grüßen,
WhiteMike

5

25.11.2006, 11:29

Naja bsw. bei 3ds max usw. kannst du ein Skelett für die Animation reinsetzen ... jap.. kommt aber aufs jeweilige Format an wie se gespeichert werden...
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

WhiteMike

Alter Hase

  • »WhiteMike« ist der Autor dieses Themas

Beiträge: 507

Wohnort: Ulm

Beruf: Schüler

  • Private Nachricht senden

6

25.11.2006, 16:54

Das Programm, mit dem ich arbeiten werde, ist verdammt gut, also glaub ich schon, dass es auch nach 3DS exportieren kann.
(Habs noch nicht, also kann ich das nicht mir Sicherheit sagen ...)

Kann mir jemand ein Tutorial empfehlen, mit dem man lernen kann, das Skelett mit C++ und DirectX anzusprechen?

Mit freundlichen Grüßen,
WhiteMike

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

7

25.11.2006, 17:53

das beste tut das ich kenne:

http://rsn.gamedev.net/tutorials/ms3danim.asp

leider opengl, aber das wirst du schon packen ;)

achja:

Zitat

...nach 3DS exportieren...


meinst du damit, dass du ins 3ds format exportierst?
ich kann nur davon abraten 3ds zu verwenden, afaik gibts keine wirkliche unterstützung für skeletale animation (nur reine keyframeanim)...

was für ein programm ist denn das, mit dem du arbeiten wirst?

für den anfang würde ich milkshape 3d empfehlen

evtl. solltest du auch mal einen blick auf davids emm sdk werfen.

WhiteMike

Alter Hase

  • »WhiteMike« ist der Autor dieses Themas

Beiträge: 507

Wohnort: Ulm

Beruf: Schüler

  • Private Nachricht senden

8

26.11.2006, 18:23

Danke für das Toturial :)
Ich seh es mir an.

Ich erstelle die Modelle mit Cinema 4D.
Wenn ich will, dass es für DirectX exportiert, dann erstellt es eine X-Datei,
allerdings muss ich mich leider fragen, wie man X-Dateien im DirectX-Programm lädt ...
Im Buch wird ja eine 3DS-Datei in eine TBM-Datei konvertiert und damit gearbeitet.

D3DXLoadMeshFromX() soll die X-Datei laden.
Es gibt da ein Tutorial, dass eine Klasse vorstellt, mit der man so eine X-Datei lädt und rendert.

http://www.x-tutorials.de/html/tutorials/tutorial5.html

Allerdings muss ich überlegen, ob man von der TBM-Datei so leicht auf die X-Datei schließen kann (Kollision und änliches ...)

Außerdem würde ich dich gerne fragen, ob du weißt, ob dieses Format gut Skeletal Animation unterstützt?
Weiß jemand, was so eine X-Datei alles beinhaltet und wie man das abfragen kann?

Mit freundlichen Grüßen,
WhiteMike

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

9

26.11.2006, 18:35

.x unterstützt definitv skelettanimation.
es gibt sogar einige samples dazu im dx sdk.

die größte frage bei .x exportern ist immer, was die eigentlich alles exportieren, also ob z.b. die animationen da auch dabei sind...

WhiteMike

Alter Hase

  • »WhiteMike« ist der Autor dieses Themas

Beiträge: 507

Wohnort: Ulm

Beruf: Schüler

  • Private Nachricht senden

10

26.11.2006, 18:41

Hm...

Wenn Cinema 4D wirklich so gut ist, wie ich hoffe, dann werden da auch die Animationen mit exprotiert, aber da muss ich erst mal nachschauen ...

Freut mich aber, dass X-Dateien auch für Skeleton Animation geeignet sind.

-------------------------------------------------
Okay, dann sag ich dir mal VIELEN DANK 8)
Du und die anderen habt mir echt geholfen :)

Mit freundlichen Grüßen,
WhiteMike

Werbeanzeige