Richtige Programmiersprache für die Spieleindustrie?

...komplette Frage anzeigen

10 Antworten

Ich arbeite seit 5 Jahren in der Spielebranche. Ich erspare dir mal den 20 minütigen Vortrag darüber wieviel Mist du wirst machen müssen bevor du in dieser Branche Fuß gefasst hast und auch ein Gehalt bekommst wo du nicht verhungern musst. Nur soviel: bereite dich darauf vor dir ersten 2-3 Jahre nur ausgebeutet zu werden. 

Obwohl ich schon 5 Jahre dabei bin, habe ich noch an keinem einzigen erfolgreichen Spiel gearbeitet. Und das ist absolut normal in der Branche.

Nun zur Sprache: lern C++. Aus folgenden simplen Gründen:

- C++ ist quasi die Mutter aller Programmiersprachen. Ähnlich wie Latein bei romanischen Sprachen erleichtert die Kenntniss von C++ das erlernen anderer Sprachen massiv.

- Bei den meisten Sprachen wird das Speichermanagement und die Logik heute weggekapselt. Die Folge sind Horden von Programmierern die keinen blassen Schimmer davon haben wie man effizient und Speicherschonend programmiert. Eine Katastrophe in der Spieleentwicklung! Also: lern es gleich richtig!

- Je nachdem was du später machen willst, werden die unterschiedlichsten Sprachen zum Einsatz kommen (üblich in der Deutschen Branche sind im Moment C++, Java, C#, PHP, Objective-C und Swift). Alle diese Sprachen haben C als grobes Vorbild. Die Syntax ist häufig sehr ähnlich.

- Früher oder später hast du die Schnauze gestrichen voll von der Spielebranche. Dann wendest du dich professioneller Programmierung zu. Hier hast du dann mit C++ Wissen die besten Chancen ordentlich zu verdienen und schnell einen Job zu finden.

Für den Anfang empfehle ich erst mal die Sprache so zu lernen, ohne spezifischen Bezug zur Spieleentwicklung. Wenn du soweit bist (und wir reden da von 2-3 Jahren Erfahrung) schnapp dir ne Engine (z.B. Unreal) und mach Spiele! Du wirst für deine Bewerbung später Referenzen brauchen. Also Bau soviele spiele wie du kannst.

Leider wird in der Branche immer mehr Unity3D eingesetzt. Meiner persönlichen Meinung nach eines der schrecklichsten Stücke Software die es so gibt. Komplett unprofessionell. Aber leider auch ein guter Einstieg. Dort ist C# die Sprache der Wahl.

Ich hoffe ich konnte dir helfen. Zum Schluss noch eine Sache: Du musst in dieser Branche absoluter Idealist sein. Sonst hast du keine Chance. Und vergiss alle träume von Ruhm und Reichtum. In dieser Branche findest du so etwas nicht.

 

Antwort bewerten Vielen Dank für Deine Bewertung

Darf man mal fragen, warum du in die Spieleindustrie möchtest und nicht allgemein in die Softwareentwicklung? Würdest du später auch Steuerungsanlagen, Webseiten oder Anwendersoftware programmieren, oder ausschließlich Videospiele? Denn deine Frage klingt so'n bisschen wie "Ich will später mal Konditor werden, aber dann ausschließlich Käsekuchen backen".

Denn nur weil du gerne und viel zockst, bedeutet das nicht, dass du auch als Informatiker geeignet bist. Ich hab haufenweise Leute mit der Einstellung gesehen und die sind damit allesamt auf die Schnauze geflogen - sprich: die mussten ihre Ausbildung / ihr Studium abbrechen. Denn Informatik ist geistig ziemlich anstrengend, mathelastig und man sollte kein Problem damit haben, auch am Computer arbeiten zu können.  

Welche Programmiersprache für die Spieleentwicklung am besten geeignet ist, kann dir für den Anfang erstmal egal sein. Denn ein guter Informatiker ist auch in der Lage, sich schnell in eine neue Sprache einzuarbeiten. Die schwierigste Programmiersprache ist die Erste, die man lernt. Wichtiger wäre es, dass du eine Anfängersprache findest, mit der du erstmal überhaupt die Grundprinzipien der Programmierung erlernst und mal schaust, ob dir das liegt. Ich würde da Python, Java oder C# für den Anfang nehmen. C++ hat so einige spracheigene Fallstricke, das würde ich mir als Anfänger nicht antun. 

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Kilifrett
11.07.2017, 13:48

Dann wahr die Frage vielleicht blöde gestellt. Ich habe bereits Erfahrungen in Visual Basic als Einsteigerprache (und ich weiß, das bringt mich nicht  weit und es ist auch schon einige Jahre her) und geringfügige Erfahrungen in Java. Ich möchte in die Informatik Branche in die Programmierung gehen und würde gerne in der Spieleentwicklung landen, das ist kein Muss aber das wäre mir halt lieber. In der Schule ist Mathe mein bestes Fach und mit PCs habe ich auch mehr Erfahrung als die meisten in meiner Klassenstufe.

0

Hi!

Der beste Weg, dich auf eine Karriere in der Spieleindustrie vorzubereiten (worauf die Frage ja abzielt), ist selber Spiele zu entwickeln. Das kannst du jetzt schon, auch wenn du zum jetzigen Zeitpunkt gar nicht programmieren kannst (oder nur Visual Basic).

Es gibt dafür Tools, die dir die meiste Arbeit abnehmen. In denen musst du dann nur noch das Spiel an sich gestalten und implementieren. Construct 2 und Game Maker sind hier die prominentesten Beispiele, es gibt aber noch weitere. Außerdem gibt es sogenannte Engines, also beispielsweise Unity und Unreal, die dir zwar auch viel abnehmen, aber dabei deutlich mehr von dir verlangen. Hier kannst du auch ziemlich gut programmieren lernen, weil du ohne zu programmieren nicht auskommen wirst.

Es gibt auch Bibliotheken, bei denen du nur grundsätzliche Funktionalitäten bekommst und du den Großteil selber entwickelst. Bei SDL, SFML, libGDX und ähnlichen Bibliotheken hast du zwar nach kurzer Zeit bereits was spielbares, aber für ein fertiges Spiel musst du viel mehr Arbeit reinstecken, als bei den Engines. 

Für alles davon gibt es ziemlich gute Tutorials und teilweise auch Bücher. 

Was genau du davon nimmst und wie du es lernst, hängt teilweise von deinem Ziel ab (Eher Programmieren lernen; eher Spieleentwicklung im Gesamtpaket lernen) und davon, wie du am besten lernst.

Meine Empfehlung: Schnapp dir ein möglichst einfaches Tool und fang damit an, Spiele zu entwickeln. Mit dem Game Maker oder Construct 2 geht das super schnell. Damit kannst du erstmal in Erfahrung bringen, ob dir das Entwickeln von Spielen überhaupt gefällt und liegt.

Wenn das der Fall ist, erhöhst du den Grad der Komplexität einfach wie es der beliebt. Probier die Engines, die Frameworks, lerne (mehrere) Programmiersprachen usw.

Die Frage, wie du daraus eine Karriere machst, kannst du dann flexibel beantworten. Du wirst verschiedene Disziplinen kennenlernen, die alle gebraucht werden. Vom Engine Programmierer über Tool Programmierer bis hin zu Gameplay Programmierer. Vielleicht gefällt dir das Programmieren auch gar nicht so sehr und du willst am Ende Designer werden - oder gar keine Spiele mehr entwickeln.

Antwort bewerten Vielen Dank für Deine Bewertung

Für Spiele wird meistens C++ benutzt, aber dazu musst du Geduld haben. Wenn du ungeduldig bist, dann nimm zuerst eine von diese: Python, Ruby, Lua, Java, C#.

Antwort bewerten Vielen Dank für Deine Bewertung

C++!

Java ist zwar interessant für einige Mobilgeräte, aber in der Regel können die Apps auch in C++ geschrieben werden, außerdem gibt es Javaprogrammierer wie Sand am Meer, als C++ Emtwickler hast du bessere Chance auf ein gutes Gehalt und das dein Job nicht nach Indien geoutsourced wird. Achja und ich finde java furchtbar, das gehört eingestampft genauso wie Flash.


Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Kilifrett
11.07.2017, 13:37

Okay, danke für die Antwort. Hast du irgendwelche Tipps wie ich anfangen kann in die Programmiersprache mich einzulernen?Ich habe vor einigen Jahren bereits leichte Erfahrungen mit Java und davor mit Visual Basic gemacht.



0

C++

Eindeutig die meistgebrauchte und weitverbreitetste Programmiersprache in dieser Branche.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Kilifrett
11.07.2017, 13:38

Danke für die Hilfe. Hast du noch irgendwelche Tipps wie man anfangen kann die Sprache zu lernen. Ich habe vor einigen jahren bereits leichte Erfahrungen mit Java und davor mit Visual Basic gemacht


0

Ich würde dir empfehlen nicht mit dem Developen von Spielen anzufangen.

Versuch vielleicht zuerst etwas leichteres zu machen. Wie zum Beispiel einen Webbrowser in Visual Basic.

Simpel anfangen und dann hocharbeiten.

Und sonst würde ich für Spiele C++ empfehlen.

Antwort bewerten Vielen Dank für Deine Bewertung

Ich finde Unity 3D sehr interessant, denn du kannst für alle Plattformen programmieren. Dafür brauchst du C#.

Antwort bewerten Vielen Dank für Deine Bewertung

C++, java ist auch ok

Antwort bewerten Vielen Dank für Deine Bewertung

Dafür ist es jetzt schon zu spät. Wenn du da mitmischen möchtest, brauchst du schon einiges mehr an Erfahrung als 3-5 Jahre.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Plokapier
11.07.2017, 14:17

Warum soll es bitte zu spät sein? Er kann jederzeit damit anfangen, Erfahrung zu sammeln

0

Was möchtest Du wissen?