Was sollte eine Perfekte Game Engine alles haben?

Einstiegsfragen, Mathematik, Physik, künstliche Intelligenz, Engine Design
Antworten
Benutzeravatar
GamerZ
Beiträge: 41
Registriert: 19.12.2009, 18:39
Wohnort: Köln

Was sollte eine Perfekte Game Engine alles haben?

Beitrag von GamerZ »

Hi was sollte für euch eine Game Engine alles enthalten welche Features etc.??

MfG GamerZ
Benutzeravatar
Aramis
Moderator
Beiträge: 1458
Registriert: 25.02.2009, 19:50
Echter Name: Alexander Gessler
Wohnort: 2016
Kontaktdaten:

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von Aramis »

Sie muss an erster Stelle stabil und sauber designt sein um praktisch nutzbar zu sein.

Im Hobbybereich treten tatsächliche Featurelisten für mich eher in den Hintergrund. HDR-Rendering ist sicherlich auch hier schick, ebenso Post-Effekte (wie DoF, SSAO...), Skinning, mehrere Kameras, dynamische Lichtquelle, weiche Schatten, Physikunterstützung, Skalierbarkeit auf mehrere Rechenkerne (imho einer der Kernaspekte moderner Game-Engines!), .. die Liste könnte man lange fortsetzen. Die 'perfekte' Engine hat auch noch eine 'perfekte' Toolchain - Editoren, Plugins/Erweiterungen für 3D-Modeller, Dokumentation, ...

Im Grunde genommen hängt es davon ab, WAS du mit 'der Game Engine' machen willst.

Das hier kennst Du hoffentlich schon, wenn nicht wird es Zeit: Write Games, not Engines
Der Autor hat Recht, glaub mir. Allerdings ist es ein persönlicher Lernprozess, da muss jeder selber durch. Viel Spaß.
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von Chromanoid »

Wenn's wirklich um technische features geht ohne Spielhintergrund würde ich das ganze gerne verschieben... Ist Algorithmen und Datenstrukturen der richtige Ort?
Seraph
Site Admin
Beiträge: 1174
Registriert: 18.04.2002, 21:53
Echter Name: Steffen Engel

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von Seraph »

Aramis hat geschrieben:Das hier kennst Du hoffentlich schon, wenn nicht wird es Zeit: Write Games, not Engines
Der Autor hat Recht, glaub mir. Allerdings ist es ein persönlicher Lernprozess, da muss jeder selber durch. Viel Spaß.
Schoener Artikel, gefaellt mir. :)

@Christian: Ja, Algorithmen und Datenstrukturen klingt passender. :)
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von Zudomon »

@GamerZ
Hast du vor eine solche Engine zu schreiben?
Benutzeravatar
Thoran
Establishment
Beiträge: 224
Registriert: 15.05.2009, 12:51
Wohnort: Stuttgart
Kontaktdaten:

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von Thoran »

Die perfekte Engine sollte all das haben was ich brauche (dieser Punkt muss wohl von jedem selbst definiert werden) ;) dabei überdurchschnittlich gut dokumentiert sein und wie bereits angesprochen eine umfangreiche Toolunterstützung haben, so daß man Inhalte der benötigten Form leicht auf der Engine verwenden kann, bzw. mit den Tools in benutzerfreundlicher Weise erstellen. Idealerweise unterstützt mich das Toolset auch bei der Erstellung meines finalen Installers um das Spiel zu verteilen.

Thoran
Wer Rechtschreibfehler findet, darf diese gerne behalten.
Mein Entwicklertagebuch
Aktuelle Projekte: Universum: Domination (ehemalig AlphaOmega),Universum: Sternenjäger, PixelWars: Highscore-based Top-Down-Spaceshooter
Spieleengine Unreal 5
joeydee
Establishment
Beiträge: 1039
Registriert: 23.04.2003, 15:29
Kontaktdaten:

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von joeydee »

Naja... man muss damit möglichst bequem ein Spiel entwickeln können.

