Tesselation - neuer alter Kaffee

Enigma

Captain
Registriert
Apr. 2004
Beiträge
3.903
Schon vor Jahren hat man angefangen dynamisch skalierende Gemetrie in Spielen zu implementieren um etwas flexibler als die vorgefertigten LOD-Level zu sein.

1999: In Quake 3 nannte man das Curved Surfaces. Jeder erinnert sich noch an die organischen Oberflächen in Quake 3 die je nach Rechenpower fast rund aussahen. Diese waren damals schon sehr ressourcenschonend, wurden jedoch eher selten eingesetzt - vermutlich weil es für Entwickler zu komplex war.

2001: Ati hat das Potential erkannt und TruForm vorgestellt.

2002: In DX9 wurde Displacement Mapping als mächtigere Alternative zum BumpMapping eingeführt. Obwohl Bumpmapping aufgrund der besseren Performance immernoch sehr stark verwendet wird (Doom 3), findet man Displacement Mapping in Kombination mit Parallax Mapping an vielen Wall-Texturen, welche die Struktur besser darstellen. So richtig aufgefallen, ist es mir aber erst Jahre später in FEAR (2005).

2007: AMD baut etwas verfrüht eine Tesselationeinheit in die 2900er Serie ein. Damals hat es noch nicht wirklich jemand interessiert.

2009: Aus dem Nichts taucht eine neue Engine namens Unigine auf und setzt sehr stark auf Tessellation. Gleichzeitig kommt in der parallel erscheinenden GTX 400er Serie eine relativ schnelle Tessellation Einheit zum Einsatz - drei Generationen später als bei AMD.

Jeder ist fasziniert und beschwert sich über die schwache Tesselation-Leistung der ATI Grafikkarten und führt dies als Argument gegen ATI an. Geht euch dieses ahnungslose gejammer nicht auch auf den Sack? Mich interessiert viel eher, warum sich Tessellation nicht früher durchgesetzt hat. Ich bin kein Spieleprogrammierer und kann es mir daher nicht wirklich erklären. Lag es an den Tools? Oder ist die Technik allgemein sehr unattraktiv für Programmierer?
 
Ganz am Anfang von 3D Grafikkarten anno 1996 gab auch schon Bump Mapping was auch einen gleichen Effekt erzeugte.
Keine Ahnung warum sowas immer wieder neu aufgekocht werden muss.
 
Zuletzt bearbeitet: (upps: himmel vergessen)
Ich denke es liegt daran, dass mit der Zeit der Algorithmus verfeinert wurde und mit steigender Rechenkapazität der GPUs wurde der Gedanke Basis-Geometrie nahezu unendlich fein Auflösen zu können immer interessanter. Dazu kam wohl noch dass den Chipfertigern (AMD und Nvidia) langsam die Marketinginstrumente ausgingen und eine neue Technik hermusste...und damit die Rückbesinnung auf Tesselation.
Nebenbei hatte wohl auch die Microsoft ein wörtchen mitzureden als sie Tesselation in den DirectX-Standard aufnahmen.
Für den Programmierer ist der mehraufwand meines Wissens nach eher moderat.
 
Enigma schrieb:
Jeder ist fasziniert und beschwert sich über die schwache Tesselation-Leistung der ATI Grafikkarten und führt dies als Argument gegen ATI an.

Meiner Beobachtung nach, sind die, welche sich am lautesten "beschweren" diejenigen, welche sich beizeiten eine "ach so zukunftsichere" GTX480 angelacht haben ("da hat man riesiges zukunftspotential bzgl Tesselation":freak:) und jetzt in jedem Grafikkartenthread schreiben, dass sich unbedingt auf eine GTX580 umsteigen müssen, da sie ja sonst nicht mehr ruhig schlafen können!:p

Schon etwas eigenartig manche Boardies!
 
Zuletzt bearbeitet:
Ist doch irgendwie immer so, es werden irgendwelche neuen tollen sacheneingeführt die man ja umbedingt haben muss.
Man denke nur an alle LCD TVs mit HD. Wie viele haben sowas zuhause aber immer noch ganz normales Tv Signal und wieviel HD Sender es gibt hier in ger ist ja auch nicht die Welt.

