|
Community Links |
Interessengemeinschaften |
Benutzerliste |
Foren durchsuchen |
Stichwortsuche |
Erweiterte Suche |
Uns unterstützen |
Shoppen bei Amazon |
Spende per Patreon |
Spende per PayPal |
Spende per Steady |
alle Möglichkeiten |
Gehe zu... |
![]() |
|
Themen-Optionen
![]() |
Ansicht
![]() |
![]() |
#1 (im Thread / einzeln) |
3DCenter Crew & 3D-Guru
Registriert: 2001-07-27
Beiträge: 43.744
|
VertexShader 2.0 vs. 1.1
In den letzten Tagen beschäftigte mich u.a. folgende Frage: Wieviel Praxisnutzen bringt VS.2.0 von der Funktionalität her? Dass die T&L-Leistung auf DX9-HW höher ist als bei DX8-HW ist, ist schon klar. Was aber bringen die neuen Befehle, bzw. die erweiterte Befehls-Anzahl?
Konkret: Alles, was man "in nächster Zeit" (bis ca. Mitte 2005) so "brauchen" könnte, wäre das auch mit VS.1.1 schon machbar, oder böte 2.0 da einen echten Mehrnutzen? . |
![]() |
![]() ![]() |
![]() |
#2 (im Thread / einzeln) |
Insane Member
Registriert: 2002-08-16
Beiträge: 19.314
|
Ich habe zwar bei weitem nicht die Kenntnisse, wie einge anderen hier, aber das habe ich mich auch schon gefragt.
Insbesondere der Weg von NVidia, die Funktionalität ihrer VS so auzubohren, bedeutet ja enorme Entwicklungskosten, die sich erstmal für den Kunden (Gamer) rechnen müssen und ich denke, dass Du dich auf den Nutzen in Spielen beziehst. Fortschritte im AA-Bereich und bei Texturfiltern wären jedenfalls sofort greifbar gewesen. ... ich werde mal die Diskussion verfolgen. ![]()
Legt euch nicht mit ÜBER an!
![]() |
![]() |
![]() ![]() |
![]() |
#3 (im Thread / einzeln) |
3DCenter Crew & 3D-Guru
|
Bei den neuen Befehle gibt es zwei Gruppen arithmetic und Flow Control. Wobei die neuen arithmetic Befehle fast ausschliess nur Makros sind. Dadurch wird lediglich eine verkleinerung des Shadercodes erreicht und möglicherweise den Treibern zusätzliche optimierungs möglichkeiten gegeben.
Das Interesante sind die Flow-Control Befehle. Man kann damit zwar nicht unbedingt neue Effekte erreiche aber die bekannten mit Teilweise weniger aufwand erreichen. Beispiel: Braucht man innerhalb des Shadercodes eine Schleife so muss man diese bei den 1.1 Shader komplett aufrollen und für jede mögliche Anzahl von Durchläufen einen eigenen Shader schreiben. Mit den 2.0 Shader schreibt man nur noch einen Shader und kann die Anzahl der Durchläufe pro Primitive festlegen mit den 2.0+ sollte es sogar pro vertex möglich sein. Als folge daraus kann man sagen das VS 2.0 sich positive auf die Performancen auswirken weil man Shaderwechsel minimieren kann und dem entwickler arbeit sparen weil es in Summe weniger Shader schreiben muss. |
![]() |
![]() ![]() |
![]() |
#4 (im Thread / einzeln) |
Admiral Member
|
Originally posted by Demirug heisst das jetzt, die vs 2.0 wirken sich "nur" auf die performence aus oder noch auf andere dinge? ich mein das würde ja heissen, ich kann mit meiner 4200er dann dx9 spiele auch "komplett" sehen?
"Es sagt viel über die Welt aus, mein Kind, sagte der Vater zum Knaben, dass die Dummen glücklich sind und die Schlauen Depressionen haben."
Geändert von starfish (2002-12-04 um 19:49:04 Uhr) |
![]() ![]() |
![]() ![]() |
![]() |
#5 (im Thread / einzeln) |
Admiral Member
Registriert: 2001-09-05
Ort: Essen
Beiträge: 3.165
|
Originally posted by starfish7985 Fazit: Nein, keine DX9 Effekte auf GeForce4 Karten. |
![]() ![]() |
![]() ![]() |
![]() |
#6 (im Thread / einzeln) |
3DCenter Crew & 3D-Guru
|
Was die Makro befehle angeht so werden diese auch schon bei den 1.1 Vertexshadern eingesetzt. Dort hat man nur anstat einer Makro anweisung die entsprechende Anweisungssequenz benutzt.
Die Flow Control Befehle sind aber etwas vollkommen neues und können auch nicht direkt von den DX8 Shadern (1.1) emuliert werden. Die Entwickler müssen solche Schader dann noch einmal für die Version 1.1 erstellen. Bei diesem Vorgang entstehen aus einem 2.0 Shader dann entweder mehrer 1.1 Shader was dann dazu führt das man öfter einen Shaderwechsel durchführen muss (schlecht für die Performance) oder der 1.1 Shader braucht viel mehr takte als der ursprüngliche 2.0 Shader (auch schlecht). Als Alternative bleibt noch das man den Shader von der CPU emulieren läst was aber in der Regel zu noch schlechteren ergebnissen führt. DX9 Spiele werden sich aber sowieso eher über den Pixel Shader definieren und dort sind die möglichkeiten ein PS 2.0 Programm auf einer DX8 Karte zum laufen noch viel eingeschränkter als bei den Vertex Shader. Teilweise ist es sogar schlicht unmöglich (ausser man gibt sich mit einer Diashow zufrieden). Also gibt wie auch schon in der Vergangenheit. Keine DX a Spiele auf DX b Karten wenn a > b. |
![]() |
![]() ![]() |
![]() |
#7 (im Thread / einzeln) |
Admiral Member
|
gabs den früher schon (so zu dx5 zeiten (war ja imho das erste richtige windows 9x dx)) karten die explitzit für ein dx entwickelt wurden?
die nv1 oder die voodoo1 / 2? |
![]() ![]() |
![]() ![]() |
3dfx Voodoo5 5500 |
Öffentliches Profil ansehen |
Mehr Beiträge von 3dfx Voodoo5 5500 finden |
![]() |
#8 (im Thread / einzeln) |
3DCenter Crew & 3D-Guru
|
Originally posted by Wolfsheim1983 MS hat natürlich bei der Spezifikation von DX mit den Chipherstellern gesprochen aber scheinbar nicht mit den Entwicklern den die D3D API war vor der Version 7 ein Horror für die Entwickler. Mit der Version 8.0 wurde es dann recht gut. Wenn man sich die Situation anschaut scheint auch die Version 8.0 die erste zu sein die als Basis für Chipentwickler gedient hat. Anders kann ich mir die plötzliche Schwemme an DX8 Chips nicht erklären. Die sogenannten DX7 Chip sind in der Ausprägung zu unterschiedlich um da ein klares gemeinsames Bild zu erkennen. |
![]() |
![]() ![]() |
![]() |
Lesezeichen |
Ansicht |
![]() |
![]() |
![]() |
|
|