Woran kann man erkennen, welche Engine ein Spiel verwendet, basierend auf seiner Grafik?


45

Bei vielen Spielen kann man sagen "oh, das ist mit Sicherheit die Unreal Engine " oder "dies wurde mit einer aktualisierten Rockstar Advanced Engine gemacht ". Wir können die für ein Spiel verwendete Engine oft erkennen, indem wir nur die Grafiken betrachten und die Benutzeroberfläche außer Acht lassen.

Warum ist das? Alle Spiele-Engines verwenden die gleiche 3D-Rendering-Technologie, die wir alle verwenden, und die verschiedenen Spiele haben normalerweise einen unterschiedlichen Kunststil. Was ist noch zu erkennen?


Für GTA4 ist es Tupfentransparenz, die es verrät;)
drxzcl

12
Alle Menschen basieren auf der gleichen Technologie, alle Autos sind, alle Filme sind, alle Ölgemälde auf Leinwand sind. Die Technologie beeinflusst nur einen Bruchteil eines Endprodukts.
Kaj

@ Kaj: Anscheinend so. Bisher war mir nicht bekannt, wie viel des Renderprozesses nach Maß erfolgt.
Bart van Heukelom

Chronicles Of Riddick sehen aus wie die Doom 3 Engine.
User712092

@ Kaj, aber wir haben Rennen, also wissen wir ungefähr, dass diese Jungs aus Asien und diese aus Afrika sind ...
user712092

Antworten:


48

In erster Linie würde ich mir vorstellen, dass es an den Shadern liegt. Die Unreal-Engine verfügt beispielsweise über eine bestimmte Methode zur Behandlung von HDR, eine bestimmte Methode zur Behandlung von Bump-Mapping, eine bestimmte Methode zur Behandlung von Lichtstreuung usw.

Sie haben auch ein einheitliches Maß an Klarheit in Bezug auf Einschränkungen wie Texturgrößen und Farbunterstützung.

Zusätzlich werden die Algorithmen ähnlich sein. Objekte werden mit denselben Algorithmen tesselliert. AI trifft Entscheidungen nach den gleichen Entscheidungsstrukturen.

Wenn das Bump-Mapping verrückte Spiegelungen hervorruft und beispielsweise stark auf Änderungen der Beleuchtung reagiert, denken Sie sofort an die Doom-3-Engine. Das liegt daran, dass dieser Shader-Code von jedem Spiel, das die Engine verwendet, gemeinsam genutzt wird. Du würdest sowas nicht rausreißen wollen.

"Alle Spiele-Engines verwenden dieselbe 3D-Rendering-Technologie, die wir alle verwenden."

Die Technologie ist die gleiche, aber die Regeln, nach denen die Welt tatsächlich aussieht (z. B. Beleuchtung, Tessellation, LOD usw.), werden alle vom Entwickler geschrieben. Die 3D-Rendering-Technologie hat nicht viel mit der visuellen Qualität der Dinge auf dem Bildschirm zu tun. Sogar die Regeln für das Anwenden einer flachen Umgebungsbeleuchtung bleiben dem Entwickler überlassen (vorausgesetzt, Sie verwenden keine Pipelines mit festen Funktionen).

Sie können Ihre OpenGL-App so gestalten, dass sie Ihrer DirectX-App ähnelt. Die zugrunde liegende Rendering-Technologie hat, abgesehen von der Geschwindigkeit, keine so großen Auswirkungen.


1
Es gibt auch andere Dinge, die es verraten. Spiele der Source Engine bieten zum Beispiel manchmal eine Reihe erkennbarer Optionen und verwenden den Ladebildschirm, den Sie von HL2 kennen.
Doppelgreener

1
UE3 ist sofort an den Model / Texture LOD-Levels zu erkennen, die nach dem Lateload im Hintergrund auftauchen. Das ist übrigens eine verdammt süße Sache.
untitled8468927

17

Engines bieten häufig Abstraktionen auf hoher Ebene, was zu subtilen Ähnlichkeiten in den Spielen führt, in denen sie verwendet werden - ein „ Seitenkanalangriff “, wenn Sie so wollen.

