Weil die Displaylisten unter bestimmten Bedingungen vom Treiber auf der Grafikkarte gespeichert werden. Der NVidia Treiber macht sogar für die ganze DisplayListe Frustum Culling. Wenn du maximale Geschwindigkeit willst, dann gibt's da noch Vertex Buffer Objecte als beste Lösung. Allerdings muß man die Daten da als Array und nicht so bequem mit glBegin/glEnd übergeben.
Registriert: Fr Mai 14, 2004 18:56 Beiträge: 804 Wohnort: GER/OBB/TÖL-WOR/Greiling
sehr schön, damit beschäftige ich mich auch gerade.
es ist also immer schneller, den glbegin....glend block in eine displayliste zu quetschen und diese dann aufzurufen, als es einzeln aufzurufen?
und vor allem: kann ich variablen in der displayliste lassen, zum beispiel bei glvertex3i(x,y,z) - da werden wahrscheinlich nur die werte gespeichert, die x,y,z zu dem zeitpunkt hatten, als die displayliste erstellt wurde?!
und zu guter letzt: wenn ich eine textur binde, und dann meine displayliste aufrufe, wird dann mit dieser textur gerendert? ich nehme an, ja?
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Displaylisten sind deshalb schneller, weil sie nach dem kompilieren auf der Graka liegen. Wenn man sie dann aufruft sind sie ja quasi schon da. Wenn man den inhalt nur 1x braucht dauerts aber mindestens gleichlang, weil die Befehle ja erstmal an die GraKa geschickt werden müssen. Erst ab dem 2. aufruf rentiert sich ne Displayliste.
Die Displayliste nutzt weiterhin die OpenGLstates. Das heist, wenn man ne andere Textur vor dem aufruf der DL bindet, wird die neue Textur genommen. In die Displaylisten werden nur bestimmte Befehle gespeichert. (siehe hier)
Tatsächlich werden die Sachen in ne Displayliste geschoben, die zur GraKa gesendet werden. Somit ist klar, dass bei glVerex3f(x,y,z); die aktuellen x,y,z Werte in die DL wandern. (Sonst bräuchte man ja keine VBOs )
Noch fragen
_________________ Blog: kevin-fleischer.de und fbaingermany.com
VBO sind Vertex Buffer Objects. Der nächste schritt in Sachen Obtimierung. Benutzt hab ich sie noch net. Die Idee dahinter ist aber, auch wieder Vertexdaten auf der GraKa abzulegen. Allerdings mit der Möglichkeit die Daten zu verändern. DIes gelingt, indem man angibt wie die Daten auf der GraKa abgelegt worden sind.
Mir fällt gerade auf, dass es keinen Artikel zu VBOs gibt. Also wer interesse und Ahnung hat: Hier gucken
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.