3D-Spieleprogrammierung mit DirectX 9 und C++

3d-spieleprogrammierung-buecher

Die drei Auflagen meines Buches

Ich habe schon als Kind gerne geschrieben – hauptsächlich Abenteuergeschichten. Als ich meine Leidenschaft für das Programmieren von Computerspielen entdeckte, fing ich auch an Tutorials zu schreiben – kleine Anleitungen zu bestimmten Themen der Spieleprogrammierung. Damals war das Internet noch ein viel kleinerer Ort als heute. Insbesondere im deutschsprachigen Bereich gab es nur sehr wenige Ressourcen für Anfänger. Bücher über DirectX oder OpenGL (sehr wichtig für 3D-Grafik) gab es höchstens auf Englisch. Das SDK für DirectX gab es auch noch nicht zum Herunterladen, da es zu groß für damalige Verhältnisse war (Internetzugang über 56k-Modem). Man musste es bei Microsoft anfordern und bekam es auf einer CD zugeschickt (ich weiß noch sehr gut, wie aufgeregt ich war, als diese CD endlich im Briefkasten war). Des Englischen nicht wirklich mächtig, ohne solide C++-Kenntnisse und ohne Online-Ressourcen musste ich mir mit viel „Trial & Error“ fast alles selbst beibringen (meine naiven Anfragen bei diversen Spielestudios, wie das denn mit der 3D-Grafik funktioniert, blieben allesamt unbeantwortet).

Irgendwann – es muss 2001 oder 2002 gewesen sein – kam ich auf die Idee, aus meinen Tutorials zur Spieleprogrammierung ein ganzes Buch zu machen. Ich hatte schon immer davon geträumt, ein Buch zu schreiben, und so fing ich einfach mal an ein paar „Demo-Kapitel“ zu zusammenzustellen. Diese schickte ich an den Carl Hanser Verlag (ich weiß nicht mehr, ob ich es auch noch an andere Verlage geschickt habe). Damals war mir nicht klar, dass ich mit dem Carl Hanser Verlag direkt einen der renommiertesten Fachbuchverlage angeschrieben hatte – ganz schön gewagt für den ersten Versuch! Doch die Wette ging auf – ich hatte scheinbar Interesse beim Verlag geweckt. Ein sehr freundlicher Lektor, Herr F. Schneider, meldete sich bei mir. Er sah zwar keine überwältigenden Verkaufszahlen, aber das Thema Spieleentwicklung war für den Verlag ein ganz Neues, und sie wollten gerne dort einsteigen. Er nahm mich mit nach München in den Verlag, und ich bekam meine Chance und einen Autorenvertrag. Es war eine sehr aufregende Zeit. Ich stand damals kurz vor dem Abitur, aber irgendwie habe ich es trotzdem geschafft das Manuskript rechtzeitig fertigzustellen (heute wäre so ein Spagat für mich undenkbar). Geschrieben habe ich es mit Microsoft Word. Der Verlag hatte es geschafft, Word mit diversen Makros und Formatvorlagen auf das Wesentliche herunterzubrechen. LaTeX wurde erst viel später eingeführt. Als das Manuskript fertig war, wurde der riesige Papierstapel (ca. 800 Seiten) zu einer Korrektorin geschickt. Diese schaffte es in atemberaubend kurzer Zeit fast alle Fehler und Unschönheiten aufzuspüren, und ich hatte dann nochmal ein paar Wochen Zeit, um die Änderungen einzuarbeiten, bevor das Buch in die Produktion ging. Auch für die beiliegende CD musste ein „Master“ abgegeben werden. Dann begann das Warten. Eines Tages lag mein erstes Exemplar in der Post, gefolgt von einem ganzen Stapel weiterer Autorenexemplare. Nun wurde es spannend: Wie würde sich das Buch verkaufen? Ich hatte fleißig Werbung auf meiner Website und in meinem Forum gemacht. Das Forum war auch als Support-Forum für die Leser des Buches gedacht. Ich habe noch den Moment in Erinnerung, als mich Herr Schneider anrief und mir die ersten Zahlen mitteilte. Ich konnte es kaum glauben, aber es waren nach kurzer Zeit schon an die 500 Stück verkauft worden. Die folgenden Verkaufszahlen übertrafen sowohl meine Erwartungen als auch die des Verlages. Das Thema schien Potenzial zu haben. Das Forum wurde immer voller, und die Reaktionen auf das Buch waren überwiegend sehr positiv, was mich sehr stolz und glücklich machte. Schnell kam das Thema einer zweiten Auflage auf. Dies gab mir auch die Gelegenheit einige Fehler aus der ersten Auflage zu korrigieren und neue Inhalte hinzuzufügen, die es damals aus Zeitgründen nicht mehr ins Buch geschafft hatten. Es gab dann auch schließlich noch eine dritte Auflage.

Spieleentwicklung und Technologien wie DirectX sind sehr schnelllebige Themen, und so war mein Buch nach einigen Jahren technisch überholt. Mittlerweile gab es DirectX 10, was sich von der Vorgängerversion, die mein Buch behandelte, so fundamental unterschied, dass es mit ein paar Änderungen nicht getan gewesen wäre. Außerdem hatte ich mich natürlich auch weiterentwickelt, was meine „Programmierkünste“ angeht. Der Verlag hätte gerne noch ein weiteres Buch herausgebracht, und tatsächlich fing ich auch an zu schreiben. Irgendwann verließ mich jedoch die Motivation, wie es auch bei gefühlten 90% meiner Spieleprojekte passiert ist. Das ca. 120 Seiten starke Kapitel über 3D-Grafik ist jedoch fertig geworden, und damit es nicht „für die Katz“ war, biete ich es hier zum Download an. Dazu gehören noch die Lösungen zu den Übungsaufgaben. Mein altes Buch gibt es mittlerweile nur noch gebraucht oder als eBook zu kaufen.

Links

Videos

Hier sind ein paar Videos des Spiels Galactica, das im Buch entwickelt wird:

Screenshots

Hier sind einige Screenshots aus den Beispielprogrammen und -spielen, die im Buch entwickelt werden:

10 Gedanken zu „3D-Spieleprogrammierung mit DirectX 9 und C++

  1. Leon

    Hi David! Es freut mich sehr, über die Entstehungsgeschichte des Buches zu lesen.

    Ich habe Dein Buch gelesen als ich 13 Jahre alt war und damit über die wundervolle Welt der Computergraphik gelernt 🙂 Vielen Dank dafür!
    Nun habe ich meine Bachelorarbeit in dem Bereich geschrieben und freue mich darauf, vielleicht bald in dem Gebiet arbeiten zu können 🙂

    Diese Screenshots aus dem Buch wecken bei mir richtige Nostalgiegefühle 🥹 Als wären sie aus einer Lieblingsserie meiner Jugend 😀

    Ich wünsche dir alles Gute für Deine Zukunft und liebe Grüße 😊
    Leon

    Antworten
  2. Pingback: DaLu | Lukas Hoyer

  3. gotthardt

    Hallo ich habe mir die updates für c++ 2010 express runtergeladen. Ich habe das problembeim compilieren das die tribased.dll nicht geöffnet werden kann, ich stehe zur zeit auf dem schlauch, da ich noch nicht einmal die tribase zum laufen grig.

    Antworten

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert