3D-Programmierung (Game-Engines) - Einstieg?

voodoo44

Lieutenant
Registriert
Apr. 2006
Beiträge
824
Hallo User,

ich programmiere nun schon seit ein paar Jahren C# und PHP - und habe mir überlegt, mal was anderes zu machen. Mir ist letztens aufgefallen, dass ich gern mal etwas in Richtung Spieleentwicklung machen würde - dafür suche ich aktuell einen Einstiegspunkt.

Mir ist schon klar, dass es vermutlich hart werden wird, sich direkt mit einer vorgefertigten Engine a la Cry, Unreal oder wie sie alle heißen zu beschäftigen - ich will es trotzdem mal probieren.

Nun zu meiner eigentlichen Frage: der Erste Schritt soll es sein, eine "simple" (grafisch hübsche, die Engine sollte also schon was können) Landschaft zu bauen und diese mit einem (ebenso selbst entworfenen und animierten) Charakter "durchstreifen" zu können. Zuerst eine Wiese, bisschen Licht, Gräser - später Bäume, Gebirge und eventuell ein paar Tiere.

Wie genau würdet ihr mir empfehlen, in dieser Schiene einzusteigen? Welche Engine ist flott, gleichzeitig (relativ) leicht im Umgang zu lernen und mit welcher lassen sich (wirklich schöne) Umgebungen schaffen?

Und bevor ich's vergesse: die Werkzeuge sollten nicht ganz so teuer sein ;) Open-Source oder Freeware wäre nett - aber nen Hunni oder so würde ich schon mal investieren, wenn's sein muss ;)
 
Da du mit C# schon gearbeitet hast, würde ich dir Raten, erstmal mit XNA anzufangen, und das Grundwissen der "Grafikprogrammierung" anzueignen, bevor du überhaupt mal zu einer fertigen Engine greifst.
 
Das UDK gibt es meines wissen kostenlos zum download, genauso die Cry Engine. Unity 3D sollte man auch nicht vergessen zu erwähnen. Die kann man sogar relativ günstig kommerziell nutzen.
Um eigene Character oder Gebäude zu erstellen kannst du Blender 3D nutzen. Das Programm ist Open Source und bietet wirklich sehr viel. Muss sich wirklich nicht vor Maya oder 3ds Max zu verstecken. Blender hat sogar eine eigene game engine. Ist aber nicht mit den oben genannten zu vergleichen obwohl man damit auch gute Spiele basteln kann.
XNA ist zum programmieren auch nie verkehrt. Grundlagen müssten mit C# ja schon da sein glaube ich.
 
Willst du jetzt ne Engine programmieren oder einen Editor einer Engine nutzen?

Wenn du einfach nur 3D Landschaften und Objekte erstellen, animieren usw willst, dann ist es zweites.

Wenn du eine Engine programmieren willst, würde das bedeuten, dass du selbst Code schreiben musst, um überhaupt erst eine 3D Darstellung oder nen Editor auf den Schirm zu bringen. Die Engine bestimmt ja wie mit dem Content umgegangen wird, wie sie von der Hardware zu berechnen ist. Die Engine ist ausschlaggebend, wie effizient mit Ressourcen umgegangen wird und in ihr sind verschiedenste Rendering features implementiert. Hier arbeitest du mit der DirectX Schnittstelle und der Hardware.
Ich bezweifle mal sehr stark, dass das alleine mit vertretbaren Aufwand einfach so möglich ist.
Das ist wirklich heavy...



Mit nem fertigen Editor kannst du aber wie du beschrieben hast, deine eigenen Spielszenen erstellen. Besonders viele Programmierkenntnisse sind da nicht wirklich nötig. Zumindest Objekte, Landschaften oder ähnliches erstellen kann wirklich jeder Anfänger.

Wobei du deine eigenen Gegenstände erst selbst in nem 3D Programm (z.B. Blender) modellieren musst.

Mit Blender (zum 3D Modelle erstellen) und z.B. der Cry Engine (Gestaltung der Spielszene) erzielt man selbst als Anfänger relativ schnell erfolge. Der Cry Engine Editor ist sogar selbsterklärend.

Schau dir einfach mal ein paar Youtube Videos vom Cry Engine Editor an, dann siehst du, was ich meine. Nur hat das mit Programmieren im eigentlichen Sinne nicht sonderlich viel zu tun - zumindest, wenn man nicht gleich mit Script szenen hantiert.
 
Zurück
Oben