Christoph schrieb:
Nur mal so am Rande:
Pixel- und Vertexshader 3.0 (DX 9.0c) werden eine weitaus geringere Rolle spielen als die der Version 2.0. Zudem ist 3.0 ziemlich überflüssig, das es mindestens noch ein jahr dauern wird, bis überhaupt Spiele auf den Markt kommen, die 2.0 voraussetzen. Wenn die ersten Spiele nach 3.0 auf dem Markt erscheinen, sind R420 und nV40 eh wieder altbacken und mind. eine neue Generation ist erschienen. ATis nicht vorhandene Unterstützung vpn PS und VS 3.0 sollte also nicht überbewertet werden.
... und nicht unterbewertet.
Weil ATI weiterhin auf der 2-er Strecke bleibt, werden die 3-er es ein wenig schwerer haben. Aber ich fürchte, dass hier einiges durcheinander geworfen wird. Es hängt nicht so sehr davon ab, ob ATI 3.0 hat, oder nicht. Eigentlich nur, ob Nvidias 3.0-Implementierung effizient genug ist. Wenn ja, werden die Shader, bei denen es sich lohnt, noch mal mit dem 3_0-Profil kompiliert und sind ohne weiteres Zutun schneller. Shader Model 3.0 ist nicht einfach nur eine neue Pixelshader-Version, damit sind Design-Vorteile verbunden, die (effiziente 3.0-Implementierung voraus gesetzt) eine Menge Rechenaufwand sparen können.
ATI versucht es weiterhin mit dem Brute-Force-Weg. ATI bleibt vermutlich bei FP24. ATI hat keinen Zugriff auf Texturen im Vertexshader. ATIs Shader kennen keine konditionalen Sprünge. ATIs Pixelshader kleben weiterhin auf einem Dependent Read Limit von 4.
Jedenfalls kann man 3.0 nicht in die 1.4-Ecke stellen. Als 1.4 kamen, war eine völlig neue Syntax erforderlich. Von High-Level-Sprachen war noch nichts zu sehen. Die 3.0-Syntax ist der 2.0-Syntax sehr ähnlich, zudem werden die Shader inzwischen eh in Hochsprachen geschrieben. 3.0 zu unterstützen kostet den Entwickler praktisch keinen Aufwand. Etwas aufwändiger wird es, wenn man mittels 3.0 noch mehr Leistungsvorteile herauskitzeln möchte. Angesichts Nvidias gutem Dev-Support sehe ich da aber keine echten Hürden.
Schon heute gibt es Spiele, die für die volle Effekt-Palette Shader 2.0 voraussetzen. Vermutlich wird schon dann Spiele geben, die für volle Effekte 3.0 voraussetzen (bzw. wo die 2.0-Implementierung entweder spürbar langsamer, oder etwas weniger schön ist) bevor es ATI-HW zu kaufen gibt, die 4.0 beherrscht. 3.0 wollen die offensichtlich ganz auslassen. 4.0 orientiert sich allerdings an 3.0, und der 3.0-Standard ist praktisch um den NV40 gebaut.
Die Technologieführerschaft zeitweise aufzugeben spart zunächst Entwicklungsressourcen, bringt später jedoch Nachteile. NV ist an 4.0 schon einigermaßen dran, ATI krepelt noch bei 2.0 rum.
Wenn die Verwendung von den neuen PS_3_0-Features die Leistung erheblich drückt, dann bleibt es bei einem Checklist-Feature ohne echten Nutzen. Wir müssen warten und sehen, ob Nvidia es schon beim NV40 geschafft hat, gewisse Klippen zu umschiffen.