Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi DirectX9: Animation von .x Dateien abspielen ? (https://www.delphipraxis.net/36789-directx9-animation-von-x-dateien-abspielen.html)

rabbitRUN 25. Dez 2004 22:18


DirectX9: Animation von .x Dateien abspielen ?
 
Hi, habe mit D3DXLoadMeshFromX mein Modell geladen. Wie sag ich directx jetzt die dazugehörige Animation abzuspielen ?

mfg

Oxmyx 26. Dez 2004 01:01

Re: DirectX9: Animation von .x Dateien abspielen ?
 
Schau dir das Skinned-Mesh-Beispiel an, das bei der SDK dabei ist. Das ist eine der schwierigeren Sachen, die man mit Direct3D machen kann, entsprechend hat der Quellcode für die Animation allein auch ca. 1700+ Zeilen.

Sebastian Nintemann 26. Dez 2004 04:50

Re: DirectX9: Animation von .x Dateien abspielen ?
 
Hallo rabbitRUN,

neben dem Sample aus dem SDK kannst du dir auch dieses Dokument mal anschauen, ist im Prinzip das gleiche, nur umfangreicher erklärt.

Viele Grüße,
Sebastian

rabbitRUN 26. Dez 2004 12:19

Re: DirectX9: Animation von .x Dateien abspielen ?
 
hm jo ist doch ein wenig aufwendiger als ich mir das vorgestellt hab, gibts Alternativen ?

Oxmyx 26. Dez 2004 12:23

Re: DirectX9: Animation von .x Dateien abspielen ?
 
Du speicherst die Animation deines 3D-Modells in Einzelframes ab, also pro Animations-Phase ein 3D-Modell. Für einen gehenden Menschen hast du dann nachher vielleicht 30 Modelle, die du nacheinander anzeigst.
Vorteil ist, dass es sehr einfach zu implementieren ist. Nachteil ist, dass dieses Verfahren sehr speicherfressend ist. Halte die Anzahl der Frames möglichst gering und das 3D-Modell möglichst einfach mit wenigen Vertizes. Wenn du Texturen hast, lade auf keinen Fall die Texturen für jedes einzelne Modell neu, sondern lade die Texturen ein Mal und benutze dann nur noch den Schnittstellenzeiger auf die bereits geladenen Texturen.

rabbitRUN 26. Dez 2004 13:06

Re: DirectX9: Animation von .x Dateien abspielen ?
 
Danke, das klingt schon besser :)
Noch ne Frage zu den Texturen, ist es da besser sie auf das nackte Modell zu kleben oder gleich das Modell inkl. Texturen zu laden ?

Oxmyx 26. Dez 2004 13:35

Re: DirectX9: Animation von .x Dateien abspielen ?
 
Ich verstehe die Frage nicht so richtig. Texturen lädst du mit D3DXCreateTextureFromFile/Ex oder D3DXCreateTextureFromFileInMemory/Ex, die Funktionen liefern die gleich die Schnittstellenzeiger auf die Texturschnittstellen zurück. Dann musst du die Texturen beim Rendern mit IDirect3DDevice9.SetTexture aktivieren. Dein Modell braucht natürlich Texturkoordinaten, sonst weiß Direct3D ja nicht, wie es die Textur aufs Modell legen soll.

rabbitRUN 26. Dez 2004 16:56

Re: DirectX9: Animation von .x Dateien abspielen ?
 
Ich kann doch auch das Modell mit nen 3D Modeller bearbeiten und dort schon der Figur die Texturen überziehen, so hats jedenfalls mit Spheres bisher geklappt.

Oxmyx 26. Dez 2004 19:03

Re: DirectX9: Animation von .x Dateien abspielen ?
 
Die Texturen musst du trotzdem erst mit D3DXCreateTextureFromFile/Ex erstellen, das macht D3DXLoadMeshFromX nicht automatisch.

rabbitRUN 27. Dez 2004 02:04

Re: DirectX9: Animation von .x Dateien abspielen ?
 
stimmt... hab ich direkt übersehen :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz