Java, C++ oder C# für Spiele?
Hallo, ich hätte eine von anderen zwar schon öfters gestellte, aber trotzdem relevante Frage. Ich beschäftige mich nun schon eine Weile mit Spieleprogrammierung und habe schon die ersten Grundkenntnisse darin erworben. Und zwar habe ich mit einer leichteren Java Version (nennt sich Greenfoot) angefangen und überlege nun mit welcher Sprache ich weitermachen soll. Zur Zeit ist das Programmieren nur ein Hobby, später möchte ich jedoch vielleicht auch beruflich Spiele Programmieren. Nach meinen Recherchen würden die meisten Leute C++ Java eindeutig vorziehen, jedoch sind diese Diskussionen schon etwas älter und daher könnte sich da schon einiges verändert haben. Daher meine Frage: Sollte ich C++, Java oder doch C# lernen? Ist C++ für solche Zwecke immer noch am Besten, oder hat Java für Desktop-Spiele auch an Potential gewonnen? Oder ist das neue C# vielleicht die bessere Wahl? LG und danke im Voraus!
2 Antworten
(...) jedoch sind diese Diskussionen schon etwas älter (...)
Kann sich wohl kaum um Monate handeln. Diese Frage wurde in etlichen Foren und auch hier schon mehr als nur einmal gestellt.
Da du mit Greenfoot bereits begonnen hast, würde es nicht schaden, mit Java weiterzumachen. Lerne erst die Grundlagen. Beschäftige dich erst danach mit kleineren Spielen um Aufbau, Dynamik und Logik dahinter zu erforschen. Allgemeine Architekturen und Konzepte in der Softwareentwicklung zu erlernen, bringt dich im Übrigen auch nur weiter.
Umso professioneller du dich mit Spieleentwicklung auseinandersetzen möchtest, umso mehr wirst du dich später auch mit Game Engines beschäftigen müssen, denn diese bieten einen Rahmen sämtlicher Grundfunktionalitäten, die man so benötigt.
So gibt es eh eine Unterscheidung, ob man sich mehr auf das Skripting konzentriert (mit Python, Lua, JavaScript, C#, ...) oder auf die Basis der Engine (die man entwickelt oder erweitert). Worauf eine Engine baut, bzw. womit sie programmiert wurde, ist unterschiedlich. Du kannst also sowohl auf C/C++, C#, Erlang, Java, oder irgendeine andere Sprache treffen. Spielefirmen setzen da oft auf unterschiedliche Techniken.
Hey, ^^
was du wählst solltest du entscheiden je nach dem was du genau machen willst.
Willst du zum Beispiel ein 3D Spiel machen könntest du mit einer Einsteigerfreundlichen Engine wie Unity anfangen welche kompatibel zu Programmiersprachen wie C, Java und Python ist.
Oder auch Blender wäre eine denkbare Möglichkeit für erste Erfahrungen wo du dann Python brauchen wirst.
Stell dir erstmal nicht die Frage was du brauchst sondern was du machen willst und entscheide erst an deinem Ziel was du benötigst ^^
Viel Glück
~ Remine
Unity ist weder kompatibel zu Java, C, noch Python. Die Engine wurde mit C++ entwickelt und nutzt als Skriptsprachen UnityScript, C# oder Boo.
Python kann verwendet werden, wenn man einen extra Interpreter in Unity einbaut. Also ist es nicht kompatibel. Wenn Java oder C in Unity3D benutzt werden können, dann setze doch jeweilige Links, damit sich der FS besser darüber informieren kann.
Nein, UnityScript ist auch nicht "an sich wie" JavaScript. Es sind 2 unterschiedliche Sprachen mit vielen Unterschieden.
OK, also ist es wohl am klügsten, dass ich mich weiter mit Java auseinandersetze. Es wäre also vielleicht eine gute Idee, mit BlueJ weiter zu machen. Wenn ich mich dann selbst besser mit Engines befasst habe und alles verstehe, kann ich ja immer noch auf C++ oder so wechseln.
Danke für deine ausführliche Antwort!