Ich habe eine sehr allgemeine Frage, die mich stört, aber ich möchte zuerst einige Details hinzufügen. Ich bin ein Java-Kernprogrammierer. Ich habe zum Spaß einige kleine Spiele in Java erstellt. Je mehr ich mich mit professioneller Spieleentwicklung beschäftige, desto verwirrter werde ich. Dies liegt daran, dass ich immer dann, wenn ich über einige Spieleentwicklungsthemen google oder Foren usw. besuche, auf verschiedene Vorschläge stoße.
Einige werden sagen, dass C ++ gut ist, während andere sagen werden, dass JAVA besser sein könnte, während andere sagen werden, dass eine andere Sprache die Ur-Sprache ist, wie Python, Lua, UnrealScript usw. Außerdem wird empfohlen, dass man Kenntnisse darüber haben sollte Spiel-Engines wie Unreal, Torque, Blender, Panda usw. und Kenntnisse in OpenGL, AI und Kollisionserkennung sind erforderlich. Ich habe sogar ein Spiel mit Android SDK erstellt.
Was ich fragen möchte ist:
- Was sind die grundlegenden Fähigkeiten, die ein professioneller Spielprogrammierer haben muss? Ist es eine 1 Programmiersprache + 1 Skriptsprache + 1 Game Engine Wissen + OpenGL? (Puh!!)
- Wenn ich als Gameplay-Programmierer oder KI-Programmierer in die Spielebranche einsteigen möchte, kann ich dann mit meinen aktuellen Fähigkeiten und meinem Portfolio (wie oben angegeben) darauf zugreifen?
- Reicht das Erlernen einer Programmiersprache für die Spieleentwicklung aus?
Jede Richtlinie wird hilfreich sein.
quelle
Je mehr ich mich mit diesem Thema beschäftige und mit professionellen Spieleentwicklern spreche, desto mehr denke ich, dass es wirklich auf ein paar Dinge ankommt. In keiner bestimmten Reihenfolge:
quelle
Viel hängt von Ihren Karrierezielen ab. Wenn alles, was Sie wollen, "ein Job ist, der Spiele macht", bevor Sie die erforderlichen 5,5 Jahre absolvieren und ausbrennen und gehen, dann schauen Sie sich einfach die Stellenangebote für Einsteiger an und suchen nach dem, was sie wollen, lernen es und bewerben sich. Einfach. (Aber wenn Ihre Frage wirklich lautet: "Was ist der minimale Aufwand, den ich investieren muss, um einen Job zu bekommen?", Lautet die Antwort: "Wenn Sie den minimalen Aufwand betreiben, werden Sie den minimalen Job bekommen!" ")
Aber langfristig denke ich nicht, dass es so sehr darum geht, eine bestimmte Anzahl von Sprachen zu kennen oder eine bestimmte zu lernen. Die Sprachen ändern sich - vor zehn Jahren verwendete niemand Objective-C oder XNA oder C # oder AS3, und in zehn Jahren können Sie sicher sein, dass jede Sprache, die Sie heute lernen, bis dahin ohnehin veraltet sein wird.
Eine Sache, um sich zukunftssicher zu machen, ist, nicht nur "eine Sprache zu lernen", sondern zu lernen, wie man neue Sprachen lernt. Sobald Sie 3 Sprachen beherrschen, werden Sie feststellen, dass es nicht so schlimm ist, eine neue zu lernen. Die meisten Kernkomponenten sind ohnehin gleich - jede Sprache verfügt über Variablen, Arrays, Schleifen, Bedingungen usw. Es geht also nur darum, die Syntax zu lernen.
Die andere Hälfte davon besteht darin, die Kernkonzepte der Programmierung und der Informatik zu verstehen. Grundlegendes zur Speicherverwaltung, zu Zeigern, zur Rekursion usw. Wenn Sie die Konzepte verstehen, können Sie sie in nahezu jeder Sprache anwenden.
Wenn Sie sich marktfähiger machen möchten, lernen Sie eine Programmierspezialität kennen, die für Spiele relevant ist, unabhängig davon, was Sie interessiert ... KI, Datenbanken, Netzwerke, Tools, was auch immer.
quelle
Es ist eine weitere sehr wichtige Fähigkeit erforderlich, die ein wenig übersehen zu werden scheint. Sie müssen wissen, wie man sich in ein Team von Leuten einfügt und mit ihnen zusammenarbeitet, von anderen Spielentwicklern über Designer und Projektmanager bis hin zu anderen. Es ist keine technische Fähigkeit, aber es ist immer noch sehr wichtig, da Sie der beste Entwickler im Haus sein könnten und wenn Sie nicht mit Leuten auskommen können, wird es ein Problem sein, große Spiele zu machen!
Da ShrimpCrackers eine Sprache gut kennen, ist es besser, als ungefähr 5 Sprachen zu kennen, und es ist sogar noch besser zu verstehen, was unter der Haube dieser einen Sprache vor sich geht, die Sie beherrschen. Bei Spielen müssen Sie wissen, wie Sie die beste Leistung erzielen aus der Sprache.
Last but not least, wenn Sie ein wenig über Hardware wissen, wird insbesondere die GPU nicht schaden!
quelle
Für die Programmierung von Social Games sind nur die wichtigsten Fähigkeiten erforderlich.
Programm-Aktionsskript (Sie können eine Elipse-Umgebung und einen SVN verwenden), das für das Front-End des Spiels (die Webseite) verwendet wird.
Programm Java (das auch bei Eclipse und Use SVN ausgeführt werden kann), wird für die serverseitigen Aktionen verwendet, die von den Anforderungen der Webseite ausgeführt werden.
quelle