Der Autor führt durch die Entstehung von 4 kompletten 2D Spielen (Puzzle, space shooter, Tank Battle und ein Jump n Run). Diese sind im Gegensatz zu anderen Büchern vollständig und spielbar (Download über die Buch Verlagsseite) und machen sogar Spass! Sie sind gut animiert, haben ordentliche Grafik und einen kompletten lifecycle, also als Minimum Startschirm, Spiel und Game Over. Da habe ich gleich Lust, die Spiele nachzuprogrammieren. In anderen Büchern gibt es meist keine kompletten Spiele, dort werden nur einzelne Teile eines Spiels betrachtet. Hier kann ich jedoch auch gleich die ganze Spielestruktur kennenlernen, was mir vorher immer Probleme bereitete. Weil: ein Raumschiff rumfliegen lassen und Dinge abschiessen ist keine Kunst, aber das ganze einzubetten in eine ordentliche Struktur mit score, leveln und übergängen zwischen verschiedenen Spielstadien schon.
Für mich ist Spieleprogrammierung eher ein Hobby, deshalb fällt mir der Einstieg mit XNA leichter, als gleich in c++ zu programmieren. Ich habe Vorkenntnisse in Java, deshalb ist der Umstieg zu c# nicht so schwer. Grundkenntnisse in Objektorientierten Sprachen finde ich hier auf jeden Fall von Vorteil. Letztendlich reicht zu wissen, was Klassen und Objekte sind etc.
Das Buch benutzt eine einfache Sprache und der Code ist auch nicht allzu schwer. Mathematisch muss man nicht gross in die Trickkiste greifen. Ich fand den Code manchmal etwas simpel, aber er erfüllt seinen Zweck und kann später immer noch "getuned" werden ;) Es gibt halt sehr viele if-else Sachen, anstelle von Composition oder Einsatz verschiedener Klassen. Das macht aber auch den Einstieg leichter.
Seitens XNA werden alle relevanten Themen für 2D Spiele vorgestellt. Für mich ist ok, dass kein 3D vorkommt. Dafür habe ich wenigstens komplette 2D Spiele, für die ich auch selbst Content entwerfen kann usw. Zudem werden auch Sachen wie Pathfinding und Partikel angeschnitten, so dass man ein gutes Rundum Paket bekommt, mit dem man kleine Spiele programmieren kann, die nicht mal unbedingt billig sein müssen.
Für mich auf jeden Fall ein sehr gutes Anfänger Buch! Für Fortgeschrittene aber bestimmt nichts neues.
Danach kann man dann zu einem fortgeschrittenen XNA Buch greifen (z.B. XNA unleashed). Vielleicht gibt es ja sogar eine Fortsetzung von diesem Autor??