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

SullY

Treue Seele

  • »SullY« ist der Autor dieses Themas

Beiträge: 103

Wohnort: Vor dem PC :P

Beruf: Schulbankdrücker, Samstagsprospektzeitungsjunge,

  • Private Nachricht senden

1

16.11.2012, 20:44

Mit DirectX Mesh laden.

Ich habe mir noch im Buch "3D-Spieleprogrammierung mit C++ und DirectX 9" das Beispiel angeschaut wo das .tbm-model geladen wird.

Leider habe ich es noch nicht richtig verstanden wie das Laden und Rendern abläuft.

Könnte es ev. nicht jemand noch mal erläutern? :(

Und dann ev. wie dieser Exporter genau funktioniert? Wie werden die Daten ausgelesen?

Gruß SullY :crazy:
Spruch Lädt... 99 % . Verbindung abgestürzt.

My best Code is written with the Delete Key.

FSA

Community-Fossil

  • Private Nachricht senden

2

16.11.2012, 21:11

Das tbm Format enthält folgende(wichtigsten) Daten:

C-/C++-Quelltext

1
2
3
4
5
TB_CT_MODEL_VERTICES,   // Vertexdaten
TB_CT_MODEL_INDICES,    // Indexdaten
TB_CT_MODEL_EFFECTS,    // Effektdaten,
TB_CT_MODEL_LIGHTING,   // Beleuchtungsdaten
TB_CT_MODEL_USER = 255  // Benutzerdefiniert (TB_CT_MODEL_USER + x)

sowie Header und Effektcode. Beim Laden werden die Daten in einen Vertex- und Indexbuffer geschrieben und ein Effekt generiert.
Beim Rendern wird einfach nur (wie du es ja schon gelernt hast), der VertexBuffer als Stream gesetzte und mit DrawIndexedPrimitiv die Vertices gerendert. Vorher wird natürlich noch der Effekt eingesetzt.

Der Konverter ließt von 3DS Dateien die Vertex-, Index, Materialdaten und noch andere und schreibt sie in Chunks(Datenpackete) in die tbm Datei.

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

SullY

Treue Seele

  • »SullY« ist der Autor dieses Themas

Beiträge: 103

Wohnort: Vor dem PC :P

Beruf: Schulbankdrücker, Samstagsprospektzeitungsjunge,

  • Private Nachricht senden

3

17.11.2012, 18:50

Das mit der Enumlisten-aufzählung habe ich verstanden. Aber das lesen selber nicht :\

Mein Fehler hätte mich genauer äußern sollen

------------------------------------

Sollten mehrere der Meinung sein, dass ich eure Zeit verschwende, sagt's mir....
Spruch Lädt... 99 % . Verbindung abgestürzt.

My best Code is written with the Delete Key.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »SullY« (17.11.2012, 23:35)


FSA

Community-Fossil

  • Private Nachricht senden

4

18.11.2012, 11:31

Zeit verschwenden, warum? Sind so typische Fragen, die ich auch mal gefragt habe.
Die TriBase erstellt eine Virtuelle Datei(Speicherbereich) und ließt von dort die Daten. Wenn ich mich nicht irre ließt sie zB 1024 Bytes an Vertexdaten und erstellt daraus einen Vertexbuffer. So ist das mit allen Daten. Guck einfach mal im Quellcode(tbModel.cpp?).

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

SullY

Treue Seele

  • »SullY« ist der Autor dieses Themas

Beiträge: 103

Wohnort: Vor dem PC :P

Beruf: Schulbankdrücker, Samstagsprospektzeitungsjunge,

  • Private Nachricht senden

5

25.11.2012, 18:55

oh ja, bin so blöd. Habe garnicht gewusst das TriBase-Source-Code auf der CD ist.

Danke FSA
Spruch Lädt... 99 % . Verbindung abgestürzt.

My best Code is written with the Delete Key.

Werbeanzeige