Diese schließen ein:

  • Umgebung, die Abstraktionen überträgt, z. B. Gras oder Bäume.
  • Mischen von gemahlenem Material.
  • Trigger- und Ereignissysteme weisen ein ähnliches Fehlerverhalten auf.
  • Systeme.
  • Schatten-Rendering.
  • Nachbearbeitung.
  • Z-Puffer / Tiefenpuffer führen bei gleichen Abständen zu gleichen Fehlern.
  • AI Verhaltensprobleme und Skriptbehandlung.
  • Rauch, Feuer, Regen, Staub, Schnee, Wasser, Wolken, Reflexion.
  • Eine nette Textur / Ressource, die jeder gerne benutzt. :)
  • Sky-Handling / Sky-Boxen.
  • Caching.
  • Materialvorgaben, die der Entwickler nicht geändert hat.
  • Shader math. (Engines haben möglicherweise eine eigene Variante desselben Algorithmus.)

    @Wkerslake fügt hinzu:

  • Levelgröße / Streaming.

  • Physik im Allgemeinen.

Damals, als ich mich mit 3D-Grafiken beschäftigte, konnte ich auf einen Blick erkennen, welche Rendering-Engine eine Anwendung verwendete. Während es weniger zur Auswahl gab und die Grafik nicht so fortgeschritten war, gab es verräterische Werbegeschenke wie diese hier.
ChrisF

Ja, die Zeiten von Pipelines mit festen Funktionen, als die Rendering-Engine für Dinge wie Beleuchtung und Mischung verantwortlich war. In der Post-FFP-Ära werden diese Aspekte jedoch vollständig durch von Entwicklern geschriebenen Code ersetzt. Ärgerlicherweise habe ich FFP an der Universität gelernt - gerade als es völlig veraltet war.
Rushyo

1
Dies ist eine ziemlich umfassende Liste. Ich möchte nur die Ebenengröße / das Streaming und den Umgang mit zerstörbarer Geometrie hinzufügen.
Woche

@Rushyo - es ist kein Problem, Sie müssen alte Dinge wissen, um neue Dinge richtig zu machen:) ... Aber Sie haben Recht, bei neuen Motoren geht es um die schnelle und einfache Konstruktion von allem auf jeder Ebene.
Samboush

13

Es ist lustig, weil es wahr ist, dass die Beleuchtung und weitere Nachbearbeitungseffekte die zugrunde liegende Engine leicht bloßstellen können.

Motor Vergleich


Haha, ich liebe den Doom 3.
Nate CK

4

Animationen geben es auch weg. Jeder Motor geht anders mit ihnen um und sie sehen auch beim Spielen anders aus und fühlen sich auch anders an.

Sie können die Einschränkungen der Engine in Animationen erkennen und feststellen, welche Engine auch von dieser verwendet wurde.


3

Ich hätte nie gedacht, dass du das wirklich kannst.

Am einfachsten zu sagen:

  • Sehr oft haben sie beim Start große "Unity Engine" - oder "Unreal Technology" -Logos.
  • Unternehmen, die Game-Engines wiederverwenden - In einem Open-World-Spiel von "Rockstar Games" wird mit ziemlicher Sicherheit eine überarbeitete GTA-Engine zum Einsatz kommen.

Um ehrlich zu sein, sehe ich es auch oft nicht, aber die Leute um mich herum tun es sofort.
Bart van Heukelom

2
"Sehr oft haben sie beim Start große" Unity Engine "- oder" Unreal Technology "-Logos." Danke Captain Obvious! : P
Paul Manta

3

Es gibt subtile Unterschiede in den Motoren und was sie gut und schlecht sind, ist von Spiel zu Spiel leicht zu erkennen.

Die genaue Kombination dieser Merkmale kann häufig den Motor identifizieren.


2

Abgesehen von der 3D-Grafik erkennen wir auch das gemeinsame Verhalten der Game Engine. Es gibt viele kleine Variablen, die in jeden Teil eines Spiels eingehen, und bestimmte Kombinationen, die einmal festgelegt wurden, bleiben Teil aller Spiele, die diese Engine verwenden.

