Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

PCGH-Redaktion

Kommentar-System
Teammitglied
Jetzt ist Ihre Meinung gefragt zu Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

Microsoft hat zur GDC 2019 ein neues Feature für seine Low-Level-API DirectX 12 angekündigt: Variable Rate Shading. Spieler könnten die Funktion bereits von Nvidias Turing-Grafikkarten kennen, die diese schon früher über herstellereigene Erweiterungen zur Verfügung stellen. Microsoft vereinheitlicht den Ansatz und unterstützt das Ganze herstellerübergreifend. Intels Ice Lake wird explizit angesprochen.

Bitte beachten Sie: Der Kommentarbereich wird gemäß der Forenregeln moderiert. Allgemeine Fragen und Kritik zu Online-Artikeln von PC Games Hardware sind im Feedback-Unterforum zu veröffentlichen und nicht im Kommentarthread zu einer News. Dort werden sie ohne Nachfragen entfernt.

lastpost-right.png
Zurück zum Artikel: Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing
 
AW: Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

Diese "herstellereigene Software-Lösung" von Nvidia ist einfach eine Vulkan-Extension wie jede andere auch (VK_NV_shading_rate_image).

Mir geht es massiv auf den Sack, dass Microsoft alles, was Nvidia sich so einfallen lässt, direkt in D3D zementiert. Ja, toll, ist jetzt Teil des Core-APIs. Wie viele Hersteller unterstützen das ganze bereits? Genau, einer. Genau so viele wie die Vulkan-Extension. Werden Spiele, die das D3D12-Feature jetzt nutzen, auch ohne weiteres auf Intel/AMD funktionieren, wenn deren Hardware es denn irgendwann mal unterstützt? Wahrscheinlich nicht, kann ja im Moment keiner testen, und niemand wird das Risiko eingehen, dass sein Spiel in drei Jahren einfach nicht mehr auf kommenden GPUs funktioniert. Haben alternative Hardware-Implementierungen den Freiraum, irgendwas anders/besser zu machen als Nvidia? Nein, und wenn doch, kann man diese über die API nicht ansprechen.
 
AW: Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

Mir geht es massiv auf den Sack, dass Microsoft alles, was Nvidia sich so einfallen lässt, direkt in D3D zementiert.

Finde ich jetzt aber nicht so schlecht, so ist das doch für Intel und AMD schon mal als Vorgabe für zukünftige GPU´s in Microsofts Featurelevels gegossen oder nicht?
 
AW: Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

Finde ich jetzt aber nicht so schlecht, so ist das doch für Intel und AMD schon mal als Vorgabe für zukünftige GPU´s in Microsofts Featurelevels gegossen oder nicht?

Im Endeffekt gibt es doch nur eine Vorgabe an Befehlen, die der Treiber erkennen und umsetzen können muss. Wie das in Hardware implementiert ist, ist doch eine andere Sache. Und besser in D3D als in Gameworks, oder?
 
AW: Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

Wie das in Hardware implementiert ist, ist doch eine andere Sache. Und besser in D3D als in Gameworks, oder?

Naja, AMD und Nvidia sollten schon irgendwo an einen gemeinsamen Standard arbeiten, wie das dann konkret in Hardware umgesetzt ist, kann doch auch weiterhin verschieden sein, oder etwa nicht? Stichwort Async compute, Preemption usw, oder nicht? Kann ja auch als optionales Feature nebenher laufen.
Die Vulkan Extension ist prinzipiell erstmal eher Nvidias Ding, ich wäre langfristig dafür, dass sich dann alle drei Hersteller die Implementierung von MS zur Gemüte führen, denn Vulkan wird sich ja am PC eh nicht durchsetzen, jedenfalls darf man davon ausgehen.
 
AW: Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

Diese "herstellereigene Software-Lösung" von Nvidia ist einfach eine Vulkan-Extension wie jede andere auch (VK_NV_shading_rate_image).
Es ist eine Extension für Vulkan, OpenGL und mehr.... teil von Spir-V was unter den ganzen liegt.