Irgendwie habe ich es selten gesehen, dass in einem Post/Blog/etc. ein ganz simpler Renderer (Extremfall wäre Wireframe) als "Meine 3D-Engine" vorgestellt wurde, anhand welchem man aber Ki, Physik und Gameplay (furchtbares Wort - fast wie "Engine" ;-)) schon komplett entwickeln und testen könnte, wobei das in meinen Augen mal gar kein schlechter Weg wäre. Mein persönlicher Eindruck ist auch, dass viele sich lieber ans Schreiben einer "Engine" machen, weil ihnen schlichtweg das Talent und eine brauchbare(!) Idee für das Entwickeln eines Spiels (allem voran Content) fehlt - im Sinne von "Leben in die Bude bringen". Denn dazu muss die "Bude" gar nicht besonders gut ausgestattet sein. Es ist ein Trugschluss, dass sich andere dafür begeistern und Content wie von selbst kommt, wenn erstmal die Engine steht und "alles kann". Zumal sie so niemals "stehen" wird, denn die finale Prüfung kann nur an einem Spiel bestanden werden. Und sie muss nur das können was das Spiel verlangt. Nicht was irgendwer irgendwann einmal vermissen könnte.

"Perfekt" für eine gute Lernkurve für andere wäre z.B. auch, wenn man ohne Programmierung eigenen Content und einen kompletten Spielablauf beispielsweise rein über XML und mitgelieferte/empfohlene Editoren und Tools einbringen könnte, aber das Ganze jederzeit bis zu den Wurzeln aufbohren kann, je nach eigenem Wissen und Lernbereitschaft.

Um deine Frage direkt zu beantworten (im Sinne von Features für eine brauchbare 3D-Engine für dich selbst bzw. Hobbyentwickler):
- Spieltyp festlegen, allgemeine Grenzen abstecken. Denn je mehr eine Engine können will, desto komplizierter (und damit unbrauchbarer, siehe erster Satz im Post) wird sie. Sonst wäre die "beste" Engine z.B. ja schon das blanke DX-Toolkit.
- einfacher, leicht erweiterbarer Renderer. Auch hier heißt es gewisse Grenzen abstecken. Dabei dürfte das Umfangreichste die Unterstützung für das Beleuchtungsmodell sein. Ich glaube an dieser Stelle wird fast jedes Projekt zur Never-Ending-Story, weil man sich über den ersten Punkt keine Gedanken gemacht hat bzw. schlichtweg keine Grenzen akzeptieren will. Ein guter Renderer wirbt nicht mit Effekten, sondern kümmert sich um Optimierungen rund um Beleuchtung, Culling und dynamische Datenverwaltung, damit ich meine Level möglichst groß und frei designen kann, und bietet mir eine Shader-Schnittstelle für meine eigenen Effekte.
- einfaches, leicht erweiterbares GUI (es müssen nicht gleich sämtliche Komponenten eines Betriebssystems simulierbar sein, dafür aber Splashscreens und ggf. Cutscenes)
- Unterstützung bei der Erstellung/Konfiguration des User-Interface (damit meine ich den Input, womit das Spiel gesteuert wird). Man muss z.B. in der Lage sein, den Input mehrfach neu anzupassen, wenn sich das Spiel in der Testphase für andere als schwer steuerbar entpuppt.
- gute und solide Asset-Verwaltung (nachladen und Verwaltung von Leveldaten, Sounds, Texturen etc.)
- Für mich einer der wichtigsten Punkte: einfach zu handhabende Entities incl. Animation, Physik, Trigger, KI, Soundplatzierung etc. für schnelles, komplettes Prototyping
- Import für 1-2 (statt zwanzig) gängige 3D-Formate reicht aus
- an letzter Stelle stehen bei mir zusätzliche Sound- und Grafikeffekte (auch für das GUI, inkl. animierter Menüs). Am liebsten in der Form "mitgeliefert" statt "eingebaut", damit ich eigene Effekte anhand von Beispielen entwickeln kann.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von Zudomon »

