Welche Programmiersprache lohnt sich am meisten für Spiele?

5 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Für den Anfang würde ich dir Processing empfehlen, denn:

  • die Sprache ist einfach und ermöglicht einen schnellen, späteren Umstieg auf Java - zudem lernst du mit Processing erst einmal die Grundlagen, die du so und so benötigst
  • sie bietet schnelle grafische Erfolge, denn bereits von Beginn an steht eine Zeichenfläche zur Verfügung, auf der man zeichnen kann
  • sie bietet Basisfunktionalitäten, die man zur Spieleprogrammierung benötigt (Input-Handling, simple Audio-Engine, Grafik-Engine)
  • die Dokumentation ist ausführlich und bietet viele Beispiele

https://processing.org/

Eine Alternative könnte Python darstellen, unterstützende Bibliotheken wären Kivy oder Pygame. Außerdem fiele mir noch Lua ein (verfügbare Engines als Rahmen: https://stackoverflow.com/questions/5053134/what-is-a-good-game-engine-that-uses-lua)

So viel zu den Sprachen, die sich m.E. für Anfänger empfehlen lassen.

Welche Programmiersprache lohnt sich am meisten für Spiele?

Die Sprache, zu der es letztendlich die besten Fundamente gibt, welche Funktionalitäten umsetzen, die für ein Game unabkömmlich sind (Grafik-Rendering, Audio und Input Handling, etc.). Es kann ein Framework oder eine Game Engine sein, welche dieses Fundament stellt.

Ein Beispiel ist die Game Engine Unity3D. Die Spiellogik kann mit C# oder UnityScript formuliert werden (was dann gelernt werden müsste).

Allerdings:

Solltest du dich erst einmal darauf konzentrieren, die Grundlagen der Programmierung zu lernen, bevor du auch nur einen Finger auf die Tastatur setzt, um ein Spielprojekt zu beginnen. Wie gesagt, begegnet dir Processing da bereits mit viel Spiel, Spaß und Freude, aber schon von Anfang an mit einer Engine entwickeln (Unity / Unreal / ...) zu wollen, sehe ich kritisch. Sicher kommst du so auch an deine Ziele, aber die technische Umsetzung ist dann womöglich mangelhaft. Genügend solcher Fälle habe ich bereits gesehen.

Ich würde mit Java beginnen. Damit wirst du zwar keine großen Spiele erstellen können, jedoch lernst du erst einmal etwas ganz Entscheidendes: Sauber programmieren. Siehe hierzu auch meine Argumentation für die Wahl der Programmiersprache:

https://www.gutefrage.net/frage/welche-programmiersprache-in-2017-lernen?foundIn=list-answers-by-user#answer-261554917

Dort findest du auch Buchhinweise.

Das hängt davon ab, wo du mit deinen Spielen hinwillst.

Da du keine Vorkenntnisse hast, bieten sich Java und C# an. Zu C# ist die Unity3D Engine sehr zu empfehlen, die besonders für Anfänger sehr gut geeignet ist. Dazu gibt es auch massenhaft Tutorials. Diese Wahl eignet sich besonders für Hobbyprogrammierer.

Wenn du mal in professionellere Richtung gehen möchtest, kommst du um C++ nicht drumherum. Da gibt es einige Engines, wie CryEngine oder Unreal Engine. Da du aber keine Vorkenntnisse hast, würde ich dir empfehlen, mal die UnityEngine mit C# zu probieren.

Falls du wenig programmieren möchtest, wären RPG Maker und Game Maker von YoYo Games noch eine Idee.

Javascript ist sehr einfach zu lernen und mit dem game development tool Construct 2 wird das ganze nochmal vereinfacht... du programmierst nicht wirklich aber du siehst die einzellnen befehle welche mehr oder weniger die selben wie bei js sind was dir in diese sprache einen einstieg erleichtert... für kleine spiele ist construct 2 sehr effizient und es dürfte in einer h locker zu schaffen sein ein spiel wie space invader zu bauen... sonst wirst du ohne vorkenntnise je nach sprache (und natürlich dann ohne tool) wenn du wirklich ein super mario zusammenstellen willst mind. Ein halbes jahr benötigen was für leute in deinem alter meist wesentlich zu lange ist... aber falls du dir das antun willst kann ich dir unreal engine oder unity empfehlen(C oder C++)...
LG

kommt draufan was für spiele.
u.B. konsolenspiele wie tictactoe, sudoku, ... oder 2d spiele wie tetris, super mario, oder 3d spiele wie csgo (bur halt in vereinfachter form.)


Shadow333221 
Fragesteller
 24.10.2017, 18:39

eher so 2d

0