Solche Variablen können sein: Zeichenbewegungsgeschwindigkeit, Zeichenbewegungsbeschleunigung, Kameraschwenkgeschwindigkeit, Kameraschwenkbeschleunigung, Kameraschwenkglätte und so weiter.

Dies ist sehr offensichtlich bei Mods oder Spielen, die als Mods gestartet wurden (Hallo Source-Engine-Spiele), da, sobald das Design über die Grundlagen hinausgegangen ist, selten jemand zurückkehrt, um so etwas wie die Beschleunigungsrate eines Sprungs zu optimieren. Der Effekt all dieser kleinen Variablen ist, dass sich die Spiele "ähnlich anfühlen", aber auf eine Art und Weise, die schwer zu fassen ist.


1

Sie können Unreal-Spiele erzählen, weil sie alle den gleichen unglaublich schlechten Skin-Shader und die gleichen dummen "Physik" -Puzzles verwenden.


6
Theres ein Grund, warum sie "
unwirklich

1

Vieles, was die Leute sagen, ist ein typischer Motor, der eher mit Kunst zu tun hat. Motoren befähigen oder beschränken das Kunstvermögen, aber die Gestaltung und Ausführung des Gefühls der Dinge ist größtenteils ein Kunstproblem. Nehmen Sie zum Beispiel die Gesichter in Oblivion; So viele Leute machten den Motor für die etwas weniger überzeugenden Charaktere verantwortlich. Dies war eindeutig ein Problem mit der Kunst, oder, wenn nicht, mit dem Abschnitt von Bethesdas Code, der Gesichter miteinander verband, und nicht mit der ganzen "Maschine". In ähnlicher Weise denken Menschen, wenn sie glänzende, schmutzige Space-Marines sehen, die Steroide missbrauchen, „unwirklich“, aber dies ist eher eine Kunstrichtung als eine Facette der zugrunde liegenden Engine, die diese Kunst zeigt. Obwohl verschiedene Studios schmutzige Space-Marine-Spiele machen, werden sie oft unwirklich verwenden, weil es '


1

Ich denke, es gibt subtilere Anzeichen als das, was Sie sehen. Quake fühlte sich bei OpenGL, Software und PowerVR gleich an - trotz des jeweils einzigartigen Aussehens.

Zum Beispiel fühlten sich die Quake-Engine-Spiele für mich solider an, während sich die Build-Engine fadenscheiniger anfühlte und sich Unreal irgendwie abstrahiert anfühlte.

Das ist größtenteils Physik - und ich vermute, dass das auch mit der Spieleschleife zu tun hat.


Wow - ich habe es nie bemerkt, aber ich habe genau das Gleiche über diese Motoren empfunden, seit ich mit ihnen vertraut bin. Vielleicht ist es, anstatt eines konkreten Beispiels für die Definition eines Motors, viel mehr ein solches "Gefühl", das man bekommt, wenn man damit interagiert?
PfhorSlayer

0

Ich habe festgestellt, dass Gesichtsanimationen normalerweise ein totes Werbegeschenk sind. Es gibt eine Menge Variationen und auch bei unterschiedlicher Kunst kann man immer noch die gleichen Muster in den Texturen sehen.


-1 Gesichtsanimation hat nichts mit der Motoridentifikation zu tun. Entweder seine manuelle Morph- oder Knochenanimation oder sein FaceFX. FaceFX verschenkt sich selbst und viele, viele Motoren nutzen es.
Quazi Irfan

0

Ich erkenne Motoren oft an ihrer Physik. Am bemerkenswertesten ist hier die Quell-Engine, insbesondere der Teil, der Objekte aufnimmt. Sie werden feststellen, dass das Aufnehmen von Dingen in vielen Spielen ähnlich ist. Ich glaube, das liegt am Motor. Ich stimme auch zu, dass verschiedene Motoren unterschiedlich mit Licht umgehen, sodass Sie sie daran erkennen können.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.