Spieleprogrammierung: Welche Sprache/Entwicklungsumgebung?
-
Hallo an Alle,
ich habe mit C/C++ die Grundlagen der Programmierung gelernt und möchte mich jetzt in die Richtung der Spiele-Programmierung entwickeln, sprich 2D-3D Spiele entwickeln. Ich habe in einem Forum hier gelesen das VC++ dafür nicht die richtige Entwicklungsumgebung ist sondern eher C#... Meine Frage:
Welche Sprache/Entwicklungsumgebung eignet sich am besten um Spiele zu Entwickeln?
Vielen Dank schon mal
MFG
V.R.
-
Dieser Thread wurde von Moderator/in Dravere aus dem Forum C# und .NET in das Forum Spiele-/Grafikprogrammierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
VRComputing schrieb:
Ich habe in einem Forum hier gelesen das VC++ dafür nicht die richtige Entwicklungsumgebung ist
Stand da auch ein Grund? Hört sich nämlich nach komplettem Unsinn an.
VRComputing schrieb:
sondern eher C#...
Ah, definitiv Unsinn. C# ist eine Programmiersprache und keine IDE. Lustigerweise kann man in Visual Studio auch C# programmieren.
VRComputing schrieb:
Welche Sprache/Entwicklungsumgebung eignet sich am besten um Spiele zu Entwickeln?
Mit C++-Kenntnissen liegt es nahe, sich in dieser Sprache weiter umzuschauen. Zumindest wenn die Kenntnisse gut sind. Und das müssen sie sein, auch wenn man sich gerade bei C++ viel zu schnell als "gut" einstuft. Vielleicht "Effective C++" oder so lesen, wenn du noch nicht sicher bist.
Dann könntest du entweder in Low-Level-Frameworks wie DirectX oder OpenGL einsteigen, oder – was am Anfang viel komfortabler ist – fertige Bibliotheken wie SFML und Ogre verwenden, um schneller loslegen zu können.
Auf der anderen Seite kannst du zum Beispiel mit C# und XNA Spiele programmieren. Ist wahrscheinlich ein etwas weniger steiniger Weg als über C++. Allerdings müsstest du dir dann zuerst eine neue Programmiersprache aneignen.
-
wenn du genauer sagst was du erreichen willst, kann man dir auch besser eine sprache empfehlen.
grundsaetzlich waere es nicht verkehrt mit der sprache weiter zu machen die man schon kann, was neues zu lernen ist auch nicht verkehrt. das ist eher eine persoenliche entscheidung als technisch restriktiert.
-
Valve hat die komplette Source Engine, als auch Half-Life 2 selber sowie ich glaube alle Spiele danach mit Visual Studio und C++ entwickelt. Also wenn das kein Wort ist
-
Also ich habe noch keine konkrete Idee was ich für ein Spiel Programmieren will,
mit ging es darum zu erfahren ob es vll. eine Sprache gibt die vorteilhafter ist als alle anderen...
-
VRComputing schrieb:
mit ging es darum zu erfahren ob es vll. eine Sprache gibt die vorteilhafter ist als alle anderen...
Natürlich, genau deswegen gibt es ja auch nur eine einzige Programmiersprache und nicht viele verschiedene...
-
Ich hab's verstanden
-
"Welche Sprache/Entwicklungsumgebung eignet sich am besten um Spiele zu Entwickeln?"
Das kommt darauf an was Dir gefällt! Ich denke es hilft Dir eher mal ein paar selbst auszuprobieren und dann zu entscheiden. Die Frage ist auch für welche Betriebssysteme du sie brauchst (ich denke Windows bei Dir). Ich würde dir raten bei der Sprache C++ zu bleiben, wenn Du schon grundlegende Kenntnisse darin hast.
Die Entwicklungsumgebung bring den Compiler gleich mit, aber im Prinzip reicht auch ein guter Editor und der Compiler alleine.
- Code::Blocks
- Eclipse (mit CDT Plugin)
- MinGW Developer Studio
- Visual Studio (Express)
Gruß
Trooper
-
Die absolute Geheimkombination die nur ganz wenige Wissen ist Haskel mit Winhugs!
Das ist die perfektie Kombination zur Spieleprogrammierung. Doch nur sehr wenige wissen davon. Die meisten meinen es wäre zu kompliziert und trauen sich nicht.
-
OK nur weil fast alle großen kommerziellen Entwicklungsstudios auf C++ setzen heißt dass noch lange nicht dass c++ die Ideale Sprache zur Entwicklung von Spielen ist, wenn man im Alleingang arbeitet. C++ bringt eine menge Verwaltungsaufwand mit, und vieles ist einfach umständlicher als in anderen Sprachen, wie zum Beispiel das manuelle trennen von Klassen und Headern. Die vorteile machen sich ausschließlich in wirklich großen Projekten bemerkbar.
C# und XNA sind da für den Privatentwickler schon wesentlich besser geeignet, weil es viel leichter fallen sollte ein Spiel darin zu entwickeln. Zudem ist die IDE dafür auch ausgelegt, und die Community ist auch wie ich mitbekommen habe relativ groß das heißt du kannst da auch massig Support bekommen.
Ich persönlich bin nicht so der fan von C# und dem .Net Framework dahinter. Für mich ist es einfach nur ein eine Kopie von der Idee die hinter Java steckt mit minimalen Verbesserungen die aber noch lange keine neue Sprache rechtfertigen. Das Problem an meiner Kritik .Net ist wirklich gut, und man kann produktiv damit arbeiten.
Momentan versuch ich grade mit Scala ein Spiel zu schreiben (kompiliert zur jvm, könnte aber nach .Net kompilieren). Alles noch eher experimentell, aber die Sprache ist einfach die beste. Nur mit der reibungslos funktionierenden IDE hapert es bei der Sprache noch ein bisschen. Und die spiele Community in Scala ist wirklich nicht groß, ich glaub ich bin der einzige Mensch auf dieser Welt der das momentan versucht, kann daher auch bei problemen nicht wirklich jemanden Fragen.
mögliche weitere sprachen wären da noch
Java und Python
wobei ich dynamisch typisierte sprachen wie Pyton aufgrund ihrer Langsamkeit eigentlich nur abraten kann. Aber dass muss jeder selbst für sich entscheiden.
-
OK
Danke erst mal.
-
Ich tendiere zu Visual Studio 2010, da die dir da die Fehler suchen, was erstaunlicherweise funktioniert.
MfG
-
Krux schrieb:
C++ bringt eine menge Verwaltungsaufwand mit, und vieles ist einfach umständlicher als in anderen Sprachen, wie zum Beispiel das manuelle trennen von Klassen und Headern.
Wo steht denn das man in Header und Implementierung aufteilen muss
class Text { private: string s; public: Text(string str) { s = str; // ich kenne auch die Initialisierungslist ;-) } ~Text(){} string get() { return s; } };
Krux schrieb:
C# und XNA sind da für den Privatentwickler schon wesentlich besser geeignet, weil es viel leichter fallen sollte ein Spiel darin zu entwickeln. Zudem ist die IDE dafür auch ausgelegt, und die Community ist auch wie ich mitbekommen habe relativ groß das heißt du kannst da auch massig Support bekommen.
Ich glaube eine größere Community als C++ und Game-Development wirst du nicht finden.
Du musst doch nicht perfekt C++ können um ein Spiel als Hobbyprojekt zu realisieren. Wie Bjarne Stroustrup schon schrieb musst du nicht jedes Detail von C++ kennen sondern nur die Konzepte dahinter verstanden haben. Die ganzen Feinheiten, wo es ganze Bücher drüber gibt, sind nur nötig wenn du dir den letzten Schliff geben möchtest.
Man kann aus allem ne Wissenschaft machen oder halt einfach ein paar Grundlagen lernen und dann loslegen. Besser machen kann man sicher fast immer was.
G hibbes