Für viele Entwickler erscheint die Idee, ein Videospiel alleine zu entwickeln, oft wie eine monumentale Aufgabe. Spieleentwickler müssen Kunst, Animation, Physik, Mathematik, Rendering, Shader und unzählige weitere Dinge berücksichtigen, die wahrscheinlich so aussehen, als wären sie in keinster Weise relevant für den täglichen Job beim Erstellen von Webseiten, Diensten oder Geschäftsanwendungen.
Wenn Sie ein Entwickler sind, der sich mit Spielen beschäftigen möchte, werden Sie vielleicht denken, dass es große Unterschiede zwischen der Entwicklung von Spielen und Anwendungen gibt. Aber es ist wichtig zu erkennen, dass der Großteil der Arbeit in jeder Art von Entwicklung ähnlich ist. Als Spieleprogrammierer arbeiten Sie tagtäglich hauptsächlich im Code und lösen Probleme – das ist dasselbe, was Sie tun, wenn Sie Geschäftsanwendungen erstellen.
Das Lernen, wie man Spiele entwickelt, kann ihnen in ihrer Karriere helfen, indem es Sie zu einem besseren Gamecoder macht oder einfach indem es Sie lehrt, flexibel zu sein und neue Fähigkeiten in ihr Portfolio aufzunehmen.
In diesem Artikel werden wir einerseits erläutern, wie sich die Spiele- von der Appentwicklung unterscheidet. Zudem werden wir beschreiben, wie man mit der Entwicklung eigener Spiele beginnt und einige Ratschläge geben, worauf man dabei achten sollte.
Unterschiede in der Spieleentwicklung.
Worin bestehen also die Unterschiede zwischen Spiele- und App-Entwicklung?
Der erste Unterschied ist die Entwicklungsumgebung. Bei jeder App-Entwicklung ist die Umgebung in der Regel ziemlich spezialisiert. Sicher können Sie gut wie jeden Editor programmieren, aber Sie haben wahrscheinlich ihren Editor ihrer Wahl, als denjenigen, der am besten für die spezifischen Projekttypen funktioniert, an denen Sie arbeiten.
Die Spieleentwicklung verwendet auch eine spezielle Entwicklungsumgebung. Meistens ist diese Entwicklungsumgebung eine Mischung aus dem „Editor“ der Spiele-Engine und einem Code-Tool wie Visual Studio. Wenn Sie Unreal nutzen, verwenden Sie den Unreal-Editor und Visual Studio mit C++. Für Unity verwenden Sie den Unity-Editor und C# (in VS, Rider, VS-Code oder MonoDevelop).
Die Hälfte davon mag vertraut klingen. Wir alle haben Code-Editoren verwendet. Aber warum brauchen wir einen zusätzlichen Engine „Editor“ für die Spieleentwicklung?
Im Editor der Engine wird alles zusammengebunden. Hier genau setzen Sie diese Kunst ein, schließen ihren Code an, erstellen ihre Levels, konfigurieren Animationen und machen alles andere, was nicht nur das Schreiben von Code ist.
Es macht auch ihre Entwicklungserfahrung erheblich einfacher. Viele der Dinge, die man bei der Spieleentwicklung für „schwer“ halten würde, sind mit den heutigen Engines extrem einfach.
Möchten Sie, dass sich ein Ball, der auf den Boden fällt wie ein echtes Objekt bewegt? Kein Problem, fügen Sie die richtige Physikkomponente hinzu und schon sind Sie fertig. Möchten Sie, dass es aufprallt? Fügen Sie einfach ein physikalisches Material hinzu und passen Sie den Bounciness-Faktor an. Dafür sind kein Code und keine speziellen mathematischen Fähigkeiten erforderlich – nur das Wissen, welche Komponente hinzugefügt werden soll.
Die gleiche Idee gilt auch für das meiste, was Sie außerhalb ihrer Spiellogik tun möchten (die Spiellogik ist genau wie ihre Business-App-Logik, alle Teile sind spezifisch für ihren Anwendungsfall). Alle „harten Dinge“ (z.B. Physik, Rendering, Geräteeingabe, Audio) sind bereits erledigt. Es handelt sich dabei um gelöste Probleme und Sie müssen nur wissen, wo die Lösung liegt.
Wir denken an das Erstellen eines Spiels, ähnlich wie das Erstellen einer Website. Vor langer Zeit mussten Sie sich mit dem eingehenden Netzwerkstrom auseinandersetzen – jetzt hängen Sie einfach an der richtigen Stelle in ihrem Framework und konzentrieren sich auf ihr spezifisches Geschäftsproblem. Denken Sie ebenfalls an die Spieleentwicklung. Sie haben ein Ziel, sie haben ein riesiges Framework und Sie müssen nur Teile miteinander verbinden, bis alles funktioniert.
Erste Schritte.
Unsere übliche Empfehlung für jeden, der daran interessiert ist, mit der Spieleentwicklung zu beginnen, ist ähnlich wie unsere Empfehlung für jemanden, der sich in einem anderen der Entwicklung spezialisiert: Fangen Sie klein an.
Wählen Sie ein einfaches Handyspiel, das bereits existiert. Wählen Sie dann eines, das noch einfacher ist und erstellen Sie es durch Tutorials neu. Es gibt viel zu lernen und das Eintauchen in ein großes Projekt sorgt garantiert zunächst einmal für viel Überforderung und Frustration. Wählen Sie also das einfachste Spiel, das Sie sich vorstellen können, um zu beginnen.
In der Praxis empfehlen wie häufig, dass die Leute mit so etwas wie Flappy Bird anfangen.
Mit den richtigen Tutorials und ein wenig Verständnis für die Programmierung können Sie diese kleinen Spiele an einem Tag bauen. Während des gesamten Prozesses werden Sie anfangen, sich im Editor zurechtzufinden, neue Komponenten zu entdecken und zu erkennen, wie wenig Code benötigt wird (und Sie werden unterwegs ein wenig C# lernen).
Und wenn Sie die Spiele beendet haben, können Sie diese auf ihrem Smartphone erstellen und sie anschließend mit ihren Freunden und ihrer Familie teilen. Es ist ganz einfach.
Eine weitere Fähigkeit, die Sie durch das Erstellen von Spielen üben können, ist, wie man etwas entwickelt, das zwischen den Plattformen wechselt. Diese Fähigkeit ist wichtig, denn je mehr Plattformen ihre App enthält, desto wertvoller ist ihre Arbeit.
Einer der Gründe, warum wir Unity als Game-Engine so lieben, ist die einfache Umstellung der Zielplattform. Sie können ihr Spiel zuerst für Windows oder Mac erstellen, dann einfach ein neues Zielgerät in den Erstellungseinstellungen auswählen und ihr Spiel oder ihre Anwendung ohne Änderungen oder individuelle Anpassungen nach außen schieben.
Wir haben schon einmal plattformübergreifende Tools wie Xamarin verwendet und obwohl sie gut sind, kommen sie nicht annähernd der Benutzerfreundlichkeit nahe, die man mit Unity erhält. Wählen Sie einfach die neue Plattform aus, drücken Sie „Switch“ und bauen Sie. Meistens funktioniert es einfach, ohne Änderungen. Sie können zwischen allen mobilen Plattformen wählen, WebGL, Linux, Mac, Windows, Xbox, Playstation und vielem mehr (ca. 30 Plattformen insgesamt).
Auch wenn Sie sich nicht speziell für Spiele interessieren, wird die Verwendung einer Game Engine für Business Apps von Jahr zu Jahr immer beliebter (insbesondere für wirklich interaktive/visuelle). Die Hälfte der Entwicklungsarbeiten im Rahmen des Unity-Vertrags, die ich machte, sind für Game-Anwendungen, wie die Visualisierung von Daten und Standorten und die Erstellung interaktiver Displays.
Und die Möglichkeit, die Plattform zu wechseln und dem Kunden eine mobile Version seiner Kiosk-Applikation zur Verfügung zu stellen, bringt ihm immer ein Lächeln ins Gesicht (dauert etwa 10 Minuten).
Entwicklung von 2D-Spielen für die Praxis.
Wir haben erwähnt, dass man wahrscheinlich klein anfangen sollte, indem man ein einfaches Spiel spielt. Ein einfaches Spiel bedeutet in der Regel etwas 2D und Sie denken vielleicht: „Ich hasse 2D-Handyspiele.“
Sie sind nicht allein.
Aber das ist kein Grund, die einfachen Projekte zu überspringen. Eigentlich unterscheidet sich ein 2D-Spiel technisch nicht von einem 3D-Spiel. Sie machen die gleichen Dinge, indem Sie einfach alles flach stellen.
Der Übergang von der 2D- zur 3D-Entwicklung in Engines wie Unity ist praktisch nahtlos. Sie können einfach eine Taste drücken und ihre Ansicht wechselt.
Sie können das Spiel mit 2D-Sprites erstellen oder Sie können es komplett in 3D erstellen und einfach eine Kameraeinstellung austauschen, wenn Sie fertig sind. Das ist eine Technik, bei der wir die ganze Zeit 3D-Modelle erstellen und anschließend die Kamera verwenden, um die flach aussehen zu lassen.
Einbinden von Kunst in ihr Spiel.
Vor einem Jahrzehnt hätten Sie Pech gehabt. Gute Game-Arts für ein Spiel zu finden, ist eine teure und zeitaufwändige Aufgabe. Aber mit der Explosion der Indie-Entwicklung haben sich die Quellen für qualitativ hochwertige Game-Arts zu günstigen Preisen vermehrt.
Wir verwenden die Unity-Engine in erster Linie für die Spieleentwicklung und haben festgestellt, dass sie Zehntausende von Grafiken im Unity Asset Store zu niedrigen Preisen anbietet – und ein Tonne davon ist einfach kostenlos.
Meiner Erfahrung nach ist so ziemlich alles, was Sie sich wünschen, verfügbar und einsatzbereit in ihrem Spiel in einer dieser bestehenden Engines. Es ist nicht notwendig, das Modellieren zu erlernen, einen Künstler zu finden oder sogar einen Animator einzustellen. (Natürlich wird ein größeres Team diese Rollen übernehmen oder Sie werden jemanden einstellen, der speziell Game-Arts entwickelt, aber wenn man alleine anfängt, sind diese Aktionen mehr eine Ausrede als eine eigentliche Anforderung).
Und diese Game-Arts zu importieren, ist einfach. Legen Sie es in der Unity-Projektansicht ab und Sie sind fertig. Sie können Sie nun verwenden. Ziehen Sie es aus der Projektansicht auf ihre Szene und es rendert – erinnern Sie sich, dass die harte Arbeit bereits für Sie erledigt ist.
Das Gleiche gilt für Musik, Soundeffekte, Partikel, Shader und alles andere als ihren Code und die Vision für ihr Spiel. Genau wie bei der Grafik für ihr erstes Spiel können Sie sich auf das verlassen, was ihre Engine bietet, anstatt zu versuchen, etwas ganz Neues zu schaffen. Denken Sie daran, halten Sie es einfach.
Kenntnisse in der Spieleentwicklung sind nützlich.
Der Einstieg in die Spieleentwicklung ist einfach. Wenn Sie das Coden beherrschen, können Sie Spiele entwickeln. Sie benötigen ein paar Tools und einiges an Zeit, aber es ist eine nützliche Fähigkeit, dies gilt sogar für App-Entwickler.
Zu wissen, wie man Spiele entwickelt, auch einfache, kann ihre Fähigkeiten verbessern. Es kann auch eine nützliche Möglichkeit sein, ihren Kunden Geschäftsanwendungen zu präsentieren. Sie können Optionen mit atemberaubenden interaktiven Grafiken, Geräten und Plattformen, die normalerweise nicht verfügbar wären und einer Vielzahl anderer beeindruckender Funktionen vorschlagen.
Also, wenn Sie bereit sind anzufangen zu starten, sollten Sie so schnell wie möglich mit der Arbeit beginnen.
Wählen Sie ein einfaches Spiel zum Üben und sorgen Sie damit zu Beginn für weniger Frust und Überforderung.
Wenn Sie mit ihrem ersten Spiel fertig sind, werden Sie begeistert sein… und vielleicht ist es ihr erster kleiner Sprung in die Welt der Spieleentwicklung.
Vielen Dank für ihren Besuch.