Ich habe gerade darüber gelesen, was in den Dateien für No Man's Sky entdeckt wurde, eine Menge Dinge, die nicht verwendet wurden oder für das Spiel relevant waren. Ich habe vor kurzem auch gelesen, dass die E3-Einstellungen in den Watch Dogs-Dateien verbleiben. Warum belassen Spieleentwickler alte und nicht verwendete Dateien im endgültigen Spiel?
Sicherlich nimmt dies nur zusätzlichen Platz auf einer Disc ein und bedeutet, dass mehr Daten heruntergeladen werden müssen, wenn Sie das Spiel herunterladen?
Haben die Entwickler auch keine Angst davor, was die Leute finden könnten?
Antworten:
Wichtige Spiele verwenden eine sogenannte Build-Pipeline. Dies ist wie ein weiterer Satz von Tools, mit denen der Spielinhalt für alle verschiedenen Distributionen erstellt wird. Multi-Plattform-Spiele wie No Man's Sky und Watch_Dogs verwenden auf jeden Fall unterschiedliche Assets für die verschiedenen Plattformen. So wie ich es sehe, gibt es zwei mögliche Antworten auf Ihre Frage.
Die Entwickler haben vergessen, bestimmte Assets aus der Pipeline zu entfernen, und sie wurden mit dem eigentlichen Spiel gebündelt.
Die Entwickler haben absichtlich einige "unbenutzte" Ressourcen im Spiel für die spätere Verwendung während eines Patches oder Updates belassen, da sie die Frist nicht einhalten konnten. Beispiel Teufelsgrube aus The Witcher 3.
quelle
Es kann schwieriger sein, als Sie denken, den gesamten Inhalt zu finden, auf den verwiesen wird, in einem großen Spiel, an dem mehrere Personen arbeiten. Auch wenn explizite Tools vorhanden sind, um zu helfen (wir haben solche Tools bei ArenaNet erstellt. Jeder, der Unreal verwendet, hat Zugriff auf die Unreal-Version dieser Tools. Bungie hat Tools, die dasselbe tun und sogar einen Vortrag darüber halten usw.).
Es gibt verschiedene Möglichkeiten, wie auf Inhalte verwiesen werden kann, um solche Systeme zu umgehen. Dies geschieht im Allgemeinen einfach dadurch, dass auf Inhalte verwiesen wird, die das System nicht nachverfolgen kann (z. B. durch Erstellen eines impliziten oder fest codierten Verweises im Code auf ein bestimmtes Asset).
Selbst wenn Sie das Problem des Findens aller inhaltlichen Verweise gelöst haben, können Sie nicht feststellen, ob tatsächlich etwas verwendet wird . Vielleicht wird irgendwo in einem Skript auf ein Asset verwiesen, aber das Auslösungsvolumen für dieses Skript ist falsch in einer Wand platziert und der Inhalt kann daher niemals im Spiel erscheinen. Testen dies erschöpfend ist auch ziemlich schwierig.
Wenn automatisiert (oder Automaten kann ) Methoden zum Nachweis und zur Ausfilterung nicht verwendeter Inhalt scheitert, werden Sie mit dem altmodischen Weg links: menschliches Eingreifen. Menschen machen Fehler, schlechte Annahmen (sie denken vielleicht, dass eine Datei immer noch verwendet wird, obwohl dies nicht darauf zurückzuführen ist, dass jemand anders eine Änderung vorgenommen hat), und ja, sie entscheiden sich manchmal sogar dafür, absichtlich irrelevanten Inhalt als Ostereier im Spiel zu belassen. Es ist nur natürliche menschliche Fehlbarkeit, die dazu führt.
In der Regel reicht der Inhalt nicht aus, um die Nadel für Lade- oder Dateigrößenoptimierungen wirklich zu bewegen. Es gibt auch Tools zum Melden der größten oder langsamsten Assets in einer großen Build-Kette oder Engine. Der Fokus liegt jedoch darauf, die Auswirkungen der Haupttäter zu verringern und nicht jedes einzelne verschwendete Byte zu finden und zu lokalisieren. Meistens.
quelle
Was in den anderen Antworten fehlt, ist, dass dies nichts mit Spielen zu tun hat. Es betrifft alle Anwendungen.
Es gibt immer Dateien und Code, der in keinem einigermaßen komplexen Programm verwendet wird. Dies geschieht aufgrund der folgenden zwei Dinge:
quelle
Das Hinzufügen / ehancing Uri Popov ‚s Antwort :
Bearbeiten:
Auf einen Kommentar zur ursprünglichen Frage reagieren,
quelle
Spieleentwickler belassen nicht verwendete Dateien im endgültigen Spiel, da sie nicht die Mühe aufwenden möchten, alle nicht verwendeten Dateien zu finden und zu entfernen. Immerhin laufen die Spiele mit ein bisschen mehr Material gut und Zeit ist Geld. Das Aufräumen erhöht die Kosten (je nachdem, wie automatisiert dies geschieht).
Es nimmt zwar zusätzlichen Speicherplatz in Anspruch und bedeutet, dass mehr Daten heruntergeladen werden müssen, dies ist jedoch normalerweise nicht das Problem der Entwickler, und selbst Kunden interessieren sich normalerweise nicht für geringfügig größere Download-Größen.
Sind Sie sich nicht sicher, ob Entwickler Angst haben müssen, was die Leute finden könnten? Warum sollten sie? Solange in den zusätzlichen Dateien keine Kompromisse eingegangen sind (wirklich schlechte Grafiken, Witze über ihre Chefs oder die Kunden, ...), ist ihnen das wahrscheinlich egal. Obwohl sie in einigen Fällen tatsächlich Angst haben, was die Spieler in den Assets entdecken könnten.
quelle
Not sure if developers need to be afraid of anything people might find?
Lesen Sie den Grund, warum der Tech-Test von Titanfall 2 nicht auf den PC kommt. Sie stimmen nicht überein: P.Es wurde angedeutet, aber es wurde von den anderen Antworten nicht vollständig angesprochen: Es läuft alles auf Kosten hinaus, und einige der Kosten sind kniffliger, als Sie vielleicht denken.
Die offensichtlichsten Kosten sind, dass jemand sie löschen muss. Jetzt können Sie einfach einen Praktikanten in den Koffer stecken und ihn die Dateien durchsuchen lassen, um die Dateien zu entfernen, die im eigentlichen Spiel nicht benötigt werden. Aber trotzdem musst du dafür bezahlen und selbst wenn du das nicht tust (weil du ein Monster bist, das keine Praktikanten bezahlt), hättest du diesen Praktikanten trotzdem etwas Nützliches tun lassen können, wie Pizza für das Entwicklerteam zu bestellen es kostet dich immer noch.
Die weniger offensichtlichen Kosten sind, dass die Ressource, die Sie entfernen möchten, aus einem Grund eingesetzt wurde: Sind Sie absolut sicher, dass der Grund veraltet ist? Sicher, Sie haben diesen Code für eine Demo geschrieben und brauchen ihn nicht mehr, aber stimmt das wirklich? Haben Sie eine nützliche Funktion geschrieben, die Sie vergessen haben, in die anderen Bibliotheken zu migrieren? Hat Stacey eine wirklich coole Grafik für die Demo gemacht, die im echten Spiel gelandet ist? Verwendet ein interner Simulator immer noch die alte Stufe, die Sie zum Testen verwendet haben?
Spiele machen ist ein Geschäft. Auch wenn es sich nicht um ein Geschäft handelt, das Geld verdient, ist es dennoch ein Geschäft mit begrenzten Ressourcen. Jede Entscheidung erfordert eine Kosten-Nutzen-Analyse, auch wenn Sie nicht für jeden Fall Geschäftsfälle schreiben. Und die einfache Tatsache ist, dass die Kosten für das Verlassen dieser Assets im Spiel geringfügig höher sind und die Vorteile ein deutlich geringeres Risiko darstellen, dass etwas kurz vor der Veröffentlichung explodiert.
Alle diese Fragezeichen im "weniger offensichtlichen" Absatz stehen für Unsicherheit. Du weißt es einfach nicht. Und wenn Sie ein Unternehmen führen, müssen Sie Ihre Unbekannten gegen Bekannte eintauschen. Und was bekannt ist, ist, dass das von Ihnen erstellte Paket die Tests bestanden hat, auch wenn es ein wenig aufgebläht ist.
Es gibt andere potenzielle Kosten, wie zum Beispiel Informationslecks im Entwicklungsprozess, die möglicherweise zum Ableiten von Hacks verwendet werden könnten. Sie haben den Testprozess jedoch so wie er ist durchlaufen, und Sie sollten sich darüber keine Sorgen machen.
tl; dr: Niemand wird einen um 4% größeren Download bemerken, aber er wird bemerken, wenn Sie das Spiel durch Entfernen der erforderlichen Dateien unterbrochen haben.
quelle