[Gelöst] OpenGL DisplayLists vs. VertexBufferObject
-
Also ich hab da schon von beidem recht viel gehört nur weiß ich jetzt nicht genau welches der beiden für meine zwecke besser geeignet ist. Ehrlich gesagt sind meiner meinung nach displylists aufjedenfall einfacher zu verwenden... nur ist die frage ob sie bei meinem problem die beste lösung sind... Es geht um folgendes: Ich hab vor meine grafik engine mit ein paar andren leuten neu zu schreiben und wollte dabei für statische objekte die sich nur als ganzes drehen oder versetzen können displaykists verwenden.. sie hätten auch nicht enorm viele Dreiecke... Und ich wollte jetzt fragen ob sich das rentiert oder ob vertexbufferobjecte die bessere wahl sind.. leider weiß ich über diese nicht sooo viel und sie sind nicht ganz so einfach zu verwenden... außerdem ja ne extension und ich würde eigentlich lieber auf extensions verzichten denn die engine soll nicht unglaublich toll werden sondern mal das notigste können... nur bei meiner ersten hab ich da einfach mit schleifen die vertex daten in die pipeline geschickt und zwar eine nach der andren was ja sicherlich sehr langsam ist und (hab aber noch mehr verhaut... ganze kamera war falsch denn ich hab die projektionsmatrix verwendet und ja das ist müll!) ich möchte das jetzt ein wenig optimieren...
Bringt das etwas wenn ich da zuerst ne displaylist kompilier und dann zuerst die weltkoordinaten transformiere wohin und wie ich eben das objekt haben mag und dann die displylist aufrufe oder muss ich da auf das vertexbufferobject zurückgreifen??(Ich hoffe ich hab nicht zuviel falsch verstanden wegen displaylists und so und man kann die eh noch in verschiedenen laagen zeichnen...)
Danke schon mal im voraus
mfg Manuelh87
-
Hi,
also in meiner Engine hats auch nur statische Objecte mit recht vielen Punkten.
Für jedes Objekt wurde pro Textur/Material eine Displaylist erstellt und die Koordinaten der Punkte sind zum Mittelpunkt des Objects relativ.Vor dem rendern des Objects werden dann die entsprechenden Matrizen gesetzt und vor jeder Displaylist die entsprechende Textur gebunden.
Klappt so.
-
guckst Du hier:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-100854-and-highlight-is-.html
Meine Erfahrungen mit Displaylists und VBO: Die Resultate sind stark vom Treiber abhängig (Hersteller/BS), mal ist DL schneller, mal VBO.
-
Ja danke für eure Hilfe! Sieht so aus das ich bei DL bleib!!! Werd mir zwar auch VBO's besser ansehen aber DL ist eindeutig einfacher zu handhaben und bringt ja ziemlich gute Ergebnisse. Es geht mir nur darum das nicht die neue engine genauso mies von vornherein optimiert ist wie die alte!! Danke nochmal ich würd sagen das hat alle meine Fragen beantwortet

mfg Manuelh87