paint-brush
Ist eine Karriere in der Spieleentwicklung das Richtige für Sie?von@solverit
378 Lesungen
378 Lesungen

Ist eine Karriere in der Spieleentwicklung das Richtige für Sie?

von Andrey Mikheev16m2023/11/01
Read on Terminal Reader

Zu lang; Lesen

Wenn Sie Spieleentwickler werden möchten, konzentrieren Sie sich zunächst auf allgemeine Programmierkenntnisse und schreiben Sie sauberen, qualitativ hochwertigen Code. Beeilen Sie sich nicht, ein Milliarden-Dollar-Spiel zu entwickeln; Versuchen Sie stattdessen, als Entwickler zu wachsen. Priorisieren Sie Lernkonzepte wie sauberen Code, saubere Architektur, ECS, SOLID, KISS, OOP, Algorithmen und Datenstrukturen. Erwägen Sie ein Praktikum in einem Spielestudio oder ein Selbststudium, um Erfahrungen zu sammeln. Wählen Sie je nach Ihren Zielen eine Programmiersprache wie C#, Java, JavaScript, Lua oder Python. Das Erlernen von technischem Englisch ist von entscheidender Bedeutung, da die meisten Programmierressourcen auf Englisch verfügbar sind. Entscheiden Sie, ob Sie an Einzelspieler- oder Mehrspielerspielen arbeiten möchten. Beginnen Sie mit kleinen Projekten, um Erfahrungen zu sammeln und die Komplexität schrittweise zu steigern. Wählen Sie Ihre Tools, lernen Sie zuerst die Programmiersprache und gehen Sie dann zu den Spiele-Engines über. Erwägen Sie die Veröffentlichung Ihres ersten Spiels auf Plattformen wie Itch.io oder Webportalen. Vermeiden Sie „No-Code“-Ansätze und denken Sie daran, Spaß zu haben – Leidenschaft ist bei der Spieleentwicklung entscheidend.
featured image - Ist eine Karriere in der Spieleentwicklung das Richtige für Sie?
Andrey Mikheev HackerNoon profile picture
0-item


Sie möchten also in die Spieleentwicklung einsteigen. Oder konkreter und einfacher: Sie möchten Spieleentwickler werden und auf der technischen Seite arbeiten. Nun, jeder hätte Fragen dazu, wie das geht!


Zum Beispiel:


  • Wo soll man anfangen?
  • Wie können Sie Ihre Fähigkeiten verbessern?
  • Welche Spiel-Engine sollte man zuerst besser beherrschen?
  • Welche Programmiersprache wählen?


Es gibt unzählige Informationen zu diesen Themen – so viele, dass Ihr Gehirn leicht überlastet wird und es dadurch schwierig wird, sinnvolle Entscheidungen zu treffen.


Mein Name ist Andrey Mikheev und ich bin Senior Backend Developer bei Pixonic, MY.GAMES. Ich bin seit 20 Jahren in der Gaming-Branche tätig. Ich habe zum ersten Mal in den 90er Jahren versucht, Spiele auf dem damals beliebten ZX Spectrum zu entwickeln. In diesem Artikel beleuchte ich die Optionen, die Sie haben, wenn Sie in die Spieleentwicklung wechseln, und erkläre, wie sich diese Optionen unterscheiden.


Ein paar Dinge zuerst

In diesem Beitrag gehen wir davon aus, dass der Leser seine Reise in die Branche gerade erst beginnt. Es ist unmöglich, alles gleichzeitig zu lernen, und deshalb müssen Sie Prioritäten setzen und entscheiden, wie Sie Ihr Studium gestalten möchten. Natürlich hat jeder eine andere Erfahrung; Es gibt mehr als einen Weg, sich in diesem Beruf weiterzuentwickeln.


Das Schöne an der Spieleentwicklung (und an vielen anderen Bereichen der IT) ist, dass es viele Bereiche gibt, in denen Sie Ihre Fähigkeiten anwenden können: Sie könnten Produzent, Vermarkter, Künstler, Designer, Drehbuchautor, Modellierer, Analyst, kundenseitiger Entwickler usw. werden. Kernentwickler, Meta-Services-Entwickler, Render-Entwickler usw. Tatsächlich muss man in der Welt der Indie-Spiele so ziemlich alle oben genannten Fähigkeiten kombinieren – aber das ist ein Thema für einen anderen Tag.