Und das es in die Standards übernommen wird hat den Vorteil das es eben eine Standard gibt anhand dessen man sich richten kann.
Oder muss ich da an GL_AMD_vertex_shader_tessellator erinnern?
 
AW: Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

Und das es in die Standards übernommen wird hat den Vorteil das es eben eine Standard gibt anhand dessen man sich richten kann.
Vielleicht erstmal abwarten, bis es andere Hersteller implementieren, und dann nen gemeinsamen Standard zurechtbasteln, der meinetwegen auch auf dem, was Nvidia entwickelt hat, aufbaut?
 
AW: Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

...Werden Spiele, die das D3D12-Feature jetzt nutzen, auch ohne weiteres auf Intel/AMD funktionieren, wenn deren Hardware es denn irgendwann mal unterstützt? ...

Genau das ist doch der Sinn dahinter dass man einen Standard definiert. Es wird ein Featureset festgelegt welches Entwickler ansprechen können und GPU Hersteller müssen dann gucken dass sie diese Features über den Treiber unterstützen. Wird die Funktion über die D3D12 implementiert, dann läuft es auf allen GPUs die diese Funktion unterstützen (was aktuell Nvidias Turing und Intels Ice-Lake iGPU sind). Die Alternative ist es einfach nur für Nvidia zu implementieren (die investieren noch immer viel Geld damit deren Techniken auch verwendet werden) und alle anderen Hersteller gucken doof aus der Wäsche, selbst wenn ihre GPUs es zur selben Zeit oder später mal können.

Zu sagen dass jeder Hersteller erstmal sein eigenes Ding machen soll, was den Markt stark fragmentiert und man als Nutzer dann immer gucken muss welches Spiel, welche Features der Hersteller unterstützt, macht für mich keinen Sinn. Das wäre dann wie anfang der 90er Jahre wo die einen Sachen nur im Softwaremodus unterstützt wurden, andere nur in D3D, wieder andere in OpenGL und wieder andere Dinge in Glide.

Auch haben die Hersteller noch immer Freiraum in der Implementierung, da sie das Feature in ihren Treibern und Hardware umsetzen müssen. Das Spiel schickt über die API ja nur die Anfrage, dass ein Cluster aus 16x16 Pixeln einen Shaderpass haben möchte und es liegt dann am Treiber diese Anfrage gescheit für die Hardware zu übersetzen.
 
AW: Variable Rate Shading: DirectX-12-Erweiterung für Intel Ice Lake & Nvidia Turing

Naja, AMD und Nvidia sollten schon irgendwo an einen gemeinsamen Standard arbeiten, wie das dann konkret in Hardware umgesetzt ist, kann doch auch weiterhin verschieden sein, oder etwa nicht? Stichwort Async compute, Preemption usw, oder nicht? Kann ja auch als optionales Feature nebenher laufen.
Die Vulkan Extension ist prinzipiell erstmal eher Nvidias Ding, ich wäre langfristig dafür, dass sich dann alle drei Hersteller die Implementierung von MS zur Gemüte führen, denn Vulkan wird sich ja am PC eh nicht durchsetzen, jedenfalls darf man davon ausgehen.

Der gemeinsame Standard ist das jeweilige API-Featureset, das jede Hardware möglichst vollständig erfüllen sollte. Wie das passiert, ist dem Hardwarehersteller überlassen. Optionale Features sind halt immer blöd, weil das immer speziell beim Programmieren beachtet werden muss, aber Unterschiede wird es vermutlich immer geben. Es sollten aber so wenige wie möglich sein. Bei der Vielseitigkeit der heutigen GPUs kann man vermutlich eh so ziemlich jedes Feature umsetzen, könnte aber unter Umständen kreuzlahm sein, so dass es nicht praxistauglich ist.

Und dass sich Vulkan nicht durchsetzt ist wenn dann etwas, von was ich ausgehen muss, als dass ich das darf. ;)
 
Zurück