Diskussion:Triangulation

Aus DGL Wiki
Wechseln zu: Navigation, Suche

@Flash: ich nehme an bei dem Artikel hast du auch einiges aus dem Uni-Script? :-).

Das triangulieren passiert auf der Grafikkarte und dort ist es nicht mehr und nicht weniger als ein paar Vertices doppelt zu verwenden. Bei lauter Dreiecken hat man also irgend etwas wie:

for i = 1 bis Punkte: zeichne Dreieck( Punkt[i], Punkt[i+1], Punkt[i+2] ); i += 3;

Bei einem Triangle Strip etwa:

for i = 1 bis Punkte-2: zeichne Dreieck( Punkt[i], Punkt[i+1], Punkt[i+2] ); i += 1;

Bei einem Quad, Triangle Fan und natürlich auch bei einem Polygon sieht das nicht viel anders aus. Das ist natürlich irgendwie in Hardware implementiert aber da bin ich nicht so der Spezialist dafür. Dennoch ... wenn mir irgend jemand einreden möchte, dass die 2. Variante relevant länger braucht als die 1ste, dann sollte er dafür schon gute Gründe haben. Und bei der 2. Variante sparen wir natürlich viel Bandbreite auf unserem AGP Bus.

Also wenn man in Bezug auf OGL von Triangulation spricht, dann ist das eine der einfachsten Sachen der Welt. Wenn man von konkaven Polygonen (oder was auch immer) und Triangulation spricht, dann spricht man nicht mehr von OGL, weil OGL kann das nicht.

Wollte schon anfangen den Artikel um zu schreiben, aber irgendwie wird das dann bei mir ein 5 Zeiler oder sowas, das wollte ich dann auch wieder nicht ... also vielleicht lässt sich ja jemand einen schön ausgeschmückten 10-Zeiligen Text einfallen :-).

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


Nun das Wiki ist zwar OGL orientiert, aber hier gehts durchaus auch um techniken der allgemeinen Computergrafik.

--Flash 16:54, 7. Sep 2006 (CEST)

Stimmt schon, aber ich finde den Artikel halt etwas irritierend. Da heißt es zum einen: "Wenn ihr die Möglichkeit habt, dann baut eure Szene von Anfang an aus Dreiecken auf." was ich zu Beginn (bevor ich weiter las) so aufgefasst habe, dass man keine (konvexen) Polygone, Quads, Triangle-Strips und -Fans verwenden soll sondern Dreiecke, was natürlich üblicherweise falsch ist. Weiter unten heißt es dann aber doch dass man Tri-Strips und -Fans verwenden soll und da Polygon = Triangle Fan und Quad ~= Triangle Strip mit 4 Punkten bleibt für den obigen Satz (über das aufteilen in Dreiecke) nur noch die Vermutung dass da konkave Polygone gemeint sind. Über konkave Polygone wiederum steht nirgends etwas.

Das Problem mit dem Begriff Triangulation (wenn er nicht nur auf OGL bezogen sein soll) ist wohl der, dass er für ziemlich alles verwendet werden kann was irgendwie mit dem zerlegen von irgendwelchen Daten in Dreiecke zu tun hat. Daten können hier konvexe oder konkave Polygone sein, irgendwelche beliebigen Punktmengen die die Oberfläche eines Objektes beschreiben und was weiß ich noch alles. Wahrscheinlich wäre der Begriff auch dann angebracht wenn man ein teilweise transparentes Volumen (zB Rauch) mit Dreiecken darstellen möchte. Im Internet findet man unter diesem Begriff alles mögliche.

Ich habe jetzt auch mal die OGL-Spec nach dem Begriff Triangulation zu durchforstet, der kommt dort genau einmal vor nämlich da wo gesagt wird das man ein Polygon (für den Rasterizer) auch in Dreiecke zerlegen darf.

Das beste wäre es also vielleicht wenn man den Titel in Polygon Triangulation ändert und dann etwas von konkaven Polygonen erzählt und überhaupt nicht auf OGL eingeht, oder vielleicht noch ganz kurz die Anmerkung dass man das zerlegen eines Triangle-Strips, -Fans, Quads oder (konvexen) Polygon auch als Triangulation bezeichnen kann. Aber das mit der Geschwindigkeit sollte man halt ganz weg lassen oder vielleicht noch anmerken das Triangle-Strips, -Fans, ... schneller sind als einzelne Dreiecke (wegen Bandbreite).

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