Wenn man darüber nachdenkt, eine Karriere in der Spieleentwicklung zu beginnen, konzentriert man sich oft auf die technologischen Aspekte: die Engine, die man beherrschen muss, die Programmiersprache, die man zuerst auswählen muss, oder die spezifischen Fähigkeiten, an denen man arbeiten muss.


Aber bedenken Sie, dass Technologie nur ein Werkzeug ist; Sie müssen nicht Ihre gesamte Identität als Entwickler um eine bestimmte Sache herum aufbauen ; Ein Mechaniker ist nicht der Schlüssel. Heute ist es ein Kreuzschlitzschraubendreher, morgen ein elektrischer und übermorgen ein pneumatisches Werkzeug. Ziel ist es nicht, den Umgang mit einem bestimmten Schraubenzieher zu erlernen, sondern den Aufbau von Autos zu verstehen und zu lernen, wie man sie zusammenbaut und repariert.


Technologie ist nur ein Werkzeug, Ihre Fähigkeiten – darauf kommt es an


Ersetzen Sie diese Schraubenschlüssel durch Spiel-Engines, Programmiersprachen und andere Dinge – und der Punkt wird sich nicht ändern. Dies sind lediglich Werkzeuge, die Sie nutzen können


Einige Ratschläge zu allgemeinen Fähigkeiten für Spieleentwickler

Meiner Meinung nach sind allgemeine Fähigkeiten in dieser Phase das Wichtigste. Denn Ihre Aufgabe ist es nicht, ein „Spiel“ zu erstellen, sondern guten Code zu schreiben .


Das Ziel besteht nicht darin, ein milliardenschweres Spiel zu entwickeln, sondern als Entwickler zu wachsen. Bei der Entwicklung eines milliardenschweren Spiels geht es ohnehin nicht so sehr um Entwicklung, sondern um Ideen und Marketing. Der Code ist dabei zweitrangig. Natürlich stehen diese beiden Ziele nicht im Widerspruch zueinander, aber ich würde Ihnen keinen überwältigenden Erfolg als erstes Ziel setzen – wenn Sie das tun, könnten Sie schnell von der gesamten Unternehmung im Allgemeinen enttäuscht sein.


Zurück zum Thema Code: Ein allgemeiner Fokus auf Code ist wichtig, da qualitativ hochwertiger Code in jeder Branche immer sehr gefragt sein wird und dieser viele Anwendungen hat: Spiele, Fintech, Robotersteuerungsalgorithmen, Raketenstart ins All. Manche würden vielleicht sagen, dass qualitativ hochwertiger Code große Verzögerungen mit sich bringt und Zeit in diesem Geschäft von entscheidender Bedeutung ist. Glauben Sie es nicht. Wenn Sie guten Code schreiben können, gibt es keine Ausfallzeiten.


Wenn Ihr Code schlampig ist, müssen Sie Ihre Gewohnheiten korrigieren, um ein qualitativ hochwertiges Produkt zu erstellen. Das kostet viel Zeit und Mühe.


Ein weiterer sehr wichtiger Punkt betrifft das Timing: Der Zeitaufwand für die Erstellung von gutem Code wird immer durch die Reduzierung des Zeitaufwands für dessen Wartung ausgeglichen . Schließlich handelt es sich bei einem Spiel und insbesondere einem Multiplayer um ein langlebiges Produkt, und die Qualität des Codes ist in diesem Fall von großer Bedeutung.


Andere Spezialisten sollten Ihren Code leicht verstehen und anpassen können, ohne ihn neu schreiben zu müssen. Und Sie sollten es auch leicht lesen können , wenn Sie sich in ein paar Jahren plötzlich dazu entschließen, etwas zu ändern. Als grobes Beispiel: Es ist besser, ein paar Monate damit zu verbringen, einmal hochwertigen Code zu schreiben und in ein paar Tagen schnell einige Änderungen vornehmen zu können, als in einer Woche etwas Unverständliches zu schreiben und dann für jedes Nebenfach einen Monat zu benötigen in Zukunft bearbeiten.



Versuchen Sie, sauberen Code zu erstellen – das wird Ihnen enorm helfen



