Stefan Zerbst wurde durch die beiden "3d-Spieleprogrammierung in C++"-Bände (beide bei BoD) bekannt. Auch wer von diesen Büchern eher enttäuscht war (so wie ich) sollte diesem hier dennoch eine Chance geben, denn im Gegensatz zu Zerbsts Frühwerken, gibt es zu diesem kein wesentlich besseres englischsprachiges Äquivalent ;)
Die Stärken des Buches liegen ganz klar in der frischen Thematik: Im Gegensatz zu den meisten anderen Büchern über 3D-Programmierung in DX (zumindest diejenigen, die sich an Nicht-Informatiker richten), wird hier nicht einfach versucht irgendwas auf den Monitor zu rendern, sondern es wird gezielt versucht eine flexible und API-unabhängige 3D-Engine zu entwickeln.
Dementsprechend verspricht das Inhaltsverzeichnis des Buches dann doch einiges: API-unabhängiges Interface unter Verwendung von DLLs, Schnelle 3d Mathematik mit SSE (Assembler), Flexible Vertexstrukturen, Pixel-/Vertex-Shader, Sceletal Animation, BSP-Scene Management, CAD-basierter Leveleditor, etc. , das alles am Beispiel von MS DirectX9.
Leider kann das Buch diese vollmundigen Versprechen nur zum Teil erfüllen. Dabei bleiben die Kritikpunkte meist die gleichen wie auch schon bei früheren Zerbst Büchern: Mangelnde Erklärung bei wirklich schwierigen Themen (dafür seitenlange Ausführungen bei trivialsten Problemchen ;) und unprofessioneller, teils schlampiger Code trüben das Lesevergnügen. Hierzu stellen sich Pragmatikern Fragen wie: "Warum soll ich die 3D-Mathematik selber schreiben, wenn das doch mit D3DX einfacher, lesbarer und vor allem schneller geht?"
Es stellt sich hierbei zwangsläufig die Frage: Für wen ist dieses Buch eigentlich geschrieben? Gestandene Informatiker werden sich durch den Stil in Sprache und Code eher abgestoßen fühlen, Kiddies und Hobbycoder dagegen werden an den mangelnden Erklärungen und Fehlern in den Listings verzweifeln.
Also wieder ein 3D-Buch das keiner braucht?
Mitnichten, wie ich finde. Da es zu den im Buch angesprochenen Themen nur wenig und noch weniger deutschsprachige Literatur gibt, kann sich der Kauf des Buches, die nötige Motivation und Geduld vorausgesetzt durchaus lohnen (in der Not frisst der Teufel halt auch Katzenstreu ;).
Diejenigen, die sich die Zeit nehmen sich in den Code hineinzudenken und versuchen ihn wirklich zu verstehen, anstatt der "Copy&Paste von der CD und gut is"-Mentalität zu frönen, können von diesem Buch wirklich etwas lernen, ohne gleich einen Kurs in Unimathematiker-Deutsch/-Englisch belegen zu müssen.
Allen anderen kann man jedoch wirklich nur zum Kauf eines konventionelleren Hobby-3D Buches raten (z.b. Introduction to 3D Game Programming with DirectX 9 von Frank Luna), da sind zwar nicht ganz so interessante Themen drin, aber dafür klappts auch mit dem 'Copy&Paste' wieder ;)