Für mich sollte die perfekte Engine alles können. Darunter fällt nicht nur, Optimierungen und eine vollkommen flexible Renderpipeline, sondern auch, dass jeder Game-Typ damit umgesetzt werden kann. Außerdem sollte sie die komplette Toolchain bereithalten, so das kein externes Programm mehr genutzt werden muss und man alles komplett in der Engine bzw. in dem dafür bereitgestellten Editor zur Verfügung hat. Darunter fällt auch Textur erstellen und bearbeiten, sowie das Sound/Musik editieren. Am besten noch Synthesizer und co. damit auch noch Sounds aus dem Nichts erzeugt werden können.
Scriptsprache, Netzwerk und letztlich auch Plattformunabhängigkeit. Wobei ich bei letzterem nicht Linux meine, sondern eher Mac, XBox, PS3 usw.
Physik, KI und Gameplay verstehen sich von selbst.

Und was für mich als Einzelgänger noch besonders wichtig ist, ist die einfache Bedienung und automatisierte Unterstützung zur Contentschaffung in JEDEM Bereich.

Alles sollte einfach nutzbar sein, aber bei bedarf soll man nicht nur Shader usw. anpassen können, sondern auch bestimmen, wie die Vertex- und Indexbuffer verwaltet werden und wie die Vertexformate aussehen.

Das ist mein Ziel, wobei ich erstmal Plattformunabhängigkeit ausschließen muss.
Vom besagten bereits umgesetzt: 0,03% :lol:
Virus
Beiträge: 38
Registriert: 20.09.2002, 17:28
Kontaktdaten:

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von Virus »

Zudomon hat geschrieben:Außerdem sollte sie die komplette Toolchain bereithalten, so das kein externes Programm mehr genutzt werden muss und man alles komplett in der Engine bzw. in dem dafür bereitgestellten Editor zur Verfügung hat. Darunter fällt auch Textur erstellen und bearbeiten, sowie das Sound/Musik editieren. Am besten noch Synthesizer und co. damit auch noch Sounds aus dem Nichts erzeugt werden können.
Halte ich eher für wenig sinnvoll. Wieso sollte ne Engine Bild-/Soundbearbetiungsprogramme und 3D-Modellirungssoftware enthalten?. Gibts doch alles schon. Nur in sehr gut. Ohne Einarbeitungsaufwand (wenn man die Tools kennt). Und bewährt. Mmn ist sowas eher schlecht und hat da nichts zu suchen.

Perfekt gibts aber sowieso nicht - zum Glück.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von Zudomon »

Virus hat geschrieben:
Zudomon hat geschrieben:Außerdem sollte sie die komplette Toolchain bereithalten, so das kein externes Programm mehr genutzt werden muss und man alles komplett in der Engine bzw. in dem dafür bereitgestellten Editor zur Verfügung hat. Darunter fällt auch Textur erstellen und bearbeiten, sowie das Sound/Musik editieren. Am besten noch Synthesizer und co. damit auch noch Sounds aus dem Nichts erzeugt werden können.
Halte ich eher für wenig sinnvoll. Wieso sollte ne Engine Bild-/Soundbearbetiungsprogramme und 3D-Modellirungssoftware enthalten?. Gibts doch alles schon. Nur in sehr gut. Ohne Einarbeitungsaufwand (wenn man die Tools kennt). Und bewährt. Mmn ist sowas eher schlecht und hat da nichts zu suchen.

Perfekt gibts aber sowieso nicht - zum Glück.
1. Wäre es perfekt auf die Engine zugeschnitten
2. WYSIWYG Prinzip
3. Toolchain kann editiert werden und die Ergebnisse sind direkt integriert, ohne extra irgendwas von A nach B schieben zu müssen
4. Es kann so implementiert werden, dass man auch im nachhinein Editieren kann und alle weiteren Änderungen automatisch wieder draufgerechnet werden
5. Man kann auf Parametern arbeiten
Benutzeravatar
Aramis
Moderator
Beiträge: 1458
Registriert: 25.02.2009, 19:50
Echter Name: Alexander Gessler
Wohnort: 2016
Kontaktdaten:

Re: Was sollte eine Perfekte Game Engine alles haben?

Beitrag von Aramis »

Good programmers code, great reuse.

Das ist eine Idealvorstellung. 3ds max, Maja, ZBrush und Konsorten sind über die Jahre einfach zu mächtig geworden um durch Engine-eigene Tools so schnell ersetzt und, was den Workflow angeht, übertroffen zu werden.
Antworten