Kurz gesagt: Sauberer Code, saubere Architektur, ECS, SOLID, KISS, OOP, Algorithmen und Datenstrukturen – all diesen Themen sollte besondere Aufmerksamkeit geschenkt werden, wenn man ein guter technischer Spezialist im Bereich Spieleentwicklung sein möchte.


Ja, Algorithmen könnten manchen Menschen Kopfschmerzen bereiten. Aber es gibt viel mehr dieser „Algorithmen und Strukturen“ in der Spieleentwicklung als in typischen Webprojekten, und wenn Sie sie beherrschen, werden sie Ihr Leben erheblich vereinfachen.


Ein tieferes Verständnis dieser Konzepte lässt sich natürlich nur mit Erfahrung erreichen. Im Laufe der Zeit haben Sie an verschiedenen Projekten mitgewirkt, Sie werden verstehen, wie andere Spezialisten arbeiten, und Sie werden sehen, was Sie persönlich bei der Arbeit mit Spielcode stört.

Es ist entscheidend, aus den Erfahrungen anderer Menschen zu lernen . Studieren Sie Open-Source-Projekte, hören Sie sich Vorträge von Branchenexperten an und denken Sie daran, dass mittlerweile viele Informationsquellen verfügbar sind. Was Sie jedoch nicht tun sollten, ist, den Saft Ihres Projekts zu schmoren, insbesondere wenn Sie keinen guten Mentor in Ihrem Team haben. Kein kompetenter Entwickler kann im luftleeren Raum arbeiten. Die Hauptsache hier ist, es nicht zu übertreiben und Code aus anderen Projekten zu verwenden, ohne zu verstehen, was Sie tun und warum.


Und noch ein wichtiger Punkt: Das Umschreiben von Code ist normal, haben Sie keine Angst davor . Darüber hinaus ist dies während der Ausbildungszeit von entscheidender Bedeutung. Sie werden sehen, wie Sie durch die Verwendung bewährter Methoden Ihren Code verbessern und wartbarer machen können.


Der Prozess zur Verbesserung Ihrer allgemeinen Programmierkenntnisse ist kein schneller Prozess. Es kann Monate – oder sogar Jahre – dauern. Seien Sie also darauf vorbereitet, denn ohne geht es einfach nicht.


Wenn Sie die Möglichkeit haben , ein Praktikum in einem guten Studio zu absolvieren, wird dies Ihr Wachstum erheblich beschleunigen . Sie haben die Möglichkeit, verschiedene Aspekte der Spieleentwicklung kennenzulernen und von Mentoren Antworten auf Ihre Fragen zu erhalten. Aber seien wir ehrlich, das ist nicht die gebräuchlichste Methode.

Eine weitere Herausforderung ist die Suche nach einem ersten Job in der Gaming-Branche. Das berühmte Paradoxon: Um einen Job zu bekommen, braucht man Erfahrung, und um Erfahrungen zu sammeln, braucht man einen Job. In diesem Fall lohnt es sich, über ein Selbststudium nachzudenken . Lassen wir uns gleich von der Idee kostenpflichtiger Kurse verabschieden: Sie sind aus vielen Gründen nicht für jeden geeignet. Glücklicherweise gibt es im Internet Dutzende und Hunderte von Anleitungen zu allen Aspekten der Spieleprogrammierung.



Auswahl einer Spiel-Engine

Sobald Sie diese grundlegenden Fragen für sich selbst beantwortet und verstanden haben, was und wie Sie lernen werden, ist es an der Zeit, zu entscheiden, mit welcher Spiel-Engine Sie arbeiten werden. Dies bestimmt auch, welche Programmiersprache Sie lernen müssen.


Dieses Thema ist zu umfassend, um in einem Artikel behandelt zu werden. Außerdem interessieren wir uns als Entwickler weniger für Engines als vielmehr für Programmiersprachen. Wenn Sie tiefer in das Thema eintauchen möchten, empfehle ich Ihnen, dies zu lesen nützlicher Artikel über die beliebtesten Spiele-Engines auf Steam von Game Developer.


Zu Beginn Ihrer Reise müssen Sie sich nicht sofort für eine große und seriöse Engine wie Unreal Engine oder Unity entscheiden. Wenn Sie keinen theoretischen oder praktischen Hintergrund haben, reicht eine Engine für Webspiele aus: etwas wie PlayCanvas oder seine Analoga.


