Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jonathan_Klein Living Legend

Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
|
Nach oben |
|
 |
David Super JLI'ler
Alter: 40 Anmeldedatum: 13.10.2005 Beiträge: 315
Medaillen: Keine
|
Verfasst am: 22.10.2006, 20:44 Titel: |
|
|
Dr. Best hat Folgendes geschrieben: | Ich benutz kein MFC, also is das C noch frei .
Es stand halt so in Christians Buch und das war das erste, das ich gelesen hab, also hab ich's mir so angwöhnt. Außerdem, was ist denn eigentlich die "richtige" Variante? Die Klassen ohne irgendein Prefix benennen will ich nicht. Würde mir zu zu vielen Namenskonflikten führen. |
Diese C Prefixe sind das "Markenzeichen" der MFC. Aber wenns dir gefällt. Ich persönlich finde das irgendwie unschön und mach Klassen immer ohne Prefix. Bei einem guten, durchdachten Codedesign gibts auch keine Namensprobleme!
Wie gesagt, ist aber Geschmackssache!
grüße |
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 22.10.2006, 21:37 Titel: |
|
|
Ist wohl Geschmackssache, aber manchmal sind auch namespaces Blödsinn und Präfixe helfen.
Namespaces bedeuten auch mehr Schreibarbeit und innerhalb einer Klasse kann es ja auch mal zu Namenskonflikten kommen
Hat natürlich beides seine Vor- und Nachteile.
@Dr. Best: Könntest du evtl. auch mal den 3DS-Loader zeigen (natürlich wenn du willst nur die unterste Schicht). Ich fänds interessant, das mal von innen zu sehen, da ich vielleicht auch in Zukunft 3ds verwenden werde. _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
 |
Dr. Best Senior JLI'ler

Alter: 35 Anmeldedatum: 17.06.2004 Beiträge: 269 Wohnort: Köln Medaillen: Keine
|
Verfasst am: 22.10.2006, 22:15 Titel: |
|
|
@ David
Tja, Geschmäcker sind verschieden. Und bei meinem Codedesign (mit C vor den Klassen) gibt's ja auch keine Namenskonflikte .
@ TLoP
Jo, klar. Irgendwann nächste Woche werd ich mal die benötigten Module in ein kleines Beispielprojekt packen und ne kleine readme dazu schreiben. Dann kann ich die einfach mal uploaden und hier verlinken. |
|
Nach oben |
|
 |
Jonathan_Klein Living Legend

Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 22.10.2006, 22:25 Titel: |
|
|
Auf unterer Ebenen ist das ja eigentlich sogar gut. Es reicht ja wenn man es schafft die Datei auszulesen und Vertex- sowie Indexdaten zu laden.
Wenn dann noch Animationsalgos dabei sind, ist ja schon jeder glücklich, das ganze dann mit DX zu rendern ist dann wohl nur noch das kleinste Problem. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
 |
Dr. Best Senior JLI'ler

Alter: 35 Anmeldedatum: 17.06.2004 Beiträge: 269 Wohnort: Köln Medaillen: Keine
|
Verfasst am: 26.10.2006, 20:39 Titel: |
|
|
So, ich hab das ganze jetzt mal ein bisschen abgeändert und upgeloadet. Es ist auch mit einem wirklich winzigen Beispiel versehen:
Eine *.an8 Datei wird geladen, der Name des ersten Meshs wird angezeigt und das wars.
Den *.x file parser hab ich mal in seperate Module gepackt damit man auf ihn verzichten kann wenn man vermeiden will die d3dxof.lib und die dxguid.lib verlinken zu müssen. Bevor man den File Parser in Betrieb nimmt sollte man noch die Definitionen der Funktion Error in ModelFormats.cpp anpassen. Dort könnte man zum Beispiel einen Log Eintrag erstellen.
Ich glaub das ist so weit alles. Schaut mal ob ihr die ganzen Schnittstellen versteht. Meine Kommentare dürften dabei auch durchaus hilfreich sein. Um eine Dokumentation zu dem Parser zu schreiben fehlt mir leider die Zeit. Wenn ich davon irgendwann mal was mehr haben sollte werde ich vielleicht auch noch Teile der höheren Ebenen releasen. So lange man nur die Meshdaten haben will ist die Sache meistens recht einfach, bei den Materials wird es schon schwieriger und sobald es an den Skeleton Kram geht wird es richtig hart.
Hier ist der Link zum Download:
http://u3d.pytalhost.com/Stuff/ModelLoader.rar
Das Archiv beinhaltet den Quellcode, ein MS VS 2005 Projekt, ein paar Models und die kompilierte Executable.
MfG
Dr. Best |
|
Nach oben |
|
 |