Was bringen die ganzen neuen Sachen wenn sie noch gar nicht eingestzt werden oder besser gesagt genutzt werden. Tolle Benches sind ja das eine aber erst wenneien Technik wirklich viel eingesetzt wird braucht man es wirklich
 
Ich glaube das hat schon seinen Grund. Es geht ja immer darum wie man die Leistung der GPU investiert um die beste visuelle Verbesserung zu erzielen. Damals gabs noch genug andere Baustellen die die Leistung eher benötigten als Tesselation.

Heute sind wir an einem Punkt wo die visuellen Verbesserungen so marginal sind daß es sich wieder lohnt sowas zu pushen, sei es weil es "vermarktbar" ist und weil es, richtig angewandt, durchaus sinnvoll wäre.
Ob es sich durchsetzt hängt halt immer auch von den Softwareentwicklern ab und ob sich der Focus wieder verschiebt.
 
@TE: Ati hat schon seit sieben Generationen Tesselation vorzuweisen. Nicht nur seit dem R600.
Wir wären technologisch schon weiter, wenns den grünen Bremser nicht gäbe. Ich sag nur DX10.1.
 
Zuletzt bearbeitet:
Ganz einfache Antwort -> DX11!

Da durch DX11 beide Hersteller (grün und rot) Tesselation in Hardware verbauen müssen um den DX Standard gerecht zu werden wird es sich als Standard etablieren. Solange es nur ein Hersteller bringt wird es sehr schwer werden sowas durchzusetzten. Anderes Beispiel wäre Physx, würde MS sagen das zu DX12 Physx zum Pflichtenheft gehören muß dann würde die Verbreitung einen enormen schub erfahren. ATM hält es sich ja leider nur weil Nvidia Gott sei Dank massig Geld reinpumpt, warum AMD/ATI das nicht machen kann ich nur spekulieren. Aber um auf die Frage zurück zu kommen der Grund ist DX11.
 
Was denkst du hat NV dafür getan? Aegia für ein paar "Pfennige" gekauft das wars. Sie haben keine große Meisterleistung bei PhysX vollbracht, indem sie etwas komplett neues erfunden haben. Sie haben es sich erkauft mehr nicht.
 
Kannst du lesen?

Ich quote mich mal und markiere das für dich wichtige fett damit du es nicht nochmal übersiehst:

Anderes Beispiel wäre Physx, würde MS sagen das zu DX12 Physx zum Pflichtenheft gehören muß dann würde die Verbreitung einen enormen schub erfahren. ATM hält es sich ja leider nur weil Nvidia Gott sei Dank massig Geld reinpumpt, warum AMD/ATI das nicht machen kann ich nur spekulieren.
 
@TE: Ati hat schon seit sieben Generationen Tesselation vorzuweisen. Nicht nur seit dem R600.
Wir wären technologisch schon weiter, wenns den grünen Bremser nicht gäbe. Ich sag nur DX10.1.

Wären wir nicht, da Tesselation erst mit DX11 im Standard enthalten ist. Übrigens laut AMD das wichtigste DX11 Feature. Das hat man selber zum HD5xxx Launch noch gesagt. Allerdigs nur solange, bis die GTX4xx Reihe bei Nvidia erschienen ist und man mit Erstaunen festgestellt hat, dass die doch tatsächlich dafür eine richtig starke Hardwareeinheit haben.

Was denkst du hat NV dafür getan? Aegia für ein paar "Pfennige" gekauft das wars. Sie haben keine große Meisterleistung bei PhysX vollbracht, indem sie etwas komplett neues erfunden haben. Sie haben es sich erkauft mehr nicht.

Das ist doch vollkommen wurscht ob ein Hersteller für ein Feature Geld bezahlt und es einkauft, indem er eine Firma übernimmt oder ob er es selber entwickelt. Für beides muss er Geld in die Hand nehmen und eine Investition tätigen. Die Meisterleistung besteht dann eben darin, Trends zu erkennen und im Zweifelsfall sich das Know-how schnell einzukaufen.