Auch die Defold-Engine kann für den Anfang eine gute Option sein . Es ist einfacher als Unity und mehr auf 2D-Spiele ausgerichtet. Es verwendet eine sehr einfache Sprache, Lua, die leicht zu erlernen ist.


Es gibt Dutzende verschiedener Spiel-Engines, daher kann die Auswahl einer davon entmutigend sein



Priorisierung von Programmiersprachen

Um etwas Zeit zu sparen, beschreibe ich einfach einige Aspekte der Sprachen und ordne sie in der Reihenfolge ihrer Priorität, wie ich sie lernen würde; Diese Reihenfolge spricht nicht für die Qualität der Sprache oder ihre Probleme. Stattdessen ist es meine Einschätzung des Gleichgewichts zwischen Komplexität, Relevanz und den Fähigkeiten der Sprachen.


Lua zum Beispiel ist eine sehr interessante Sprache, leicht zu erlernen, man kann damit mithilfe der Defold-Engine ein Spiel schreiben. Sie können es jedoch nicht als Hauptsprache für Ihre Entwicklungserfahrung auswählen. Es handelt sich um eine Hilfssprache, die zusammen mit gängigeren Sprachen wie C++ oder C# verwendet wird.

Natürlich ist dies keine vollständige Liste aller Programmiersprachen. Es gibt mehr als ein Dutzend davon. Aber genau darauf möchte ich Sie hinweisen. Hier ist also, was ich lernen würde und in welcher Reihenfolge:


  • Englisch : Ja, wundern Sie sich nicht. Es ist wahrscheinlich die wichtigste Sprache für einen Entwickler. Wenn Sie kein Muttersprachler sind, wird es sich lohnen, es zu lernen – und zwar sehr. Die meisten Informationen zur Programmierung sind auf Englisch verfügbar: Anleitungen, Kurse, Dokumentation, Foren; Im Allgemeinen alles, was Sie zum Lernen benötigen. Theoretisch könnten Sie nach lokalen Communitys von Programmierern in Ihrer Muttersprache suchen und dort um Hilfe bitten. Wenn Sie dies jedoch auf einer englischsprachigen Ressource tun, wird das Problem hundertmal schneller gelöst.


  • C#: Wenn Sie vorhaben, ernsthaft und über einen längeren Zeitraum in der Entwicklung zu arbeiten, ist es besser, mit beliebten Allzwecksprachen zu beginnen. C# ist eines davon. Es ist auch eine Sprache, die für Ihren Backup-Plan geeignet ist: Selbst wenn Ihnen die Spieleentwicklung plötzlich langweilig wird, können Sie eine Vielzahl von Software in C# schreiben, z. B. Fintech, Geschäftsanwendungen usw.


    C# ermöglicht es Ihnen, sich mit Standardprogrammierungskonzepten vertraut zu machen und verschiedene Entwicklungsansätze umzusetzen. Sie erfahren alles über diese scheinbar gruseligen Abkürzungen wie OOP, CQRS, DDD, ECS. Natürlich können die meisten dieser Ansätze in jeder Programmiersprache implementiert werden. Aber es gibt Nuancen. Beispielsweise gibt es nicht in allen Sprachen das Konzept „Klasse“ und dementsprechend werden die Konzepte unterschiedlich umgesetzt. Dies kann einen unerfahrenen Entwickler umhauen und eine Reihe unnötiger Probleme verursachen, darunter auch Motivationsprobleme. Meiner Meinung nach ist C# im Vergleich zu beispielsweise JavaScript die beste (aber nicht einfachste) Wahl für den Einstieg in eine Karriere in der Entwicklung .


  • Java : Wie C# ist Java eine Allzwecksprache. Aber in der Spieleentwicklung ist es hauptsächlich im Hinblick auf Server relevant. Es gibt natürlich Java-Spiele-Engines (z. B. LibGDX), aber sie sind für die Spieleentwicklung nicht so beliebt wie Unity.


    Auch hier sind diese allgemeinen Sprachen gut für den Fall, dass Sie Java bereits kennen, aber beispielsweise im Fintech-Bereich arbeiten – und sich dann plötzlich dazu entschließen, ein Spiel zu entwickeln. Sie möchten doch doch nicht nur zum Experimentieren eine neue Sprache von Grund auf lernen, oder?


  • JavaScript : Wie Jeff Atwood, einer der Gründer von Stack Overflow, sagte: „Alles, was in JavaScript geschrieben werden kann, wird in JavaScript geschrieben.“


    Es ist traurig, aber wahr, dass immer mehr Spieleprojekte in dieser Sprache geschrieben werden. Tatsache ist, dass JavaScript besonders für Anfänger sehr einfach ist. Und wenn Sie an einer Art Web-Engine arbeiten, wird Ihnen höchstwahrscheinlich sogar gesagt, wo Sie Ihre Codezeilen eingeben müssen.


    Trotz seiner Einfachheit glaube ich nicht, dass JavaScript ein guter Ausgangspunkt für die Reise in die Spieleentwicklung ist. Es unterscheidet sich zu sehr von anderen Allzwecksprachen, und das kann Entwicklern einen Streich spielen. Es gibt die Idee, dass ein Entwickler in Bezug auf die Konzepte seiner ersten Programmiersprache denkt . Daran ist etwas Wahres dran, daher ist es besser, gleich zu Beginn allgemeinere Techniken und Ansätze zu erlernen. Wenn Sie sich aber dafür entscheiden, mit Web-Spielen zu beginnen, werden Sie wahrscheinlich nicht ohne JavaScript auskommen. Es regiert in der Web-Welt. In diesem Fall würde ich Ihnen raten, auf TypeScript zu achten. Diese Sprache ist C# sehr ähnlich und wird den Umstieg auf eine andere Sprache in Zukunft erleichtern.


  • Lua/Python: Warum habe ich sie zusammengestellt? Hierbei handelt es sich um Skriptsprachen, die üblicherweise zum Skripten einzelner Teile der Spiellogik verwendet werden. (Ja, es gibt Engines wie Defold, bei denen dies die Hauptentwicklungssprachen sind. Aber das sind Ausnahmen von der Regel.) Beispielsweise ist Python ein sehr beliebtes Tool für Inline-Skripting und wird im Blender 3D-Editor verwendet.


    Es ist nützlich, Lua und Python zu kennen und verwenden zu können, aber wie ich bereits erwähnt habe, handelt es sich um Hilfssprachen, die ich mir für später aufheben würde. Sofern Sie sich natürlich nicht für die Defold-Engine für Ihr erstes Projekt entschieden haben, ist Lua unverzichtbar.


  • C++ : Einige von Ihnen werden überrascht sein, dass C++ ganz unten auf der Liste steht. Und das liegt nicht daran, dass die Sprache schlecht ist, sondern weil ihr Weg der schwierigste ist. Dies ist die mächtigste der vorgestellten Sprachen, aber auch die komplizierteste mit ihren eigenen Funktionen.


    C++ wird zur Erstellung von AAA-Spielen verwendet und ermöglicht es, die Hardware optimal zu nutzen. Aber ich würde dies keinem unerfahrenen Entwickler empfehlen – die Chancen stehen gut, dass Sie von der Branche enttäuscht werden. Aber wenn Sie wirklich wissen, dass C++ das ist, was Sie wirklich brauchen – und Sie keine Angst vor den damit verbundenen Schwierigkeiten haben und einen klaren Aktionsplan haben – dann machen Sie weiter!​​




