Ich habe eine Spiel-Engine entwickelt und Spieltechnologien wie anisotropes Filtern, Umgebungs-Okklusion, Anti-Aliasing usw. entdeckt und gelesen.
Normalerweise können Sie diese Einstellungen in Spielen ein- und ausschalten. Wenn diese Einstellungen jedoch nur positive Werte hinzufügen, gibt es einen Grund, diese in einer Game-Engine für den Entwickler umzuschalten?
Ich verstehe, dass die Leistung ein wichtiger Faktor ist, aber gibt es einen anderen Grund, warum diese Einstellungen immer zum Ändern verfügbar sind?
graphics-programming
scalability
Java Man Tea Man
quelle
quelle
Antworten:
Die Leistung ist im Allgemeinen der Hauptgrund, warum diese Funktionen vom Benutzer ein- und ausgeschaltet werden können. Im Allgemeinen sind sie teuer, und indem die Benutzer sie von einem Entwickler ausschalten können, wird der Satz von Computern, auf denen das Spiel effektiv ausgeführt wird, erweitert, um mehr Computer der unteren Preisklasse. Dies führt zu potenziell mehr Spielern und somit zu potenziell mehr Verkäufen (vorausgesetzt, diese Spieler können mit der verringerten visuellen Wiedergabetreue leben).
Diese erweiterten Funktionen beeinträchtigen möglicherweise auch die Akkulaufzeit oder die Lüfterleistung, wie @Artelius ausführte, und Benutzer sollten sie aus diesen Gründen deaktivieren.
Abschließend möchten wir den Benutzern lediglich die Wahl lassen, was sie bevorzugen. Einige Leute mögen es möglicherweise nicht, wie Anti-Aliasing aussieht oder wie das Deaktivieren von V-Sync zum Reißen des Bildschirms führen kann. Ein praktischeres Beispiel ist Pillars of Eternity, bei dem Sie die Schriftligaturen aktivieren oder deaktivieren können. Diese kosten in Bezug auf die Laufzeitleistung wahrscheinlich nicht so viel, aber für einige Benutzer ist es möglicherweise schwieriger, den Text mit ihnen zu lesen. Oder (wie @SeanMiddleditch hervorhebt) man möchte eine Funktion deaktivieren, weil sie auf einem einzelnen Computer fehlerhaft ist. Oder Sie möchten eine Funktion deaktivieren, um einen Wettbewerbsvorteil zu erzielen (z. B. durch Deaktivieren von verrauschten visuellen Effekten, die von der Mechanik ablenken).
quelle
Wie Josh Petrie bereits betonte, ist die Leistung das wichtigste Anliegen. Sie können nicht nur nicht wissen, wie leistungsfähig die Endbenutzer-Hardware ist, sondern wissen beim Erstellen einer Engine auch nicht, wie die Leute sie verwenden werden. Vielleicht möchten die Spieleentwickler ein Spiel entwickeln, das so viele Polygone auf den Bildschirm bringt, dass selbst die beste Hardware es nicht in Echtzeit rendern kann, ohne die Effekte auszuschalten? Aber auch eine automatische Handhabung ist möglicherweise keine gute Idee: Vielleicht möchten die Entwickler entscheiden, welche Effekte für welche Objekte deaktiviert werden sollen.
Neben der Leistung kann es aber auch ästhetisch von Belang sein.
Wenn Sie beispielsweise von der anisotropen Filterung auf die Interpolation zum nächsten Nachbarn umschalten und Texturen mit niedriger Auflösung oder hochskalierte Sprites verwenden, erhalten Sie einen nostalgischen Pixel-Art-Look. Ein beliebtes Beispiel für ein Spiel, das dies tut, ist Minecraft. Und natürlich die vielen Spiele, die seine Ästhetik kopieren. Nicht weil sie nicht wissen, wie sie es besser machen sollen, sondern weil sie es nicht wollen.
quelle
Natürlich Leistung. Einige Effekte wie Crepuscular Rays, Depth of Field und Bloom belasten die Geschwindigkeit sehr, insbesondere bei älteren GPUs. Eine weitere Möglichkeit, zusätzliche FPS zu erzielen, besteht darin, Reflexionen und Schatten zu reduzieren oder zu deaktivieren. Auch - um Artelius Punkt zu wiederholen - beeinträchtigen visuelle Effekte die Batterielebensdauer.
Außerdem:
Modded Minecraft ist dafür wirklich ein guter Spielplatz. Minecraft rendert ganze Blöcke, so dass die Anzahl der Polygone größer ist als es scheint. Fügen Sie die Komplikationen hinzu, die durch das Entsorgen von Stücken auf einem gesammelten Müll und ohne Zeigersprache wie Java [1] entstehen, und Sie können, wie immer, einige Leistungsprobleme erwarten, insbesondere bei alter Hardware. Einige forderten bessere Grafiken, andere eine bessere Leistung. Und so entstanden Mods wie GLSL Shaders Mod und Optifine , die beide zusätzliche Grafikoptionen hinzufügen, obwohl sie zu unterschiedlichen Zwecken kompatibel sind [2]. Wenn Sie die Möglichkeit haben, sie zu verwenden, können Sie die Leistungseffekte der visuelle Effekte.
[1]: Microsoft hat eine C ++ - Portierung von Minecraft für Windows 10 erstellt - basierend auf der Pocket Edition - und bietet eine viel bessere Leistung als die älteren Java-Versionen. Das bedeutet nicht, dass Java keine Leistung erbringen kann. Dies ist nicht nur ein Symptom dafür, dass es sich um C ++ handelt, sondern auch, dass es sich um Microsoft handelt.
[2]: Tatsächlich wurden diese Mods für Minecraft 1.8.9 - Optifine absorbed GLSL Shaders Mod zusammengeführt .
Und Sie sagen, Sie entwickeln eine Spiel-Engine , sodass Sie davon ausgehen, dass Ihr Code für viele verschiedene Spiele wiederverwendet werden kann. Es ist eine gute Idee, dem Spieleentwickler zu erlauben, zu entscheiden, ob er diese Effekte verwenden möchte und ob er Optionen bereitstellen möchte, um sie zu deaktivieren oder nicht. Möglicherweise sind nicht alle Effekte für alle Spiele sinnvoll, und einige Spiele hängen möglicherweise von bestimmten Effekten ab.
Bedenken Sie, dass einige Spiele diese Effekte verwenden, um eine Stimmung einzustellen, Informationen an den Spieler zu übermitteln oder nur um eine künstlerische Lizenz zu erhalten.
Insbesondere wird versucht, visuelle Effekte zu verwenden, um das Aussehen so zu gestalten, als würde es von einer Kamera anstelle des menschlichen Auges gesehen. Dies wird versucht, indem Effekte wie chromatische Aberrationen, Lens Flares, Filmkörnung und andere "Cinematic" -Effekte verwendet werden. Diese sind nicht für jedes Spiel geeignet und sollten daher nicht von der Game-Engine festgelegt werden.
Das meiste davon - wenn nicht alles - geschieht wahrscheinlich in Shadern. Lassen Sie Ihre Game-Engine den Entwicklern erlauben, ihre Shader hochzuladen.
Ein Hinweis zu Eingabehilfen: Bei vielen Videospielen werden gehörlose Personen nicht berücksichtigt. Nur auditive Informationen bereitzustellen, ist möglicherweise nicht gut genug. Es ist eine gute Idee, visuelle Effekte hinzuzufügen, um Dinge wie die Richtung des einfallenden Feuers oder die Anwesenheit von Feinden in der Nähe (die Sie "hören" können) zu reflektieren [3]. Und natürlich Untertitel. Beachten Sie auch, dass es farbenblinde Menschen gibt ... diese Dinge, die sich nur durch Farbe auszeichnen ... ja, als Neugestaltung angesehen.
[3]: Du weißt einfach nicht, was für ein Schmerz diese Kriecher in Minecraft sind, wenn du nicht einmal ein Zischen hörst. Sie werden zufällig in der Tiefe.
Je mehr du weißt ★
quelle
Etwas, was andere noch nicht erwähnt haben:
Das Deaktivieren von Grafikfunktionen kann eine gültige Problemumgehung für Probleme mit einem bestimmten Setup sein , die nicht mit der Leistung zusammenhängen.
Nur ein Beispiel: Einige Grafikoptionen funktionieren mit einer bestimmten Rendering-Engine nicht ordnungsgemäß, wenn ein Windows-Spiel unter Wine (der Windows-Kompatibilitätsebene für Linux) ausgeführt wird.
Für ein bestimmtes (absichtlich unbenanntes) Spiel muss ich die Filterung auf trilinear reduzieren und Reflexionen deaktivieren. Nicht, weil mein Rig nicht dazu in der Lage ist (das ist es mit Sicherheit), sondern weil es Pannen und Abstürze gibt, wenn ich das nicht tue.
In einem anderen Spiel mussten Sie "Nebel" -Effekte für jedes Rig deaktivieren, auf dem nVidia-Karten ausgeführt werden (auch unter nativen Windows-Betriebssystemen), da der Nebel immer zu 100% undurchsichtig war.
Etwas , das ist in anderen Antworten / Kommentaren erwähnt, ist aber eigentlich ein Grund , nicht bestimmte Einstellungen zu machen (wie Laub Dichte, GRAS) optional:
Sichtbarkeit der Gegner in Pflichtspielen.
Wenn Spieler sich einen Wettbewerbsvorteil verschaffen können, indem Sie das "Aussehen" Ihres Spiels auf "wirklich schlecht" einstellen, können Sie das Spielerlebnis auf zwei Arten beeinträchtigen:
Vermeiden Sie das, wenn es überhaupt möglich ist. Stellen Sie sicher, dass Gras und Laub für Rigs mit geringer Leistung klobig aussehen. Stellen Sie jedoch sicher, dass niedrigere Einstellungen keinen Gameplay-Vorteil bieten.
quelle
Klarheit der Sicht in Pflichtspielen
Spieler in Online-Wettbewerben bevorzugen möglicherweise eine einfachere oder klarere Ansicht gegenüber einer schöneren Ansicht, auch wenn die Leistung keine Rolle spielt. Viele visuelle Optionen sorgen für visuellen Realismus, verdecken jedoch die Dinge, die die Spieler tatsächlich sehen möchten.
Es kann leicht vorkommen, dass es in Ihrem Spiel einfacher ist, einen Feind zu bemerken oder anzugreifen, wenn Sie den Spiel-Client so konfigurieren, dass alle Arten von zusätzlichem Gras oder Laub, Spezialeffekten, Rauch / Nebel / Feuer usw. deaktiviert werden nachteilige Wirkungen.
quelle
Die anderen Antworten sind gut, aber ich denke, es fehlen gute Beispiele für tatsächliche Effekte, die Sie deaktivieren möchten.
Für mich machte die wirklich billige und schreckliche "Bewegungsunschärfe", die zum Beispiel GTA3 hatte, das Spiel noch schlimmer. Zum Glück konnte ich es ausschalten.
Habe es nicht gespielt, aber was ich von GTA5 gesehen habe, ist eine andere ziemlich hackige Lösung, die ich deaktivieren würde, wenn ich jemals GTA5 versuchen würde. (siehe https://www.youtube.com/watch?v=VjIhl8hbO18 )
quelle