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

07.04.2009, 15:54

Texturkoordinaten für ein Terrain berechnen

Hallo,

ich habe vor einiger Zeit angefangen mich mit Directx 9 zu befassen und habe es sogar geschafft aus einer Heightmap ein Terrain zu generieren und dazu passend die Normalvektoren zu berechnen aber jetzt stehe ich vor einem kleinen (verständniss) Problem :

Wie komme ich an die Texturkoordinaten des Terrains wenn ich über das ganze Gebiet erstmal nur eine Textur spannen will ? Bekommt jedes Vertize eigene Texturkoordinaten oder sind sie alle gleich, da es ja nur eine Textur werden soll? Ich mein Ansatz richtig das der Vertex oben links 0 0 haben muss und unten rechts dann 64 64 (bei einem 64 x 64 Terrain) oder wird dann gekachelt da der Wert > 1 ist?

Ich hoffe ihr versteht was ich meine :roll:

danke schonmal Ludwig

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

2

07.04.2009, 16:07

Oberstes Eck (0,0) unterestes Eck (1,1) => die Vertizes dazwischen eben gleichmäßig teilen (mitte 0.5,0.5).
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

3

07.04.2009, 16:43

danke ... nach dem kleinen Schupser in die richtige Richtung klappt alles
für alle mir der gleichen Frage, habe es so gemacht :

C-/C++-Quelltext

1
2
3
                //Texturkoordinaten setzen

                vertices[y*WIDTH + x].tu = ((float)y / WIDTH);
                vertices[y*WIDTH + x].tv = ((float)x / HEIGHT);

Werbeanzeige