Dies sind nur einige der Programmiersprachen


Die Wahl einer Programmiersprache ist wichtig, aber vergessen Sie nicht, dass Sie in erster Linie Ihr technisches Englisch verbessern sollten – es wird Ihnen helfen, sich in Leitfäden, Kursen und anderen Quellen mit wertvollen Informationen zurechtzufinden


Einzelspieler oder Mehrspieler?

Meiner Meinung nach ist dies die nächste Entscheidung, die ein Spieleentwickler treffen muss. (Nicht so etwas wie die Wahl zwischen der Entwicklung mobiler Spiele, AAA- oder Web-Spiele.) Der Grund ist einfach: Ganz am Anfang Ihrer Reise werden Sie mit ziemlicher Sicherheit nicht die Wahl haben, große Spiele zu entwickeln. Denken Sie darüber nach: Wie könnten Sie ohne Erfahrung an einer Art Escape from Tarkov oder Call of Duty arbeiten? Ihr erstes Spiel sollte nicht groß und komplex sein, sonst werden Sie es nicht zu Ende bringen. Du wirst einfach ausbrennen und die Spieleentwicklung verlassen.


Es ist gut, genau zu verstehen, was Sie tun möchten. Für einen erfahrenen Entwickler ist das nicht so wichtig, aber am Anfang wird die Antwort auf diese Frage die möglichen Studienmöglichkeiten eingrenzen.