peterbub JLI'ler
Anmeldedatum: 24.07.2005 Beiträge: 109
Medaillen: Keine
|
Verfasst am: 08.11.2006, 09:40 Titel: |
|
|
wo finde ich das X-File
dolphin.x |
|
Nach oben |
|
 |
Otscho Super JLI'ler

Alter: 36 Anmeldedatum: 31.08.2006 Beiträge: 338 Wohnort: Gummibären-Gasse Medaillen: Keine
|
Verfasst am: 19.12.2006, 16:38 Titel: |
|
|
Christian Rousselle hat Folgendes geschrieben: | Bitte suchen, Jonathan Klein hat auch schonmal danach gefragt.
C. | Ich hab auch schon lange danach gesucht aber es nie gefunden. Vielleich bin ich auch blind oder hab einfach einen zu engen Tunnelblick. Könnte vielleich jemand einen kurzen Quellcode-Auschnitt posten oder einen Link senden. Wäre echt furchtbar nett.  |
|
Nach oben |
|
 |
Otscho Super JLI'ler

Alter: 36 Anmeldedatum: 31.08.2006 Beiträge: 338 Wohnort: Gummibären-Gasse Medaillen: Keine
|
Verfasst am: 23.12.2006, 14:14 Titel: |
|
|
Falls ich mich etwas unklar ausgedrückt habe:
Kennt jemand ein Link zu enier Seite wo drinsteht wie man im IDirect3DVertexBuffer9 nachträglich die Vertices einzelln verändern kann? Ich hab schon überall gesucht, hier, Google und msdn, aber nichts gefunden. |
|
Nach oben |
|
 |
Jonathan_Klein Living Legend

Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 23.12.2006, 15:39 Titel: |
|
|
Steht in der Doku
ALSO:
Du weißt was ein Array ist?
Du weißt was eien Struktur ist?
Du weißt was ein Pointer (Zeiger) ist?
Du weißt was FVF (flexible Vertex Format) ist?
gut.
DANN:
Geh in die DX DOku und guck dir den Vertexbuffer 9 Eintrag an (DX Graphics, Reference Interfaces (such halt n bissle, ist imemr gut in der Doku sich auszukennen)).
Eine Methode heißt Lock.
Locks a range of vertex data and obtains a pointer to the vertex buffer memory.
D.h. du bekommst einen Zeiger auf ein Array deiner FVF Struktur. Du müsstest ja eigentlich wissen, wleches FVF der Buffer hat.
Aufpassen musste nur bei Lockmode. Du musst wissen was du willst. Es gibt viele Optimierungen, ob du z.b. nur lsen oder schreiben willst, oder beides und sowas halt.
Wenn du den ganzen Buffer locken willst, wären die ersten beiden Parameter 0. Der dritte ist ein Zeiger auf deinen Zeiger auf deine FVF Struktur.
Unlocken net vergessen
So, die Flags kannste dir raussuchen, bei der Lock beschreibung müsstest du das einfach rausfinden können.
Es ist gut zu üben, alleine klar zu kommen, wenn du aber bei einen der Schritte stockst, kannste nochmal fragen. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
 |
|