Weiß zwar auch nicht ob das einen neuen Thread benötigt hätte aber fassen wir einmal zusammen:
-
der VRAM spielt aufgrund des unified GDDR5 RAMs der Kosnole einen wichtige Rolle. 6 bis 8GB sollten es mittelfristig schon sein. Besonders bei lieblosen Konsolenports wird man das sehen, aber auch bei Spielen, welche die Ressourcen der Konsolen ausschöpfen werden.
- Die Anforderungen an das
DX Level wird nicht sehr hoch sein. Der verbaute Chip in den Konsolen verfügt über das Featurelevel DirectX 11.2
Vielleicht wird es Spiele geben die Features darüberhinaus bieten, aber das wird die Ausnahme bleiben. Zudem wohl in keinem Fall ein k.O. Kriterium, da dies ein Extraaufwand für den PC bedeutet.
Welche Grafikkarte unterstützt welches Featurelevel:
http://www.3dcenter.org/news/welche-gra ... d-software
Nutzung der Compute Ressourcen moderner GPUs
Nvidias Grafikkarten basieren seit 8800GTX (2006) auf einer 1D Shader Architektur, AMD seit 7970 (2011). Diese Architekturform erlaubt es Grafikkarten flexibel auch für andere Aufgaben zu missbrauchen. (zB High Perforamnce Computing (HPC) in Rechenzentren oder bekanntestes Beiespiel PhysX) Nvidia konnte so damals AGEIAs Technologie aufkaufen und so die Berechnungen anstatt auf der dedizierten Physik-Karte auf der Grafikkarte ausführen.
Da Grafikkarten heutezutage für beide Märkte (Gaming und HPC) designt werden ging AMD einen Schritt weiter und implementierte eine Art Hyperthreading für welchselnde Anforderungen. (Grafik- und Compute-Befehle) Dies versteht man unter dem Begriff "Asynchronous Shader".
https://www.youtube.com/watch?v=v3dUhep0rBs
(leider gibt es kein besser verständlichers Video.)
Asynchronous Shader ist nicht nur ein Feature für eine Performanceverbesserung, sondern erlaubt eine bessere Gesamtauslastung der Grafikkarte. Speziel eben des bei Games häufig brachliegenden Computing-Bereichs. Deswegen sind die Konsolenentwickler sehr intessiert. 20-30% Performance lässt man sich nicht entgehen.
Auch für DICE ist das ein großes Thema. Irgendwo hatte ich mal einen Link hier gepostet.
Raytracing mittels Compute
Aktuelle Spiele basierten alle auf Rasterisierungs-Verfahren der Berechnung. Dies erlaubt bereits bei geringen Ressourcen ein gutes Ergebnis. Die Anfänge der 3D-Berechnung lassen Grüßen. Mit steigendem Aufwand und dem Ziel des Fotorealismus wird diese Art der Berechnung aber immer aufwändiger.
Bei Raytracing verhält es sich genau umgekehrt. Man braucht bereits viel Rechenleistung, damit das Ergebnis überhaupt nach was aussieht. Ist jedoch ersteinmal ein gewisser Punkt erreicht, ist das Ergebnis deutlich besser. Das liegt in der Art der Berechnung. Hier wird ein Strahl (Ray) ausgehend vom Betrachter rückwärts zur Lichquelle berechnet. Dies natürlich tausendfach. Das Ergebnis sieht nicht nur"besser" aus, es ist absolut korrekt.
Rasterisierungs-Verfahren habe enorme Schwierigkeiten mit Spiegelungen. Wer einmal darauf achtet, wird festellen wie schlecht selbst modernste Spiele-Engines hier abschneiden, und wie die Entwickler tricksen um diesem Performanceproblem schlicht aus dem Weg zugehen:
https://www.youtube.com/watch?v=L7QMQKC0HF8
Raytracing kennt übrigens fast Jeder. Die meisten 3D-Animationsfilme werden so umgesetzt. Ebenso Rendering, also Verfahren wo der PC deutliche mehr Zeit hat, als in einem Spiel (Echtzeit)
https://www.youtube.com/watch?v=aKqxonOrl4Q
https://www.youtube.com/watch?v=BpT6MkCeP7Y
https://www.youtube.com/watch?v=pm85W-f7xuk
https://upload.wikimedia.org/wikipedia/ ... 0_edit.png
http://www.pxleyes.com/blog/2010/03/5-t ... aytracing/
Spannend sind daher nun die ersten wirklichen Versuche Raytracing mittels Asynchronous Shader in Spielen einzusetzen. Interessant ist hier die Info, dass bei einer Raytracing-Berechung der Compute-Teil der Graka gleichzeitig aktiv sein muss, wie auch der Grafik-Teil welcher letztendlich das Bild an den Monitor sendet.
https://www.youtube.com/watch?v=C9eMciZGN4I
GTX9xx Grafikkarten werden Raytracing nicht einsetzten können. Da der Chip "anhalten" muss um von Compute-Berechnungen in Grafikberechnungen zu wechseln und umgekehrt. Asynchronous Shader wird hier nur in Software unterstützt und von der CPU emuliert. Daher auch der Performanceverlust in den Benchmarks. Ein Feature zu emulieren, was nur dazu da ist Performance zu generieren ist daher sehr sinnfrei.
GTX10xx Karten sind nun in der Lage zwischen Compute- und Grafikberechnungen zu wechseln.
GCN kann diese Berechnungen parallel abarbeiten, was deutlich mehr Performance verspricht. Je neuer jedoch die GCN-Architektur desto besser die parallele Nutzung.
Falls ich etwas vergessen haben sollte, gerne ergänzen.