Im Hinblick auf Einzelspieler vs. Mehrspieler: Aus Sicht der Client-Entwicklung (d. h. des Teils des Spiels, mit dem der Spieler direkt interagiert) ist der Unterschied für einen Entwickler möglicherweise nicht so groß. Aber Multiplayer erfordert ein Backend und alle damit verbundenen Probleme, und das ist auch ein separates und umfangreiches Thema.


Ein Einzelspielerspiel ist in dieser Hinsicht einfacher, da Sie sich nicht darum kümmern müssen, den Zustand der Welt für andere Spieler zu synchronisieren, die Spiellogik zu trennen oder ähnliche Probleme zu haben.


Was die Spielmechanik betrifft, kann ein Einzelspieler-Spiel auch viel einfacher sein als ein Mehrspieler-Spiel – und je einfacher das Projekt, desto einfacher ist es für Sie, es fertigzustellen. Und das zu beenden, was Sie begonnen haben, ist eine entscheidende Fähigkeit in jedem Unternehmen!


Zusammenfassend würde ich empfehlen, mit Einzelspieler-Spielen zu beginnen – es wird einfach einfacher sein . Aber wenn Sie wirklich ein einfaches Multiplayer-Spiel machen möchten, das Sie mit Freunden spielen können, warum dann nicht? Sie müssen sich nur darüber im Klaren sein, dass es mehr Zeit in Anspruch nehmen wird, bis Sie Ihre erste funktionsfähige Version erhalten. Allerdings ist der innere Antrieb einer Person eine sehr komplexe Sache – vielleicht motiviert Sie das Erstellen von Online-Spielen viel mehr als Einzelspieler-Spiele und erhöht so die Chance, Ihr erstes Projekt abzuschließen.


Dein erstes Projekt

Nun kommen wir zur Hauptfrage: Wo genau fängt man an, wenn man Spiele entwickeln möchte?


Schritt 1: Wählen Sie Ihre Werkzeuge aus