Ich stell mich doch auch nicht hin und sage, dass ATI mit dem R300 keine Meisterleistung vollbracht hat. Der war in großen Teilen hinzugekauft mit der ArtX Übernahme damals und hat ATI vor dem totalen Abstieg gerettet.
 
Schlimm find ichs immer wieder wenn Leute Tesselation mit DX11 gleichsetzen. DX11 ist schließlich mehr als Tesselation. Mag sein dass Nvidia in Tesselation Kreise um AMD zieht aber im Vergleich HD6870 und GTX470 ist die GTX in DX11 grade mal 1%-5% schneller als die AMD. Performancerating nach API Aber immer wieder liest man man müsse sich ne Nvidia kaufen wegen DX11 :freak:

Zu Physx: AMD wäre dämlich Physx zu implementieren obwohl das sicherlich kein großer Aufwand wäre. AMD müsste es dann lizensieren, würde seinem Konkurrenten auch noch finanziell unterstützen und wäre in Sachen Physx total von Nvidia abhängig. Abgesehen davon finde ichs echt lächerlich. Physx ist damals auch daran gescheitert, dass man eine extra Karte brauchte. Jetzt stecken sich die Leute freiwillig ne 2. Nvidia in den Rechner nur für ne Hand voll Spiele.
 
Zuletzt bearbeitet:
Raucherdackel schrieb:
@TE: Ati hat schon seit sieben Generationen Tesselation vorzuweisen. Nicht nur seit dem R600.
Wir wären technologisch schon weiter, wenns den grünen Bremser nicht gäbe. Ich sag nur DX10.1.

Und was bringt uns das ? Immerhin hat sich auch bei Cypress gezeigt, dass der Geometridurchsatz real eh viel zu niedrig wäre, um es ernsthaft zu implementieren

Mag sein dass Nvidia in Tesselation Kreise um AMD zieht aber im Vergleich HD6870 und GTX470 ist die GTX in DX11 grade mal 1%-5% schneller als die AMD. Performancerating nach API Aber immer wieder liest man man müsse sich ne Nvidia kaufen wegen DX11
Alter Test. Zählt also nicht mehr, weil noch mit Quality gebencht wurde.
 
Dai6oro schrieb:
Schlimm find ichs immer wieder wenn Leute Tesselation mit DX11 gleichsetzen. DX11 ist schließlich mehr als Tesselation.

Was denn zum Beispiel? Das Argument hört man immer wieder, aber welche Features das sein sollen, hat noch keiner gesagt.
 
Texturkompressionen sind z.B. ein sehr nützliches DX11 Feature, welche die Leistung enorm beeinflussen kann. Immerhin ist man in einigen DX11 spielen dadurch schneller als in DX9.
 
Hier gibts ne schöne Übersicht der features von DX11Link Übersicht

Features:

-Multi Threating
-Tesselation
-Order Independent Transparency
-Post Processing
-Contakt Hardened Shadows
-Compute Shader
-Dynamic Shader Linkage
-Texturkompresssionen
 
Post Processing, aber nur in Form von Advanced DOF, was auch saumäßig viel Leistung zieht .
Ansonsten ist Post Processing nur ein allgemeiner Ausdruck für eine Gruppe von Effekten, wie SSAO, Motion Blur, etc.

edit:
Multi Threading kann man unteranderem zu Compute Shader zählen. Compute Shader gibt es aber auch für DX10 Karten. Nur es ist mit dem 4.0 Modell ein bisschen eingeschränkt.
Order Independent Transparency wurde bisjetzt leider noch nicht umgesetzt.
 
Zuletzt bearbeitet:
terraconz schrieb:
Ganz einfache Antwort -> DX11!

