Diskussion:glBegin

Aus DGL Wiki
Wechseln zu: Navigation, Suche

Lyrs ergänzung zu GL_POLYGON

Die Ergänzung ist mir erst jetzt aufgefallen. Könntest du vielleicht noch ein 2 Sätze dazu erklären? Die Sachen die Ich reingeschrieben hab kamen aus nem UniScript von mir. Aber kann durchaus sein, dass da Optimierungen ausen vor gelassen wurden.

--Flash 13:36, 6. Sep 2006 (CEST)

Uni-Script als OGL-Referenz ... uiuiui du traust dich was :-).

Uni-Theorie ist meist (bei mir wars zumindest so), dass ein Polygon auch konkav sein darf und diese Annahme übertragen sie dann gleich auf OpenGL. In OGL darf ein Treiber GL_POLYGON exakt gleich berechnen wie Triangle Fans. Ist ja auch hier sogar genau das selbe Bild bei beiden Varianten, und das nicht umsonnst denn sie sind auch gleich. Ich habe das zur Sicherheit damals auch ausprobiert, GL_POLYGON und GL_TRIANGLE_FAN waren bei mir exakt gleich schnell, so gleich das ich annehme, dass es ein und derselbe Funktionsaufruf ist (oder zumindest eine komplett identische Funktion). Nur wenn man in Wireframe zeichnet, dann ist natürlich GL_POLYGON ein klein wenig schneller, weil er weniger Linien zeichnen muss (nur den Rand nicht die Linien der Dreiecksgrenzen).

Dein Verständnisproblem liegt aber möglicherweise schon beim triangulieren wie mir gerade auffällt. Da diese Erörterung wohl eher dort rein passt, lies am besten auch dort weiter.

--Lyr 16:22, 7. Sep 2006 (CEST)


Also gibt es keine unterschiede zwischen GL_POLYGON und GL_TRIANGLE_FAN? Dann frag ich mich wieso immer wieder gesagt wird, GL_POLYGON sei extrem langsam. Ob das früher mal so war und das mittlerweile durch intelligente Treiber erledigt ist? --Flash 16:56, 7. Sep 2006 (CEST)

Also soweit ich die OGL-Spec verstehe kann es Unterschiede beim Rasterizer geben, also das die Interpolation der Farbwerte etwas "besser" berechnet wird als beim Triangle Fan. Wäre mir aber noch nie aufgefallen, also dieses "kann" wird wohl von den wenigsten Treibern wahr genommen. Habe ich aber auch nicht so sehr getestet.

Intelligentere Treiber? Nein, eher das Gegenteil. Möglicherweise war es früher so das die Farb- und Textur-Interpolation im Zeitalter von 2D-Grafik bei Polygonen besser war als beim Triangle Fan. Vielleicht ist es auch heute bei Grafikkarten die mehr auf 2D ausgelegt sind noch so (falls es soetwas noch gibt :-) ). Wie gesagt, am besten ausprobieren, ich habe damals nur recht triviale Polygone und Triangle-Fans zum testen verwendet (also ohne Textur und dergleichen). Aber ich bezweifle stark dass man auf mehr als sagen wir mal 5% der Grafikkarten einen merkbaren Unterschied (sowohl was Geschwindigkeit als auch Aussehen betrifft) erkennt.

"Dann frag ich mich wieso immer wieder gesagt wird, GL_POLYGON sei extrem langsam."

Das ist wohl etwas was man einmal hört und dann den "Newbies" unter die Nase reibt das man sich besser auskennt als sie, wodurch die "Newbies" dass dann später den anderen unter die Nase reiben. Also fang ich jetzt mal an den Leuten unter die Nase zu reiben, dass sie sich doch nicht besser auskennen :-).

--Lyr 05:25, 8. Sep 2006 (CEST)