Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

22.12.2009, 18:11

Anfänge der Spieleprogrammierung mit C++ und Directx

Schönene guten Abend.

Da ich ein leidenschaftlicher Zocker und Programmierer bin, wollt ich mir natürlich auch ein eigenes Spiel erstellen. Somit habe ich mir das Buch Visual C++ 2008 geholt.

Dieses habe ich auch "durchgearbeitet" so gut es geht. Schließlich ist es auch ein Nachschlagwerk.

Nun habe ich in der Schule auch C++ aber nur Consolenanwendung. Mit Schleifen, Strings und Array, Operaten etc.

Nun wollte ich Anfangen mir ein Spiel zu Programmieren aber irgentwie finde ich kein Anfang. Ich habe nach Tutorials gesucht aber alle die ich gefunden habe, fangen entweder bei 0 an oder sind über meinem Wissensstand.

Daher wollte ich fragen, ob ihr mir sagen könntet womit ich anfangen könnte.

Vielleicht noch zur Information.
Ich habe:
-Visual C++ 9.0
-Directx SDK (August 2009)
-Autodesk 3ds Max

Fals ihr noch fragen habt oder Informationen benötigt um mir zu helfen. So gebe ich die gerne. Ich würde mich sehr über eure hilfe freuen und wünsch euch einen Schönen Abend.

Mit freundlichen Grüßen

cjmaster

2

22.12.2009, 18:15

Das buch von David Scherfgen dürfte was für dich sein ;)

3

22.12.2009, 18:17

Hallo,

was hast Du denn vor zu programmieren? In welche Richtung soll es gehen?
Am Anfang wäre sicher ein Pong oder Tetris von Vorteil (in 2D). Wenn Du DirectX nutzt, dann wirst Du wohl auf Direct3D angewiesen sein und relativ low-level programmieren, es sei denn, Du nutzt eine Engine (wie Irrlicht oder OGRE).

Was kannst Du denn bisher alles? Was hast Du schon programmiert? Um ein 2D-Spiel zu programmieren, wäre sicherlich eine 2D-Engine oder Library sinnvoll. Im Buch 'C++ für Spieleprogrammierer' wurde SDL genutzt. Ich empfehle SFML, da objektorientiert. www.sml-dev.org

Mehr Informationen wären aber sicher von Vorteil.

4

22.12.2009, 18:28

Danke für die sehr schnelle Antwort.

Windows Form Anwendungen, und dort halt veränderungen und Aktionen.
Wie Labels oder Hintergrundänderungen.

Sonst schleifen für Berechnungen. Arrays speichern und abrufen. Erstellen von Klassen teilweise.

Und in welche Richtung es gehen soll.... Nunja ich weiss das ich hochgesteckte Ziele habe. Aber ein einigermaßen 3d Fähiges RPG Game wäre ein schöner Anfang. Aber um das ganze richtig zu verstehen, würde mir auch ein Super Mario reichen. Nur damit ich halt weis wie ich am besten Anfange.

Nun kommt meine nächste Frage? diese Engines ist es empfehlenswert die selber zu schreiben oder welche von anderen zu übernehmen? Darunter der SDK von DirectX habe ich ja in der Libary nur wie verwendet man ihn? Über Schlüsselwörter?

Ich weiß nicht, ob die Informationen von Belang sind aber ich habe auch Java einstiege gemacht. Und ein Spiel programmiert mit hilfe des RPG Maker tools. Dort halt die Scripte bearbeitet und verändert.

Ansonsten habe ich leider nicht viel mit Programmierung gehabt, die in das Grafische und richtig objektorientierte geht. Bis auf kleine Kurse in Flash oder Scratch.

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

5

22.12.2009, 18:39

bis du ein eigenes 3d rpg schreiben kannst werden wohl noch einige monate(wenn das mal reicht) vergehen^^

also ich würd dir erstmal "c++ für spieleprogrammierer" von heiko kalista empfehlen damit du deine kenntnisse nochmal vertiefen kannst und der einstieg in die OOP ist in dem buch auch sehr gut.

du kannst natürlich auch erst auf eigene faust versuchen ein pong, shooter oder snake mit der sfml zu schreiben.
http://www.sfml-dev.org/
bei luinechor fehlt das f ;)

du kannst mich auch gern über icq/msn anschreiben oder mir deine nummer schicken. ich schreibe gerade mein zweites spiel mit der sfml und kann dir dabei vllt behilflich sein.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

6

22.12.2009, 18:42

Inwiefern bist Du mit den Begriffen der Spieleprogrammierung vertraut? Weißt Du, was eine Engine ist? Es ist (eigentlich) nicht empfehlenswert, diese selbst zu schreiben, weil man dann quasi nur den Motor eines Spieles programmiert hat, aber nicht das Spiel selbst, was das eigentliche Ziel sein soll.
http://scientificninja.com/advice/write-games-not-engines

Ja, Du kannst "DirectX direkt ansprechen". DirectX besteht ja aus mehreren Komponenten und für die grafische Ausgabe benötigst Du nur Direct3D (es gibt noch DirectDraw für 2D, was aber sehr veraltet ist und seit DirectX 7 nicht mehr weiterentwickelt wird.)
Um mit Direct3D anzufangen, kannst Du dir dies mal anschauen: http://www.directxtutorial.com/tutorial9/b-direct3dbasics/dx9B.aspx
Solltest Du dich für DirectX entscheiden, wirst Du jedoch nicht plattformunabhängig programmieren können. Deine Spiele werden also nur unter Windows laufen.

Ein 3D-fähiges Rollenspiel wird für den Anfang auch ziemlicher Overkill sein, weshalb Du dich auf kleinere Dinge konzentrieren solltest. Du kannst natürlich auch gleich in die 3D-Welt gehen, dann wäre ein einfaches Spielprinzip aber sicher von Vorteil, denn bei einem Rollenspiel gibt es so einige Elemente.

Das von E122 empfohlene Buch von David Scherfgen dürfte für dich interessant sein, solltest Du Direct3D (bzw. DirectX) nutzen wollen. In dem Buch wird vorrangig die TriBase-Engine benutzt, so dass Du nicht auf DirectX alleine angewiesen bist.

Update
Ja, solltest Du wirklich noch (fast) keine Erfahrung haben, was Objektorientierung angeht, dann wäre das Buch 'C++ für Spieleprogrammierer' von Heiko Kalista wirklich sehr empfehlenswert. Dort wird, wie gesagt, am Ende mittels der SDL programmiert. Du kannst das ganze aber auch mittels der SFML machen, was meiner Meinung nach viel flexibler ist, weil SFML in C++ geschrieben ist, SDL hingegen in C.
Solltest Du in Zukunft auch weitere Fragen haben, kannst Du dich ebenso gerne an mich wenden (Xfire, ICQ, MSN…)

7

22.12.2009, 19:21

In dem Fall, dass du mit Windows Forms anwendungen geschafft hast, und die net so zum Spiele entwickeln zum gebrauchen sind, wäre wahrscheinlich das von Luinechor empfohlene 'C++ für Spieleprogrammierer gut, um deine Kentnisse zu vertiefen

Werbeanzeige