Wie fortfahren?

Cromewell

Top Contributor
Hey :)
Ich wollte mal fragen, was ihr dazu sagt:
Ich will anfangen mich intensiver mit Spieleprogrammierung zu beschäftigen und stehe gerade vor der Entscheidung, ob ich es in:
1. Java
2. Unity
machen soll.
Java kann ich und daher liegt es wahrscheinlich nahe, es auch in Java zu machen -, aber andererseits ist C# Java ja sehr ähnlich und ein Umstieg bestimmt nicht so schwer.
Hat jemand Erfahrung in Unity gesammelt und kann es in dieser Situation empfehlen, oder meint ihr, ich sollte erstmal bei Java bleiben?
 

Dukel

Top Contributor
Ich würde nicht Java vs. Unity sehen sondern Programmiersprache vs. Game Engine. Es gibt auch Java Game Engines, bei denen du keine neue Sprache lernen musst.

Der Vorteil einer Game Engine ist, dass du dich um nichts kümmern musst. Keine Physik, keine Grafik / 3D, kein Sound,... Der Nachteil dagegen ist, dass du auf die Möglichkeiten der Engine begrenzt bist und du die vorhandenen Themen nicht lernst.

Geht es dir um ein schnelles, professionelles Ergebis oder möchtest du neue Themen lernen?
 

Cromewell

Top Contributor
Ja, da hast du Recht.
Ich denke, ich würde dazu neigen, erstmal alles von Hand zu machen, um nachher auch verstehen zu können, was die Engine wann und wie macht.
Oder wäre das umgekehrte Vorgehen für einen Einstieg besser ? Sodass ich mit einer Engine anfange, und mir im Nachhinein das tiefere Geschehen angucke?
 

Dukel

Top Contributor
Was ist denn dein Ziel? Willst du Spiele Programmieren oder wissen wie Spiele intern funktionieren?
Auch mit einer Spiele Engine muss man viel selbst machen, man bekommt aber viele Werkzeuge und Unterstützung.

Ich würde mit einer Spiele Engine anfangen (was ich aktuell auch mache, ich arbeite mich aktuell etwas in Unity und Unreal Engine ein).
 

Cromewell

Top Contributor
Beides wäre mir wichtig.
Ich habe auch schon in beide Richtungen etwas gemacht - einmal selber in Java und ein wenig mit LibGdx.
 

RalleYTN

Bekanntes Mitglied
Ich will anfangen mich intensiver mit Spieleprogrammierung zu beschäftigen
Das heisst du möchtest lernen.
In dem Fall solltest du richtig klein Anfangen.
Da du Java ja bereits kannst wäre soetwas wie LWJGL etwas für dich.
Primitiver geht es mit Java nicht mehr.
Gibt einige Tutorials auf YouTube zu dem Thema. Ich empfehle hier einmal den YouTuber ThinMatrix.
Der erklärt ziemlich gut was Normalen, Vektoren, Shader etc sind und wie sie funktionieren.

Mach nicht den großen Fehler dich sofort in ein großes Projekt zu stürzen.
Solltest erstmal mit Sachen wie Pong oder Snake anfangen und dich dann zu Pac Man und Tetris hinarbeiten.
 

JuKu

Top Contributor
Nimm Java.
LWJGL ist aber auch etwas, wo man sehr schnell verrückt werden kann. Außerdem benötigst du dafür OpenGL Kenntnisse.
libGDX basiert auf libGDX und nimmt dir diese Low Level Sachen ab.
Wenn es dir darum geht, wie Spiele Entwicklung funktioniert (und das solltest du wissen, bevor du dir Game Engines unter der Haube anschaust), solltest du mit libGDX starten.

Du solltest aber auf keinen Fall mit einem 3D Spiel anfangen, wenn du noch nicht groß Mal 2D Spiele entwickelt hast.

Was für ein Spiel schwebt dir denn so vor?

PS:
Du bist bei SpaceChaos auch nach wie vor gerne gesehen! :p
:D
 

@SupressWarnings()

Aktives Mitglied
@Cromewell es kommt glaube ich darauf an, was du genau machen möchtest. Wenn du wirklich Spieleentwicklung "lernen" möchtest, so wie es im professionellen Bereich betrieben wird, würde ich mir ein Team suchen, Pentaquin und SpaceChaos sind zwei solche Teams in diesem Forum, bei SpaceChaos bist du ja auch schon dabei.
Außerdem würde ich dir die Tutorials von ExtraCredits auf Youtube empfehlen, die sind sehr gut was das anschauliche Erklären von Spieleentwicklung angeht. Die Videos stammen aus den letzten sechs Jahren und sind sehr umfangreich und umfassen auch andere Themenkomplexe. Da in den meisten Videos nichts wichtiges gezeigt wird, könntest du auch mit deutschen Untertiteln gucken falls dich die englische Vertonung stört. https://www.youtube.com/user/ExtraCreditz
Wenn es um das Innenleben eines Spiels geht, würde ich entweder mich, wie bereits vorgeschlagen, langsam hocharbeiten (von TicTacToe bis zu Pong usw.) oder mir auch ein Team suchen, in dem du als Programmierer die Basics machst. Die Vorteile sind, dass du dich nicht um Grafik, Sound und Design des Spiels kümmern musst, sondern das nur zusammenbauen und einbinden.
Wenn du so einfache Spiele programmierst wie Snake etc. wäre ich interessiert da mit dir zusammenarbeiten, falls das für dich ok ist.

Mit freundlichen Grüßen
SupressWarnings
 

Luggioh

Mitglied
@SupressWarnings(): falls du Interesse an kleineren Spielen hast, dann wäre ich auch dabei! Bin selbst noch recht unerfahren aber versuche mich zurzeit auch an kleineren Spielen und Programmen :)
 

JuKu

Top Contributor
Das Innenleben eines Spieles (falls du Game Engine an sich meinst) solltest du dir erst anschauen, sobald du die Grundlagen der Spieleentwicklung beherrscht. Du musst dich quasi von oben nach unten (in die Tiefe, also ins Detail) vorarbeiten und nicht andersrum, sonst verlierst du schnell den Überblick fürs große ganze.
Fang mit einem Spiel deiner Wahl an, nimm eine fertige Game Engine / Library, wie z.B. libGDX, im besten Fall suchst du dir ein Team, welches dir auch viel erklären kann (SpaceChaos wurde z.B. schon genannt) und startest durch.
Falls du dann irgendwann mal soweit bist, Spiele Programmierung zu beherrschen, kannst du unter die Haube schauen und dich an Game Engines oder das Innenleben machen.
 

Dukel

Top Contributor
Das wichtige bei der Spiele Entwicklung ist ja auch das Spiel selbst. D.h. das Gameplay und Setting muss stimmen. Wenn man sich aber am Anfang um alles kümmern muss kommt das Spiel selbst zu kurz. Vermutlich kommt man eh nach einiger Zeit an die Grenzen einer Engine und muss dann in die Tiefe.
 

Neue Themen


Oben