Bücher

Learning Cocos2D

Eines gleich vorweg, ich bin kein Fan von Cocos2D. Das liegt nicht daran, dass die Jungs das Framework (oder von mir aus auch Engine) nicht ordentlich gemacht hätten, sondern an meiner Philosophie "lerne OpenGL richtig, von Grund auf". Das Buch selbst, hab ich mir zugelegt, weil ich mir mal einen Überblick über die beiden verwendeten Physik-Engines Box2D und Chipmunk machen wollte. Aber nun zum Buch ansich. "The beauty of Cocos2D is its simplicity" was mit Sicherheit stimmt, Cocos2D fühlt sich irgendwie ein bischen wie Core Animation an, man macht ein wenig hier und ein bischen da und schon blinkt was.
Es werden die wichtigsten Themen wie Game-Loop, Texturierung, Sounds, Textausgabe, Kollisionserkennung, Physik, Partikel, usw... abgedeckt. Am besten finde ich die Kapitel über die beiden Physik-Engines, aber hier trifft es den Einsteiger gnadenlos vor den Kopf. Wer dort keine Grundlagen in C oder C++ hat, bzw. noch nie was von einem Vektor gehört hat, wird schnell die Lust dran verlieren. Die beiden Engines sind 1 zu 1 in Cocoa2D integriert, also keine Wrapper-Klassen, welche die Funktionalitäten kapseln. Spätestens hier hört es dann auf mit simplicity. Das heißt nicht, dass man nicht versteht was die Autoren machen, sondern einfach, wenn man nur 1 Schritt aus Cocos2D raus macht (oder machen will), wird es hakelig. Das betrifft nicht nur die beiden Physik-Engines sondern das ganze Konzept an sich, von solchen Frameworks. Wenn man irgendwas benötigt, was das Teil nicht hergibt, muss man es selber bauen und spätestens dann ärgert man sich darüber, dass man es nicht gleich richtig "von Vorne" gelernt hat.
Ne Bewertung abzugeben ist schwierig, sicherlich ein gutes Buch zu Cocos2D (das ist ja uch der Anspruch), aber kein Buch wie ich finde, um sich ordentlich in das Thema Spieleprogrammierung einzuarbeiten. An dieser Stelle möchte ich noch auf die Webseite von Ray hinweisen, in der es jede Menge guter Tutorials dazu gibt. Sind zwar alle (soweit ich weiß) für Cocos2D, aber man kann die Informationen durchaus auch selbst für eigene Projekte gebrauchen.

Learning iPhone Game Programming

Das trifft schon eher meinen Geschmack ;-). Der Leser erarbeitet sich Schritt für Schritt ein Tile-Based Game, wärend Themen wie Texture-Mapping, Sprites, Animationen, Partikel, Sound usw... erklärt werden. Hier hat das Buch aber meiner Meinung nach ein großes Manko, der Autor hält sich doch zum Teil sehr zurück wenn es um die Details geht. In einr Handvoll Seiten geht es beiläufig um die Hintergrundinfos zu OpenGL ES 1.1. OpenGL ES 2 läßt er dezent aussen liegen, mag aber bestimmt damit zusammen hängen, dass es für den Einsteiger schrieriger zu lernen ist. Tile-Mapping hingegen wird sehr detailiert erklärt, auch das Thema UI-Design mit eigenen Grafiken hat er sehr gut gemacht. Gerade hier macht es sich bezahlbar, wenn man alles von Grund auf selbst baut und sich nicht auf die Fähigkeiten einer fertigen Engine verläßt. Das Thema Timebased bzw. Framebased Rendering scheint dem Autor sehr wichtig zu sein, da er sehr detailiert darüber schreibt und auch die Vor- und Nachteile sehr gut erklärt. Zum Abschluß bekommt der Leser noch ein paar Infos zu Highscores, Performance-Tuning und Kollisionserkennung (sehr ausführlich). Alles in Allem kein schlechtes Buch, leider zum Teil ein wenig knapp mit den Informationen. Interessanterweise hat der Autor einen doch sehr ähnlichen Programmierstil wie ich, auch die Herangehensweise an manche Themen, erinnert mich stark an mein eigenes Buch :-).
Vielleicht kann er ja sogar deutsch ;-)
1 Daumen hoch

iPhone 3D Programming

Kein Buch für den Einstieg in das Thema, es werden auf jeden Fall Kentnisse in Objective C / C++ vorausgesetzt. Wer noch nie mit OpenGL zu tun hatte, wird hier sehr schnell im Regen stehen. Alle anderen finden einen guten Überblick in OpenGL ES in Verbindung mit dem iPhone / iPad. Etwas seltsam fand ich die Tatsache, dass der Autor seine "Grafik-Engine" komplett in C++ entwickelt. Er begründet es mit der Plattformunabhängigkeit. Naja für ein iPhone-Buch etwas befremdend! Ansonsten finden sich darin aber sehr viele nützliche Dinge wie Quaternions eine nette Vektor-Matrizen Bibliothek, schöne Effekte wie Glow, Bloom und Vertex-Skinning, Normal-Bump Mapping. Dabei zeigt der Author stets (wenn möglich) die Unterschiede zwischen ES 1.1 und 2.0. Stellenweise ist ein Einsteiger aber mit dem Code überfordert, da er sich ständig beide Versionen erarbeiten muss. Besser wäre hier eine strikte Trennung der beiden OpenGL-Versionen (auf z.B. 2 extra Teile) gewesen. Alles in Allem aber ein gutes locker geschriebenes Buch, wenn auch stellenweise ein wenig verwirrend.
Auf jeden Fall: Daumen hoch

C++ für Spieleprogrammierer

Klingt auf den ersten Blick vielleicht seltsam (C++ für den Mac?), ohja, das Buch ist mit sicherheit das Beste was man zu diesem Thema finden kann. Mir ist noch kein Werk untergekommen, dass das Thema C++ so eingehend erklären kann. Der Author verzichtet komplett auf irgendwelche grafischen Ausgaben sondern konzentriert sich voll und ganz auf das Wesentliche. Irgendwie gelingt es ihm, das Thema spielend zu erklären (Hut ab). Einsteiger (für die das Buch natürlich gedacht ist) sollten damit eigentlich keine Mühe haben (Grundkentnisse in einer Programmiersprache sollten aber da sein) dem Inhalt zu folgen. Zu jedem Beispiel zeigt der Autor immer wieder was dabei auf dem Schirm kommt und erklärt schön die Zusammenhänge zwischen dem was getippt wurde und dem was dabei raus kommt. Also jeder der C++ lernen und dazu gleich noch das Thema Spieleprogrammierung ein wenig lernen will, kann hier ohne Bedenken zugreifen.
Auf jeden Fall: 2 Daumen hoch, klasse!