Wieso belegen heutige Videospiele so viel Speicherplatz?

ein Umstand der, meines Erachtens, in der einschlägigen Fachpresse nie wirklich diskutiert wurde, obwohl es quasi von „heute auf morgen“ passiert ist. Warum nehmen aktuelle PC/PS4/XboxOne Spiele so viele Gigabytes in Anspruch. Ich kann es mir einfach nicht erklären; mein Umfeld ebenso wenig.

Mittlerweile kann man von 40Gb im Durchschnitt (plus/minus 10Gb) ausgehen, während die Spiele vor dem Start von PS4/XboxOne noch irgendwas zwischen 5 und 10Gb groß waren. Und so ein Quantensprung in Sachen Grafik, Texturqualität, Physik Engines (die vor 10 Jahren deutlich öfter eingesetzt wurden - Half Life 2, Havoc…), Polygondichte…usw. war es ja jetzt auch nicht^^ (natürlich gibt es mittlerweile Ausnahmen: Uncharted 4, GTA 5, Battlefield…)

Es ist doch sau lächerlich und rückständig, dass z.B die PS4 Festplatte (500GB) fast voll ist, wenn gerade mal 10 Spiele installiert sind.

Spontane Beispiele die mir einfallen:

  • Doom (PS4) (2016) belegt um die 40GB + Update 30GB (!) = +/- 70 GB
  • Trials Evolution ist um die 10GB groß (PS4), auf der Xbox360 aber nur irgendwas zwischen 2 und 3GB und so groß ist der Unterschied in der Grafik nicht.

und mein absoluter Favorit aus dem Playstation Store:
Arcade Game Series: PAC-MAN -> 834,14MB …What the Fuck, das Spiel hat mal auf ne Floppy Disc gepasst (jaja, ich weiß - HD Auflösung heutzutage aber trotzdem ist das nicht nachzuvollziehen), bei DigDug und Galaga siehts nicht besser aus, sind auch über 800MB groß…

Gleichzeitig gibts aber auch noch Spiele wie beispielsweise „The Vanishing of Ethan Carter“, die grafisch fast alle BigBudget Produktionen weit hinter sich lassen und trotzdem nur knapp 5GB belegen.

Mögliche Erklärungsansätze:

  • BluRays als neue Datenträger - Daten müssen nicht mehr komprimiert werden, genug Speicher ist ja nun vorhanden
  • Audiofiles in mehreren Sprachen
  • grundlegend anderer Umgang mit der Systemarchitektur von neuen Konsolen

Würde mich über Expertenmeinungen sehr freuen. Vll liest das ja jemand, der wirklich n Peil von der Hardware hat und mir das erklären kann. Sorry für den langen Text aber das Thema macht mich wirklich wahnsinnig :smiley:

PS: Bin mir nicht wirklich sicher ob es auf dem PC genau so ist. Zocke mittlerweile nur noch auf Konsolen. Und bitte kein PC Masterrace Gelaber… sowas nervt hart ab

Hi!

Du hast Dir die Antworten schon teilweise selbst gegeben:

Aber vor allem eines: Grafik, die frisst jeden Speicherplatz auf.

Doch, das ist nachzuvollziehen, im CGA-Modus gab es die 16-Farben-Auflösung von 160x100, in HD und 3D usw. 1920x1080, also statt 16.000 Bildpunkten und 16 Farben sind es nun 2.073.600 Bildpunkte mit 64 Mio. Farben.

Und weil die HD-Auflösung noch nicht das Ende der Fahnenstange ist, wird es noch mehr werden …

Dazu nur ein Zitat von Bill Gates aus dem Jahr 1981: „Mehr als 640 Kilobyte Speicher werden Sie niemals benötigen.“

Grüße,
Tomh

O-Ton Gates zu diesem Thema: „I’ve said some stupid things and some wrong things, but not that. No one involved in computers would ever say that a certain amount of memory is enough for all time.“

2 Like

Die Spiele werden so programmiert.
Auch auf maximalen Gewinn sind sie ausgelegt. Wenn sie Speicher fuer 20ooo Euro benoetigen wuerden, kauft sie keiner, ssooo programmiert man sie vorerst nicht, erst wenn derselbe Speicher 2oo Eur kostet kommt diese Version.

Bei den Spielen hängt es meist von der Grafik ab. Wenn die enorm hoch ist, verbraucht die auch enorm viel Platz. Ich habe auf der Ps4 grad mal 5 Spiele und die ist fast voll (Destiny, IW, For Honor, Star Wars Battlefront, Smite und Paragon), dass schlimmste ist, dass die Spiele andauernd Updates bekommen und somit die Festplatte vollmachen. Wenn du noch die Aufnahme Funktion hast, die Videos und andere Sachen vom Spiel aufnehmen solltest du das vielleicht löschen.

Hallo,

Die einfachste Antwort ist: Weil man es kann. :smile:

Mit Spielekonsolen kenne ich mich nicht aus, aber das Problem ist ein Allgemeines in der Computerei.

Eine CPU kann eine bestimmte Anzahl Befehle pro Sekunde abarbeiten. Um also eine bestimmte Reaktionszeit zu erhalten, muss das Programm entsprechend kurz sein.

Ein 6502 konnte mit 1MHz Takt einige 100’000 Befehle/s verarbeiten. Mit einem Befehl konnten maximal 8-Bit bearbeitet werden und Ganzzahl-Multiplikation/Division mussten durch ein Programm verarbeitet werden.
Heutige CPUs haben einen 3-4 Tausend mal höheren Takt, mehrere parallel arbeitende CPUs und eine PFU. Ein einzelner Befehl kann kompliziertere Operationen ausführen und es können 64-Bit (80-Bit bei der FPU) in einem einzelnen Befehl bearbeitet werden.

