Quadrate mit mehr als zwei Triangles bauen oder nicht?

Für Fragen zu Grafik APIs wie DirectX und OpenGL sowie Shaderprogrammierung.
Antworten
Eisflamme
Establishment
Beiträge: 412
Registriert: 26.05.2002, 17:42
Wohnort: Köln

Quadrate mit mehr als zwei Triangles bauen oder nicht?

Beitrag von Eisflamme »

Hi,

Ich habe mich gerade gefragt, ob es nötig ist, bei eine Quadrat mehr als zwei Triangles zu verwenden. Das macht bei klassische Lightning Sinn, weil es sonst dämlich aussieht. Aber eigentlich ist es doch heutzutage eher üblich per Pixel Lightning einzusetzen, oder? Reichen dann zwei Triangles oder sollte man auch aus anderen Gründen mehr nehmen?

Ist evtl. auch ein Spieledesign-Thema etwa, aber mich interessieren ja die 3D-programmiertechnischen Hintergründe, von daher hab ich's jetzt Mal hier hingepackt.;)

Danke schon Mal und viele Grüße!
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Quadrate mit mehr als zwei Triangles bauen oder nicht?

Beitrag von Krishty »

Üblicherweise sind zwei Dreiecke ausreichend; mit pro-Pixel-Beleuchtung sollten das verzerrungsfrei sein. Falls das Quadrat eine gewölbte Oberfläche annähern soll, muss aber u.U. weiter unterteilt oder gleich auf Normal-Maps zurückgegriffen werden (denn die Beleuchtung wird zwar pro Pixel durchgeführt, die Normalen werden aber immernoch zwischen den Vertices interpoliert).

Dann gibt es noch den Spezialfall, dass bei großen Dreiecken eine feine Unterteilung für bessere Performance sorgt, weil die GPU ihre Prozessoren besser auslasten kann. Irgendwelche XBox-360-Entwickler hatten da mal eine Präsentation, wo sie alle möglichen Unterteilungen getestet haben und die beste Performance für Vollbildeffekte bei sowas wie 8×6—17×9 Quads über den Bildschirm lag – hier reden wir aber wirklich nur von ein paar Prozent. (Umgekehrt geht die Performance auch den Bach runter, wenn deine Quads massenweise zu klein werden, z.B. bei Terrain ohne LoD.)

Wenn deine Dreiecke alle hintereinander aufgefächert wären, wären kleine wahrscheinlich auch performanter, weil es dank Early-Z-Culling nicht so viel Overdraw gäbe. Das ist aber auch schon extrem konstruiert.

Generell gilt, dass nur so wenig Dreiecke gerendert werden sollten, wie zum Erreichen des Looks notwendig sind.

Gruß, Ky
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Eisflamme
Establishment
Beiträge: 412
Registriert: 26.05.2002, 17:42
Wohnort: Köln

Re: Quadrate mit mehr als zwei Triangles bauen oder nicht?

Beitrag von Eisflamme »

Okay, super. Das beantwortet meine Frage :) Dann macht es ja auch Sinn, bei einem Terrain z.B. umso mehr Triangles zu verwenden, umso gewölbtert der Teil ist. Aber ich glaube, das ist ja sowieso ein alter Hut.
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Quadrate mit mehr als zwei Triangles bauen oder nicht?

Beitrag von Krishty »

Ja; heutzutage kann man sich das eh besser direkt von der Hardware aus einer Heightmap raustesselieren lassen.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
mike1906
Beiträge: 20
Registriert: 13.07.2010, 10:51

Re: Quadrate mit mehr als zwei Triangles bauen oder nicht?

Beitrag von mike1906 »

Ich denk mal physik/spielmechanik könnte ein thema sein um mehr tris pro quad zu nehmen (zerberstende fensterscheiben, wände, etc.) oder gibts da schon andere techniken?
Antworten