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

1

21.09.2009, 10:14

Texturen kacheln auf Dreieck

Guten Morgen,

habe nun das Kapitel mit den Texturen durch und habs geschafft die Beispieltextur auf das einzelne Dreieck aus dem vorherigen Kapitel zu bringen, allerdings wird diese Textur gestreckt und nicht gekachelt obwohl ich

C-/C++-Quelltext

1
2
    g_pD3DDevice->SetSamplerState(0, D3DSAMP_ADDRESSU, D3DTADDRESS_WRAP);
    g_pD3DDevice->SetSamplerState(0, D3DSAMP_ADDRESSV, D3DTADDRESS_WRAP);
verwende.

Ich vermute es hängt mit der Art der Positionsangabe des Textur zusammen, welche folgendermaßen aussieht:

C-/C++-Quelltext

1
2
3
    g_aTriangleVertex[0].vTexture   = tbVector2 (0.5f, 0.0f);
    g_aTriangleVertex[1].vTexture   = tbVector2 (1.0f, 1.0f);
    g_aTriangleVertex[2].vTexture   = tbVector2 (0.0f, 1.0f);

Allerdings habe ich keine Ahnung in wieweit ich da was ändern muss damit kachelung funktioniert.

Würde mich über hilfe freuen.

TrommlBomml

Community-Fossil

Beiträge: 2 117

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

2

21.09.2009, 11:16

probier doch mal folgendes:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
//so hier

g_aTriangleVertex[0].vTexture    = tbVector2 (1.0f, 0.0f);
g_aTriangleVertex[1].vTexture    = tbVector2 (2.0f, 2.0f);
g_aTriangleVertex[2].vTexture    = tbVector2 (0.0f, 2.0f);

//bzw. wenn mans verdeutlichen will was ich gemacht habe:

//so hier

g_aTriangleVertex[0].vTexture    = tbVector2 (0.5f, 0.0f) * 2.0f;
g_aTriangleVertex[1].vTexture    = tbVector2 (1.0f, 1.0f) * 2.0f;
g_aTriangleVertex[2].vTexture    = tbVector2 (0.0f, 1.0f) * 2.0f;


wenn du dich wunderst warum das so ist dann beschäftige dich ein wenig intensiver mit texturkoordinaten ;)

3

21.09.2009, 13:52

Super dank dir, habe auch mal einen höheren Faktor als zwei genommen und die Textur wird immer häufiger gekachelt, werde jetzt mal ein wenig mit den Koordinaten rumspielen und schauen was rauskommt. :)

Werbeanzeige