Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mi Jul 16, 2025 16:42

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: VBO und Displaylisten
BeitragVerfasst: Mi Mär 07, 2012 08:16 
Offline
DGL Member

Registriert: Do Apr 22, 2010 17:17
Beiträge: 543
Moin,

ich habe nun mein Modelrenderer auf VBO umgestellt und musste merken, das die VBOs je nach Scene ca 5-6fps langsamer sind als die Displaylisten.. Die CPU Auslastung bleibt in etwa gleich. Woran kann das liegen? Irgendwie verstehe ich auch die Aussage nicht "ab OpenGL 4 sind Displaylisten nicht mehr dabei".. wie genau sagt man denn das man die App in OpenGL 4 ausführen will? Schaltet der Treiber vielleicht irgendwie auf 2.0 runter weil ich Displaylisten irgendwo verwende?

Grüße,
Thomas


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: VBO und Displaylisten
BeitragVerfasst: Mi Mär 07, 2012 11:46 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
Thmfrnk hat geschrieben:
Moin,

ich habe nun mein Modelrenderer auf VBO umgestellt und musste merken, das die VBOs je nach Scene ca 5-6fps langsamer sind als die Displaylisten.. Die CPU Auslastung bleibt in etwa gleich. Woran kann das liegen? Irgendwie verstehe ich auch die Aussage nicht "ab OpenGL 4 sind Displaylisten nicht mehr dabei".. wie genau sagt man denn das man die App in OpenGL 4 ausführen will? Schaltet der Treiber vielleicht irgendwie auf 2.0 runter weil ich Displaylisten irgendwo verwende?

Grüße,
Thomas


Meine erste Vermutung wäre jetzt das du bei deinen VBOs größere Datenmengen/Frame zum GRAM schickst.

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: VBO und Displaylisten
BeitragVerfasst: Mi Mär 07, 2012 13:39 
Offline
DGL Member

Registriert: Di Okt 13, 2009 17:25
Beiträge: 365
Programmiersprache: C++
Wenn du nicht weißt, welche OpenGL-Version du gerade nutzt, dann heißt das eigentlich immer, dass du mit OpenGL < 3.0 arbeitest. Sonst ist nämlich extra Arbeit nötig beim Erstellen des Kontextes.

Beim Anlegen von Displaylisten kann es gut sein, dass der Treiber einige Optimierungen an den Daten vornimmt. Z.B., dass er die Vertices in einer für den Vertexcache günstigen Reihenfolge ablegt, oder dass er noch einen Indexbuffer anlegt (wobei das schon relativ aufwendig wäre). Diese Optimierungen muss man bei VBO / IBO manuell machen, kommt aber dafür potenziell sogar zu besseren Ergebnissen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: VBO und Displaylisten
BeitragVerfasst: Mi Mär 07, 2012 18:42 
Offline
DGL Member

Registriert: Do Apr 22, 2010 17:17
Beiträge: 543
Was genau muss denn gemacht werden damit ich OpenGL 4 habe? Ich nutze auch geometryshader etc. Funktioniert alles. Welche Vorteile hätte es explizit ogl4 zu implementieren?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: VBO und Displaylisten
BeitragVerfasst: Mi Mär 07, 2012 19:57 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
Soweit ich weiß reicht es aus wenn dein OGL Kontext in der entsprechenden Version aufsetzt (die Meisten libs haben dafür schon was).
Prinzipiell würde ich aber davon abraten, da die Vorteile definitiv nicht die teils sehr massiven Nachteilen ausgleichen. Das hängt aber natürlich
wiederum von dem ab was du machen willst....

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: VBO und Displaylisten
BeitragVerfasst: Mi Mär 07, 2012 22:10 
Offline
DGL Member

Registriert: Di Aug 09, 2011 07:33
Beiträge: 163
Programmiersprache: C/C++
Wenn ich mal meine Frage einschieben darf: Was erhofft man sich davon überhaupt? Das neue OpenGL setz ja vorallem auf Shader und viele alte Funktionen wurden entfernt (ich sag nur Fixed Function Pipeline) aber ich will nicht verstehen warum? Klar gab es Befehle wie glBegin usw. die durchaus raus können, da man damit nicht mehr wirklich vernüftig arbeiten kann aber es gibt doch Befehle wo ich das infrage stellen würde... zumal es die Arbeit erleichtert und auch für Einsteiger einfacher macht (wobei ich natürlich auch verstehe, dass man darauf eher weniger Rücksicht nimmt).


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: Majestic-12 [Bot] und 4 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.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.007s | 17 Queries | GZIP : On ]