Beim APPLE ][ musste jedes einzelne Pixel vom 6502 einzeln berechnet und in den Graphikspeicher geschrieben werden.
Heute übernimmt dies der Grafikprozessor (GPU). So eine GPU ist ein Vektorrechner, ist also dafür optimiert eine bestimmte Operation auf viele Daten anzuwenden. Dabei wird massive Parallel-Verarbeitung gesetzt. Heutige GPUS haben eine höhere Rechenleistung als die CPU, weshalb aktuelle Supercomputer mit GPUs gebaut werden.

Um also schnelle Programme zu erzeugen, musste man Früher in Assembler programmieren, weil man nur so optimal optimieren konnte. Hochsprachen wie z.B. C, erzeugten Anfangs etwa 20-50% mehr Code, als ein Assembler-Programm. Heutige optimierende C-Compiler erzeugen noch etwa 10% mehr Code. Andere Programmiersprachen erzeugten noch mehr Code oder waren, durch ihre Architektur viel langsamer.

Eine Konstante über Jahrzehnte ist, dass ein Programmierer etwa 10 Zeilen Code pro Tag erzeugt. Die beinhaltet das Schreiben, Testen und Dokumentieren.
Wenn man für eine Aufgabe 1’000 Maschinen-Befehle benötigt, sind dies in Assembler etwa 100 Arbeitstage. In C ergibt die vielleicht 100 Zeilen Code, also 10 AT. Mit einer passenden Bibliothek geht das dann mit 10 Zeilen Code, also in einem Arbeitstag! Grundsätzlich muss man auch Treiber zu den Bibliotheken zählen.

So, jetzt kommen wir der eigentlichen Frage langsam näher.

So eine Bibliothek stellt nun aber eine Menge Funktionen zur Verfügung und möglicherweise benötige ich 2 von 100 Funktionen. Installiert, und auf DVD abgelegt, wird aber die ganze Bibliothek!
Einen ähnlichen Effekt hat auch die Objekt Orientierte Programmierung (OO). Wen man nicht aufpasst, schleppt man vie unbenutzten Code mit der Vererbung mit rum.

Übrigens funktioniert die DNA auch nach diesem Prinzip. Viele DNA-Abschnitte werden beim Menschen dar nicht genutzt und sind irgendwelche Code-Überreste aus der Vergangenheit. Die 1-2% Unterschied zum Schimpansen, scheinen hauptsächlich im „Hauptprogramm“ zu liegen. Der Hauptunterschiel liegt dann darin, dass beim Menschen viele „Unterprogramme“ wesentlich öfters ausgeführt werden.

Ein weiterer Grund sind die Programmierer und Politik mancher Firmen.
Vor 50 Jahren gab es weltweit wenig Arbeitsplätze für Programmierer. Da wurde also gesiebt und nur die Besten, Genialsten und Erfahrensten fanden einen Arbeitsplatz. Heute ist es umgekehrt. Die Firmen sind froh, wenn sie überhaupt jemanden finden, welcher ein Programm erstellen kann. Hinzu kommt noch, dass z.B. Bill Gates der Meinung war, dass nur Junge Leute Ideen haben. Da wurden Leute eingestellt, noch bevor sie Ihre Ausbildung beendet hatten. Dies führte dann zu Problemen wie bei SASSER.
Die Lücke welche SASSER ausnutzte bestand in einem ganz einfachen Anfängerfehler. Man hat einen Datenkanal (Ethernet) welcher Datenpakete mit bis zu 64KB transportieren kann, Dann programmiert man einen Dienst, welcher. per Definition, mit Datenpaketen von maximal 4KB arbeitet. Nun hat man einfach vergessen zu prüfen ob das erhaltene Paket grösser als 4KB ist…

Aus Benutzersicht, sind Computer eigentlich in den letzten Jahrzehnten nicht schneller geworden. Das Laden und die Ausführung von Befehlen dauert immer noch gleich lang.
Allerdings tut sich heute natürlich viel mehr im Hintergrund!
Mit dem Übergang von Konsolen basierten Betriebssystemen (z.B. DOS) zu graphischen Oberflächen (z.B. Windows) wurde viel CPU-Leistung in die Grafik gesteckt und für die eigentliche Aufgabe blieb nicht wirklich mehr Rechenzeit übrig.
Kaum kommt die neue Rechnergeneration wieder nach, werden neue Gimmicks eingebaut, welche wieder Rechenleistung benötigen.

Ich weiss nicht woran es liegt, aber Spiele haben schon immer die neueste, leistungsstärkste Hardware benötigt. Meiner Meinung nach, lag es vor allem am Wissen und der Kunst zu programmieren. Schon zu DOS-Zeiten gab es etliche Spiel, welche selbst mit 640KB RAM nicht funktioniert hatten, wenn man einen Tastaturtreiber installiert hatte, welcher nun mal einige KB Speicherplatz belegt hatte. Diese Programmierer gingen einfach davon aus, dass ausser dem DOS selbst nichts anderes im Speicher abgelegt ist. Dies hat damals bei der englischen DOS-Version funktioniert, weil diese den Tastaturtreiber des BIOS verwenden konnte. :frowning:

Der PET wurde ursprünglich mit 4KB RAM ausgeliefert, auf dem Motherboard aufrüstbar auf 8KB. Ein paar Jahre vorher gab es professionelle Multiuser Computer mit 16 Usern/Terminals und 32-64 Kilo-Byte RAM.

MfG Peter(TOO)