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

Maxi

Treue Seele

  • »Maxi« ist der Autor dieses Themas

Beiträge: 136

Wohnort: Müncheberg

Beruf: Ich muss noch in die Schule

  • Private Nachricht senden

1

15.06.2003, 15:39

Problem mit Würfel

Ja, also ich sehe jetzt einen "Würfel", allerdings ist die Oberseite und dnie Unterseite nicht mit Textur bespannt. Ich habe den Würfel 45° um X gedreht, so dass ich ihn unten unten sehe.
Dann lasse ich ihn um die YAchse drehen, mit g_fTime.

ABer ich sehe nur die Seitenkanten, die Unter- und oberseite inst durch sichtig, ich kann also durchgucken.
Weißt du woran das liegt?

Ich habe die selben Vertizes und Indizes wie in deinem Vertex-Buffer-Beispiel verwendet.

Gruß, Maxi

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

15.06.2003, 16:05

Guck Dir mal an, was die Parameter von DrawIndexedPrimitive bedeuten (in der Dokumentation). Du hast da nämlich total falsche Werte eingesetzt und zeichnest nur 8 Dreiecke. Der Würfel besteht aber aus 12 Dreiecken (6 Seiten à 2 Dreiecke). Und irgendwo gibst Du 32 an, was aber auch falsch ist, denn so viele Vertizes gibt es ja garnicht. Die Zahl muss 8 heißen.
Ein Blick in das Index-Buffer-Beispiel hätte gereicht...

Maxi

Treue Seele

  • »Maxi« ist der Autor dieses Themas

Beiträge: 136

Wohnort: Müncheberg

Beruf: Ich muss noch in die Schule

  • Private Nachricht senden

3

16.06.2003, 15:53

ok, danek, David. Jetzt sehe ich einen "Würfel" mit Texturen überzogen. ABer ich sehe leider nur dei Seitenwände, und am Boden einen ganz schwachen grünen Schimmer...
Da zeichnet er die Texturen nciht. Aber es ist geschlossen, denn ich kann nicht mehr durch den Würfel durchschauen.
Ich glaube, ich weiß, was das Problem ist, aber ich weiß nciht, wie ich es lösen soll...
Ich denke, dass am Boden jeweils die gleichen Koordinatenpaare zweimal auftauchen, daher weiß meine Karte nicht, wie sie die Textur darstellen soll. Aber ich habe auch keine Ahnung, wie man es machen soll. Wenn ich die koordinaten ändere, so dass ich auch den Boden mit Texturen überziehe, dann sind die meisten Texturen total verzerrt, man erkennt die dann gar nicht mehr. Ich zeig dir nochmal meine Koordinaten, vieleicht kannst du mir helfen...


Vertizes[0].vPos = tbVector3(-1.0f, 1.0f, -1.0f); // vorne oben links
Vertizes[0].vTex = tbVector2(0.0f, 0.0f);
Vertizes[1].vPos = tbVector3(-1.0f, 1.0f, 1.0f); // hinten oben links
Vertizes[1].vTex = tbVector2(1.0f, 0.0f);
Vertizes[2].vPos = tbVector3(1.0f, 1.0f, 1.0f); // hinten oben rechts
Vertizes[2].vTex = tbVector2(0.0f, 0.0f);
Vertizes[3].vPos = tbVector3(1.0f, 1.0f, -1.0f); // vorne oben rechts
Vertizes[3].vTex = tbVector2(1.0f, 0.0f);
Vertizes[4].vPos = tbVector3(-1.0f, -1.0f, -1.0f); // vorne unten links
Vertizes[4].vTex = tbVector2(0.0f, 1.0f);
Vertizes[5].vPos = tbVector3(-1.0f, -1.0f, 1.0f); // hinten unten links
Vertizes[5].vTex = tbVector2(1.0f, 1.0f);
Vertizes[6].vPos = tbVector3(1.0f, -1.0f, 1.0f); // hinten unten rechts
Vertizes[6].vTex = tbVector2(0.0f, 1.0f);
Vertizes[7].vPos = tbVector3(1.0f, -1.0f, -1.0f); // vorne unten rechts
Vertizes[7].vTex = tbVector2(1.0f, 1.0f);

Indizes[36] = { 0, 3, 7, 0, 7, 4, // Vorderseite
2, 1, 5, 2, 5, 6, // Hinterseite
1, 0, 4, 1, 4, 5, // linke Seite
3, 2, 6, 3, 6, 7, // rechte Seite
0, 1, 2, 0, 2, 3, // obere Seite
6, 5, 4, 6, 4, 7 }; // untere Seite

Ich hoffe, du/ihr hast/habt eine Lösung...

Gruß, MAxi

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

16.06.2003, 17:40

Hi!
Ja, das Problem ist mir bekannt. Man kann einen Würfel leider - soweit ich weiß - garnicht "korrekt" texturieren, sodass auf allen sechs Flächen dieselbe Textur gleich angezeigt wird.
Dann musst Du Dir einen Ausweg schaffen und mehr als nur 8 Vertizes erstellen, nämlich vier für jede Seite, also 24. Dann hast Du mehrere Vertizes, die an der selben Position liegen, aber verschiedene Texturkoordinaten haben.

Maxi

Treue Seele

  • »Maxi« ist der Autor dieses Themas

Beiträge: 136

Wohnort: Müncheberg

Beruf: Ich muss noch in die Schule

  • Private Nachricht senden

5

16.06.2003, 18:22

OK, Danke. So etwas ähnliches hab ich mir schon gedacht, dass das nicht geht. Ich werds dann eben auf herkömmliche Weise machen.

Gruß, MAxi

Werbeanzeige