Spieleentwickler müssten die 3,5GB VRAM der GTX970 explizit bei ihrer Programmierarbeit berücksichtigen um eine optimale Anpassung zu erzielen. Da 3,5GB VRAM aber so ungewöhnlich auf dem gesamten Grafikkartenmarkt sind, glaube ich nicht, dass man sich diesen Aufwand antun würde und man müsste weiterhin mit oben genannter unschöner Kompromisslösung zurecht kommen.
Auf der einen Seite ergibt das durchaus Sinn, aber auf der anderen Seite vergisst du ein paar Sachen in der Betrachtung...
Bspw. DWM
-> mein default VRAM Verbrauch, rein Windows 7 inkl. Aero liegt bei mir bei fast 500MB. Warum? Weil ich drei Screens nutze. (3x FHD, stand heute)
Ein Anderer kommt vielleicht mit nur einem einzigen FHD Screen um die Ecke und kommt da mit ~150MB aus, der nächste schleppt 3x UHD an und frisst nochmal deutlich mehr wie 500MB.
Wir sprechen hier gerade mal von ~15% Unterschied (3,5GB vs. 4GB), der in der Praxis einfach nicht der Indikator zwischen Spielbar und nicht Spielbar ausmachen kann... Schon allein durch die unterschiedliche Hintergrundbelastung von DWM kann/muss ein jeder Spieleentwickler mit Reserven kalkulieren, sofern er überhaupt sowas tätigt.
-> denn das ist der zweite Punkt, das wird Keiner so explizit auf absolute Menge kalkulieren
Du kannst nicht mal eben so, bis auf fast das MB genau dein Spiel hin texturieren... Schon allein deswegen nicht, weil es eben A) nicht nur Low/Middle/High als Einstellung gibt, sondern andere Faktoren da ebenso mit rein spielen. Die Auflösung als solches hat zwar heute nur wenig Einfluss, aber spielt dennoch mit rein bspw. auch mögliche AA Settings, ebenso wie mögliche GPGPU Tasks (TressFX, PhysX per GPU oder andere Geschichten)
Zumal auch nicht der Entwickler = Programmierer des Spiels dafür zuständig ist, die Texturen zu erstellen oder zu verändern
Die Grafiken kommen idR aus der Abteilung "Gruppe bunte Bilder" -> und das irgendwie auf Anforderung. Wärend dazu noch eine dritte Gruppierung für das Leveldesign selbst zuständig ist. Klar kann man immernoch feststellen, OK, wie brauchen zu viel Speicher, wir müssen runter. Aber die Texturen selbst sind ja oftmal mehrfach in Verwendung. Mal ebenso ein paar davon niedriger auflösen ist da nicht so einfach...
Der dritte Punkt, das Speichermanagement von AMD und NV sind unterschiedlich... Wenn auf der NV Karte xxx MB belegt sind, heist das nicht automatisch, dass bei der AMD Karte dies ebenso viel sein muss. Schon allein durch unterschiedliche Komprimierungsverfahren kann das anders sein, ebenso durch andere Routinen, die der Treiber fährt um alten Mist rauszukehren.
ATI/AMD Karten galten/gelten allgemein eher als sparsam in der VRAM Belegung
Obwohl das im Grunde eher ein Irrglaube ist, denn ungenutzter Speicher ist einfach unsinnig...
Musst mal in HisN seinem 512MB VRAM Thread hier suchen, da hab ich vor xx Jahren mal Messungen mit Anno 1701 gemacht. Anno 1701 ist ein Paradebeispiel dafür, wie man VRAM Managment nicht betreiben sollte
Damals war das bei mir glaube ich eine HD4870 512MB -> du scrollst auf eine Insel, der VRAM wird gefüllt mit notwendigen Daten -> du scrollst von der Insel aufs Wasser -> der VRAM wird geleert -> dann scrollst du auf die nächste Insel, der VRAM wird wieder gefüllt.
Das gleiche Spiel, gleiche Settings auf ner NV Karte -> du scrollst auf eine Insel, VRAM wird gefüllt, du scrollst auf das Wasser -> VRAM bleibt gefüllt, du scrollst auf die nächste Insel -> VRAM füllt sich weiter (je nachdem, ob gleiche Klimazone = gleiche Texturen oder andere Klimazone = andere Texturen)
Ein Entwickler müsste also das Speichermanagement jeglicher Hardware kennen und explizit darauf sein Spiel ausrichten -> unsinn, viel zu viel Arbeit für nix.
Der vierte Punkt ist, die Art von Spielen ist extrem unterschiedlich. Du hast, wenn es von den alten Konsolen portiert wurde, häufig ein Schlauchlevel Prinzip. Das ist ein ziemlich günstiges Unterfangen für den Entwickler, Daten in den Speicher vorzuladen. Denn der Spieler kennt idR nur einen Weg -> nämlich dem Schlauch entlang. Mit diesem Prinzip kannst du bequem während der Fahrt später notwendige Daten nachziehen und ältere Daten rauskegeln. Sogar vom Spiel selbst initiert ohne auf den Treiber zurückgreifen zu müssen.
Völlig anderes Prinzip -> Open World Titel. Da kannst du gar nix vorhersagen... Der Spieler kann nach Norden, Süden, Westen oder Osten gehen. Je nachdem in Häuser oder in den Untergrund usw. usf. Um so deteilreicher das Spiel, desto unterschiedlicher die Texturen. Und um so unterschiedlicher die Texturen, desto mehr absolute Menge wird es sein. Gut funktionierendes Speichermanagement ist absolute Pflicht...
Unterm Strich?
Der Entwickler wird idR sein Spiel nicht auf absolute VRAM Menge hin optimieren können. Nicht wegen dem unterschliedlichen Management, nicht wegen verschiedenen Prinzipien der Spiele usw. Ein Spiel wird das an Daten benötigen, was es während der Laufzeit benötigt. Entweder es passt, oder es passt nicht... In letzterem Fall bist du im VRAM Limit. Ob die Menge potentiell nutzbarem VRAMs nun bei 3,5GB liegt oder bei "geraden" Zahlen, ist dabei nebensächlich. Wichtig ist, während der Laufzeit darf bzw. sollte nicht mehr Speicher belegt werden, als frei verfügbar ist. Und wenn doch, dann sollte es explizit getrennte Level/Abschnitte/Zwischenszenen oder ähnliches geben. Oder das Spiel MUSS so derart intelligent Daten nachziehen können, dass es unbemerkt vom Spieler geschieht.
Dazu kommt der unwesentliche Unterschied von 3,5GB zu 4GB -> da kräht in ein paar Monaten kein Hahn mehr danach, genau so wenig wie zum Release der GTX 680/HD7970 kein Hahn mehr danach gekräht hat, ob die 1,25GB der GTX 570 genug waren oder ob es lieber die 1,5GB der GTX 480 sein sollen -> beide Fälle waren zu dieser Zeit am Limit bzw. oft auch drüber. Und ob nun 10 Nachladeruckler oder 15? Völlig ega, schon der erste trübt den Spielspaß ungemein...