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

22.06.2012, 19:36

OpenGL Tilemap perfomance

Hi,
bis jetzt habe ich Tiles immer gnadenlos jeden Frame neu gezeichnet aber nun denke ich (ohne bestimmten Anlass) darüber nach das perfomancetechnisch zu verbessern. Grundsätzlich fallen mir dazu 3 verschiedene Möglichkeiten ein:
  • So weitermachen wie bisher also alle Renderbefehle zum Tileszeichnen in eine DisplayList packen und die jeden Frame aufrufen
  • Die gesamte Tilemap in eine große Textur und diese anzeigen (natürlich nur was auch gesehen werden kann)
  • Die Tilemap in Chunks aufteilen, die einzelnen Chunks in Texturen und diese auf der Festplatte temporär speichern und laden wenns nötig ist.
Was haltet ihr von den Möglichkeiten oder fällt euch eine bessere ein?
Mfg Helco

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

2

22.06.2012, 19:38

Ich mach's mit einem Vertex Buffer.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

3

22.06.2012, 20:30

Jap. Einfach in ein VBO packen...

DeKugelschieber

Community-Fossil

Beiträge: 2 641

Wohnort: Rheda-Wiedenbrück

Beruf: Software-Entwickler

  • Private Nachricht senden

4

22.06.2012, 21:38

DisplayList? Das ist wohl etwas veraltet... ich packe immer einfach alles in ein VBO und culle dann nicht benötigte Teile weg.
Dabei kannst du auch mehrere Tiles zu "chunks" zusammen packen.

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

5

22.06.2012, 21:48

Ich schliesse mich an.
Displaylisten sind nun wirklich nicht mehr modern.

Das als Textur zu rendern, stelle ich mir sehr ungeschickt vor.
Da geht sehr viel Grafikspeicher flöten. Und was passiert wenn der Spieler zb. zoomt? Da würde es dann recht pixelig zugehen... ^^

Werbeanzeige