Spieleprogrammierung: Was brauche ich alles?
-
Hallo,
in letzter Zeit ist mein Interesse immer mehr gewachsen mich an Spieleprogrammierung ranzuwagen. Mir ist klar das es nicht einfach wird und viel Zeit braucht.
Ich haben schon Erfahrung mit C++. Die Grundkenntnisse sind vorhanden, aber noch nicht vertieft. Mit was sollte ich mich als erstes beschäftigen um einen Einstieg in die Spieleprogrammierung zu finden. Soll ich erst mit 2D Programmierung Anfangen, oder kann ich auch von Grund auf mich mit der 3D Spieleprogrammierung beschäftigen? Gibt es gute Bücher, die ich mir kaufen kann um einen guten Einstieg zu finden?
http://www.amazon.de/3D-Spieleprogrammierung-mit-DirectX-9-C/dp/3446405968/ref=sr_1_2?ie=UTF8&qid=1288944712&sr=8-2
http://www.amazon.de/Spieleprogrammierer-Geleitwort-Wertich-Phenomic-Development/dp/3446421408/ref=pd_bxgy_b_img_b
Wären das gute Bücher? Mit welchen sollte ich starten?MfG Domi
-
Das Buch vom Scherfgen kann ich nicht empfehlen. Der geht mehr auf seine Tribase-Engine ein als auf DirectX. Man kann danach eher damit umgehen als mit DirectX. Leider hab ich kein Gegenvorschlag da ich OpenGL User bin. Das hab ich übrigens nach der Lektüre des Buches gemacht :p.
rya.
-
Ich hab mir mal das Buch von David Scherfgen gekauft. Ja, mit der Zeit nervt das mit der TriBase-Engine, aber ich kann nicht sagen, dass man da nicht den Umgang mit DirectX lernt. Außerdem kann man mit der Engine schnell anfangen, eigene Spiele zu programmieren. Ich fand den ersten Teil (ohne TriBase) sehr lehrreich. Hab den zweiten Teil eigentlich gar nicht gelesen. Installation des SDKs und Konfigration des Compilers werden dort recht gut erklärt. Ich habe gleich mit der 3D-Programmierung angefangen. Mit Direct3D kann man aber auch 2D Spiele programmieren. Und so schwer ist 3D auch nicht. Mein erstes Spiel war ein 3D-Snookerspiel. Das war zwar ein ziemliches gemurkse (Stilmäßig), da ich noch nicht so richtig programmieren konnte, aber das Spiel ist recht schön geworden und läuft recht gut.
Ich kenn mich nicht mit OpenGl aus, aber ich hab gehört, dass dort die Initialisierung der Grafikkomponente um einiges einfacher sein soll. Um Direct3D richtig zu initialisieren (Geräte abzählen, verschiedene Videomodi auf verträglichkeit mit BildBuffer-Formaten prüfen, etc.) brauche ich schon gut und gerne 500 Zeilen Code. Aber wenn man sich einmal eine Funktion dafür geschrieben hat, geht das schon.
MfG, Jochen
-
Scorcher24 schrieb:
... ich kein Gegenvorschlag da ...
Schau dir die Tutorials und Tonnen von Samples im DXSDK an. Die sollten eigentlich reichen.
-
this->that schrieb:
Scorcher24 schrieb:
... ich kein Gegenvorschlag da ...
Schau dir die Tutorials und Tonnen von Samples im DXSDK an. Die sollten eigentlich reichen.
Bin davon ausgegangen dass er die schon angesehen hat.
rya.
-
Wenn ich dir eine alternative zu directX und microschund präsentieren dürfte:
OpenGL
Den Einstieg schaffst du spielend, wenn du dich ein bisschen durch das Redbook arbeitest (muss man noch nicht mal kaufen!) link hier:
http://fly.cc.fer.hr/~unreal/theredbook/
oder aber du fängst mit SDL an, und gehtst dann weiter mit SDL+OpenGL oder kombinierst die beiden von beginn weg.
über SDL informierst du dich hier:
wenn du noch weniger sattelfest mit C/C++ bist würd ich mal behaupten, bist du am anfang bei OpenGL und/oder SDL besser dran, da sich damit auch schneller erste kleine Projekte realisieren lassen und so beim einstudieren weniger Frust aufkommt.
-
Ich würde SFML statt SDL empfehlen. Wenn du für Windows entwickeln willst würde ich auf jeden Fall zu Direct3D statt OpenGL raten.