Die Entwicklungsumgebung

Wir wollen ein Spiel programmieren, doch mit was?
Diese Entscheidung hängt von vielen Faktoren ab. Da ich das ganze als Hobby bzw. in meinem Nebengewerbe angehe, ist für mich der wichtigste Faktor die Zeit, denn an der mangelt es mir. Damit schließe ich schon mal aus, dass ich absolut bei 0 anfangen könnte – eine Spiele-Engine bzw. eine passende Entwicklungsumgebung muss her.
Eine solche Entwicklungsumgebung, die direkt für die Spieleentwicklung erstellt wurde, beinhaltet in der Regel bereits eine Spiele-Engine mit vielen nützlichen Funktionen.
Vorweg – Meine Entscheidung fiel auf GameMaker: Studio, es gibt aber auch einige Alternativen:
Siehe Liste von Spiele-Engines.

Im Folgenden möchte ich ein paar dieser Entwicklungsumgebungen vorstellen, mit ein wenigen Stichworten der jeweiligen Firmen selbst:

Unity

  • Feature-rich and highly flexible editor
  • 22 platforms
  • Uniquely extendible tool
  • Create highly-optimized content
  • Amazing visual fidelity, rendering power and ambience
  • Rapid iteration
  • Retargetable animations
  • Full control of animation weights at runtime
  • Enlighten-powered Real-time Global Illumination
  • Physically-based shading
  • Audio: Real-time mixing and mastering
  • 2D and 3D Physics – Box2D, NVIDIA® PhysX® 3.3
  • Scripting: C#, JavaScript or Boo
  • Version control: Perforce and Plastic SCM

 

Unreal Engine

  • DirectX 11 & 12 Rendering Features
  • Cascade Visual Effects
  • New Material Pipeline
  • Blueprint Visual Scripting
  • Live Blueprint Debugging
  • Content Browser
  • Persona Animation
  • Matinee Cinematics
  • Terrain & Foliage
  • Post-Process Effects
  • Full Source Code Access
  • Professional Source Control
  • C++ Code View
  • Hot Reload Function
  • Simulate & Immersive Views
  • Instant Game Preview
  • Possess & Eject Features
  • Artificial Intelligence
  • Audio
  • Leading Middleware Integrations

 

GameMaker: Studio

  • 14+ platforms
  • Asset Workflow: Shaders, Sprites, Sounds, Fonts
  • Scripting: Script Editor, built-in scripting language
  • real-world physics: Box2D
  • Networking
  • multichannel three dimensional positional audio utilising
  • Several compilers
  • Monetize, Analyse, Social media, Game Services
  • Source Control: SVN, CVS or Git

 

RPG Maker

  • Enhanced map editor
  • Character/Enemy/Skill/Equipment Database
  • Built-in Character Generator
  • Cof graphics, with 4 tilesets and collapsed character sprites
  • Shadow tool
  • Own scripting: RGSS3, based on Ruby 1.9.2
  • Windows only

 

Construct 2

  • HTML5 2D games
  • Quick & Easy
  • Flexible Behaviors as pre-packaged functions
  • Instant Preview without compiling
  • Blend modes, effects and particle system
  • Over 70 WebGL-based pixel shader
  • Multiplatform Export
  • Easy Extensibility

Dies ist eine Auswahl die darauf basiert, welche Programme mir am häufigsten begegnet sind, bzw. mir am bekanntesten scheinen. Ich möchte also nicht behaupten diese seien die besten.
Auch die Stichpunkte wurden halbwegs willkürlich gewählt, d.h. wenn ein Punkt bei einer Entwicklungsumgebung fehlt, den eine andere hat, bedeutet dies nicht, dass dieser Umgebung die jeweilige Funktion fehlt.

Welche Entwicklungsumgebung für euch die richtige ist, müsst ihr selbst abwägen. Wie bereits erwähnt fiel meine Entscheidung auf den GameMaker, aus folgenden Gründen:

  1. Ich besitze bereits Lizenzen für die kommerzielle Nutzung für die iOS und Android Module.
  2. Ich habe bereits seit 2008 mit älteren Versionen des GameMakers gearbeitet und habe viel Erfahrung angesammelt, wodurch sich Zeit sparen lässt.
  3. Ich habe bereits andere Projekte damit erstellt, wobei ich vor allem im letzten viel Aufwand in Wiederverwertbarkeit investiert habe und dies somit weiter nutzen kann.

Müsste ich hingegen komplett bei Null beginnen, würde meine Wahl wahrscheinlich auf Unity3D fallen. Dieses Programm kam für mich früher nicht in Frage, weil es sehr teuer war. Das Bezahlungsmodell hat sich aber verändert: Man bezahlt jetzt erst ab einem gewissen Betrag, den man durch Unity als Einkommen erzielt hat.
Auch kann ich Unity und GameMaker beide für Anfänger empfehlen, da sich im Internet unzählige Tutorials und Lernmaterial finden lässt.

In meinen folgenden Posts werde ich demnach gezielt auf GameMaker abhängige Aspekte und Umsetzungen eingehen, die bei anderen Entwicklungsumgebungen ganz anders angegangen würden. Trotzdem werde ich mich auf das Vorgehen allgemein konzentrieren, so dass es auch ohne Nutzung des GameMakers ein lehrreicher und informativer Blog wird.

Wer sich noch immer nicht entscheiden kann, dem empfehle ich einfach ein paar der genannten (oder anderen) Programme zu testen und ein oder zwei Anfänger Tutorials durchzuarbeiten, um sich einen angemessenen Eindruck zu verschaffen.

Blogger
Original Post, Montag, 13. Juli 2015