Ich generiere ein prozedurales Terrain mit (einem hausgemachten fBm basierend auf) Perlin-Rauschen als Höhenkarte. Um das Gelände unendlich zu machen, zeichne ich einen Teil davon neu, während sich die Kamera bewegt.
Es gibt zwei Alternativen:
- haben entweder mehrere (sagen wir 9) Höhenkarten-Texturen und drehen sie, während sich die Kamera bewegt;
- oder haben Sie nur eine Höhenkarte (sagen wir 9-mal größer) und zeichnen Sie bei Bedarf nur einen Teil davon neu.
Hinweis:
Die beiden Ansätze zeichnen jedes Mal genau die gleiche Anzahl von Pixeln neu.
Aber:
- Im ersten Fall muss ich 3 kleine Texturen binden und sie vollständig neu zeichnen, um eine Linie meines Gitters neu zu zeichnen.
- Im zweiten Fall binde ich die gesamte größere Textur und zeichne nur eine Linie darin neu.
Frage: Sollte ich erwarten, dass einer schneller ist als der andere? Hat glBindTexture
höhere Kosten für größere Textur?