Da durch DX11 beide Hersteller (grün und rot) Tesselation in Hardware verbauen müssen um den DX Standard gerecht zu werden wird es sich als Standard etablieren. Solange es nur ein Hersteller bringt wird es sehr schwer werden sowas durchzusetzten. Anderes Beispiel wäre Physx, würde MS sagen das zu DX12 Physx zum Pflichtenheft gehören muß dann würde die Verbreitung einen enormen schub erfahren. ATM hält es sich ja leider nur weil Nvidia Gott sei Dank massig Geld reinpumpt, warum AMD/ATI das nicht machen kann ich nur spekulieren. Aber um auf die Frage zurück zu kommen der Grund ist DX11.

So einfach ist die Antwort nicht. Dx11 ist nur ein Ergebnis. Man konnte sich auf verschiedene Spezifikationen einigen und hat diese in Dx11 festgelegt. Die richtige Antwort müsste also lauten "Weil man sich endlich darauf einigen konnte" Dx11 ist nur die Konsequenz daraus.

Physix ist ein Markenbegriff und beschreibt eine Technik die so in zig Spielen auch durch andere Algorythmen verwirklicht wird (z.B. Havok oder Engine-eigene Physik Berechnungen).

In Dx11 ist ja schliesslich auch nirgends die Rede von der direkten Programmierbarkeit von CUDA-Cores Oo.
Es geht um Shader, ganz egal wie Nvidia sie gerne nennt. :)

Die Frage, warum ATI da nicht mitmacht ist schnell geklärt. Man will einen offenen Standart an dessen (Weiter-)Entwicklung man auch Anteil haben darf und nicht irgendeinen lizensierten Mist vom größten Konkurrenten.

Richthofen schrieb:
Wären wir nicht, da Tesselation erst mit DX11 im Standard enthalten ist. Übrigens laut AMD das wichtigste DX11 Feature. Das hat man selber zum HD5xxx Launch noch gesagt. Allerdigs nur solange, bis die GTX4xx Reihe bei Nvidia erschienen ist und man mit Erstaunen festgestellt hat, dass die doch tatsächlich dafür eine richtig starke Hardwareeinheit haben.

Wären wir in der Hinsicht eben schon, da Nividia sich, als die Spezifikationen von Dx10 entstanden gegen eine Implementierung von Tessellation ausgesprochen hat, da sie eben noch keine Hardware dafür hatten.

Und wo sagt ATI erst, es wäre der wichtigste Teil und dann es wäre nicht so wichtig. Belege?

Das einzige was mir in den Sinn kommt ist Ati´s Standpunkt, dass Tessellation bis zu dem Grad Sinn macht an dem 3 Pixel zu einem Dreieck verbunden werden, was ein (zumnindest für mich) recht logischer Ansatz ist.

Wenn du dir mal z.B. Stone Giant mit maximaler Tessellation und Drahtgitter ansiehst, wirst du feststellen, dass dermassen "übertesselliert" wird, das die einzelnen Gitter teilweise nur als Fläche zu erkennen sind. Das kostet Leistung und bringt 0 visuellen Mehrwert, da du ja nur so und so viele Pixel zur Verfügung hast, welche dir angezeigt werden.

Ausser Frage steht, dass Nvidia die derzeit leistungsfähigere Tessellation bietet.

Da es für mich persönlich aber nicht sein muss, dass jeder Pixel noch dreimal auf Subpixelebene tesseliert wird, hoffe ich auf eine Art Slider in zukünftigen Spielen mit dem man den Tessellationsgrad an die Leistung des eigenen PCs anpassen kann.



Zu der allgemeinen Frage warum Tessellation so wichtig ist:

Über die letzten Jahre wurden grafisch fast nur an Effekten geschraubt. Geometrie wurde vernachlässigt. Bump Mapping ist beispielsweise nichts anderes als der Versuch einer eigentlichen planen Fläche eine Tiefenwirkung zu verleihen. Die Geometrie wird also gefaked, da die eigentliche Fläche 2D ist.
Mit Tessellation lässt sich nun eine Steigerung der echten Geometrie verwirklichen, ohne Tricks und unzufriedenstellende Ergebnisse.
Für Entwickler hat die Sache den Vorteil, dass man sich für ein Dx11 only Spiel die Erstellung von mehreren LOD Ebenen sparen kann, da der Polygoncount stufenlos tesselliert werden kann.
 
Zurück
Oben