Nehmen wir an, wir wissen bereits ungefähr, welche Art von Spiel wir überhaupt machen wollen. Wir wissen, welche Programmiersprachen hauptsächlich verwendet werden und in welchen Engines sie zum Einsatz kommen. In diesem Stadium müssen diese Sprache und Engine ausgewählt werden. (Ich würde empfehlen, mit C# zu beginnen. Sie benötigen C++, um AAA-Hits zu erstellen, aber das heben wir uns für später auf, wenn wir Erfahrung sammeln.) Unsere Sprach-Engine-Kombination könnte also C# + Unity sein . Diese sind gefragt und eine ausgezeichnete Wahl.



Häufige Missverständnisse


Schritt 2: Lernen Sie die Sprache

Dies ist ein wichtiger Punkt: Beginnen Sie nicht mit einer Engine, sondern wählen Sie zuerst die Sprache aus . Ohne eine Sprache können Sie die Engine überhaupt nicht effektiv erlernen. Sie werden in den Beispielen und der Dokumentation einfach nichts verstehen und nur verwirrt sein. Im Idealfall würden Sie nicht mit dem Erlernen einer Spiel-Engine beginnen, bevor Sie die Sprache beherrschen und selbstbewusst einfache Programme schreiben können.


Um Ihre Programmierkenntnisse zu verbessern, schauen Sie sich Projekte wie an CodingGame Hier können Sie das Schreiben verschiedener Algorithmen in Form kleiner Spiele üben. Diese sind nicht so umständlich wie LeetCode und die Aufgaben dort sind für Anfänger interessanter. Darüber hinaus gibt es eine eigene Community, und wie ich bereits sagte, ist die Community für jeden kompetenten Entwickler sehr wichtig.


Schritt 3: der Motor

Nachdem Sie sich ein wenig mit der Sprache vertraut gemacht haben, können Sie endlich mit dem Erlernen der Engine beginnen. Im Jahr 2023 gibt es zu diesem Thema jede Menge Informationen: Das Internet ist voller Ressourcen; Dutzende YouTube-Kanäle für alles, was Sie auswählen möchten. Außerdem erfreut sich Unity, wie gesagt, großer Beliebtheit, sodass es keinen Mangel an Material gibt.


Sie können für jedes Problem eine Videolösung von den Erstellern der Engine finden (verfügbar direkt auf Unity Hub, den Sie zu Beginn installieren). in ausführlicher Dokumentation , oder im Netz. Sie können auch einer angesehenen Discord-Community beitreten, in der Menschen ihre Erfolgsgeschichten teilen und sich gegenseitig helfen. Es gibt Dutzende; Wenn Sie etwas Bewährtes benötigen, versuchen Sie es zum Beispiel mit Brackeys .


Die nächsten Schritte der Reise

Das waren die drei grundlegenden Schritte für den Anfang, und von da an kann Ihr Weg weitergehen. Lassen Sie mich einen ungefähren Überblick geben.


Sobald Sie ein wenig mit der von Ihnen gewählten Sprache und Engine vertraut sind, versuchen Sie, ein einfaches Spiel zu erstellen . Jedes Spiel, sogar Tic-Tac-Toe. Machen Sie alles so, wie Sie möchten – keine Grenzen. Sie müssen den Code selbst schreiben. (Vermeiden Sie das Kopieren und Einfügen aus Stack Overflow , da dies dennoch eine sehr nützliche Ressource ist.) Das Hauptkriterium ist, dass das Spiel funktionieren muss.


Überlegen Sie sich als Nächstes einige neue Funktionen für das Spiel und versuchen Sie, diese hinzuzufügen . Wenn Sie beispielsweise einen Plattformer erstellen, versuchen Sie, eine Funktion zu erstellen, die die Schwerkraft des Levels ändert, wenn Sie eine Taste drücken. oder die Fähigkeit, sich von einem Teil des Levels zu einem anderen zu teleportieren.


Versuchen Sie zu notieren, wie einfach/schwierig es war, Ihrem Arbeitsentwurf etwas Neues hinzuzufügen. der Betrag, den Sie benötigten, um die Struktur des Codes zu ändern, und so weiter. Studieren Sie anschließend Best Practices, sehen Sie sich an, wie andere Entwickler die Organisation des Projekts und des Codes (OOP, SOLID, KISS) vorschlagen, und schreiben Sie das Spiel unter Berücksichtigung Ihres neuen Wissens neu.


Überlegen Sie sich dann erneut eine neue Funktion und erstellen Sie sie mit diesem neuen Wissen . Berücksichtigen Sie, wie der verbesserte Code es für Sie einfacher oder schwieriger macht, eine neue Funktion hinzuzufügen, und wie viele Fehler Sie finden können.


Erhöhen Sie nach und nach durch mehrere Iterationen die Komplexität des Projekts und schreiben Sie es mit den gewonnenen Erkenntnissen neu.



Nun, es passiert...



Vorausgesetzt, Sie machen keine Abstriche, werden Sie sehen, wie sich die von Ihnen getroffenen Entscheidungen auf die Implementierung neuer Funktionen auswirken oder diese unterstützen. Eines der Hauptkriterien für die Codequalität ist die einfache Durchführung von Änderungen am Projekt. Leider gibt es hierzu keine klaren Gesetze; es kommt alles mit Erfahrung.


Wenn Sie keine Lust haben, einfache Spiele zu erstellen, können Sie stattdessen damit beginnen, einzelne Mechaniken zu programmieren . Sie könnten beispielsweise damit beginnen, ein rudimentäres „Auto“ zu bauen, das aus ein paar Würfeln besteht, die auf einer Oberfläche gefahren werden, und dann nach und nach weitere Mechaniken in die Mischung einbauen.


Danach können Sie ein komplexeres Spiel entwickeln – und erneut mehrere Iterationen durchführen, um das Projekt zu verbessern. Wenn Sie ein interessantes Ergebnis erhalten, können Sie eventuell versuchen, dieses Spiel im Handel zu veröffentlichen.


Veröffentlichen Sie Ihr erstes Spiel

Sie können versuchen, es über zu veröffentlichen Itch.io , wenn Sie sich noch nicht auf große Plattformen einlassen möchten. Dort können Sie Erfahrungen in anderen relevanten Bereichen der Spieleentwicklung sammeln und, was am wichtigsten ist, Feedback von anderen Menschen einholen. Es ist möglicherweise nicht immer konstruktiv, insbesondere bei einfachen Anfängerprojekten. Aber ein wenig Feedback wird Ihnen helfen, zu wachsen und ein besserer Programmierer zu werden.


Ich kann Ihnen einen kleinen Life-Hack zum Thema Spieleveröffentlichungen anbieten: Web-/Browserspiele . Obwohl dieses Format anscheinend an Popularität verloren hat, da Benutzer mittlerweile hauptsächlich auf Mobilgeräten, PCs oder Konsolen spielen, haben Webspiele immer noch eine ausreichende Zielgruppe, sodass Sie versuchen können, Ihr Debütprojekt als solches zu starten. Dies ist auch viel einfacher, als es als natives Spiel auf Mobilgeräten zu veröffentlichen.


Der Wettbewerb um mobile Spiele ist hart und Ihr Spiel wird höchstwahrscheinlich unbemerkt bleiben, vorausgesetzt, es wird nicht beworben – und ohne einen Herausgeber ist es sehr schwierig, ein Projekt zu bewerben. Für Webspiele gibt es spezielle Portale (zum Beispiel: Armor Games, Newgrounds, WebGames ), auf denen diese Projekte gehostet werden: Die Veröffentlichung dort ist sehr einfach und man kann mit Werbung sogar etwas verdienen. Machen Sie sich keine großen Hoffnungen, aber wenn es passiert, ist es trotzdem ein angenehmer Bonus.


Eine kleine Warnung zum „No-Code“-Ansatz

Nun eine kleine Warnung. Heutzutage ist der „No-Code“-Ansatz sehr beliebt. Dies ist der Fall, wenn ein Projekt erstellt wird, ohne Code zu schreiben. (Man nennt es auch „Mausklick-Programmierung“). Mein Rat? Von diesem Ansatz sollte man besser die Finger lassen.


Diese No-Code-Ansätze eignen sich ideal zum Ausprobieren von Spielmechaniken oder zum Erstellen eines einfachen Prototyps. Aber wir haben ein anderes übergeordnetes Ziel – und die Zusammenstellung eines einfachen Spiels ohne Code wird Sie Ihrer Karriere als Entwickler nicht näher bringen.


Denken Sie daran: Das Lesen von Artikeln und das Ansehen von YouTube-Anleitungen können das Üben nicht ersetzen. Nur wenn Sie mehrere (und wirklich mehrere, nicht nur ein) Projekte erstellen, werden Sie etwas Sinnvolles lernen. Um Ihren Weg als Programmierer in der Spieleentwicklung zu planen, müssen Sie Schritt für Schritt vorgehen, vom Einfachen zum Komplexen.


Ich habe versucht, einige Ratschläge für den Einstieg in die Spieleentwicklung und den Einstieg in die Programmierung von Spielen zu geben. Die Wahl der richtigen Sprache und Engine, Beharrlichkeit und Beharrlichkeit, das Sammeln von Feedback und Selbstbeobachtung – all das ist sehr wichtig. Aber es gibt noch eine weitere Komponente dieses Prozesses, die nicht vernachlässigt werden darf: Spaß.


Wenn Sie keine Leidenschaft für Spiele haben und sie nicht spielen, wird aus diesem Unterfangen höchstwahrscheinlich nichts werden. Eine traurige Wahrheit, die grundsätzlich für jede kreative Arbeit gilt. Ohne Spaß wird es nur noch eine Routine zum Geldverdienen. Natürlich kann es sein, dass Sie Jahre später sowieso das Interesse verlieren, aber hoffentlich sind Sie bis dahin bereits erfolgreich und können sich zwischen verwandten Arbeiten entscheiden, oder Sie haben genug verdient, um zu diesem Zeitpunkt etwas Neues und Interessantes für Sie zu tun.

Besonders zu Beginn Ihrer Reise führt jede Arbeit und kein Spaß definitiv zu Burnout und Enttäuschung.


Deshalb mein letzter Rat: Suchen Sie nach dem, was Sie leidenschaftlich macht , dem Ding, das Sie antreibt, tage- und nächtelang an einem Projekt zu arbeiten (das sollten Sie natürlich nicht wörtlich nehmen!). Sobald Sie Ihre treibende Motivation gefunden haben, das, was Eine sonst übliche Routine wird zu einer interessanten, spannenden Herausforderung – und das wird Ihre berufliche Entwicklung mit Sicherheit beschleunigen!