Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Other Sellers on Amazon
+ $3.99 shipping
+ Free Shipping
Cocos2d for iPhone 0.99 Beginner's Guide Paperback – January 15, 2011
|New from||Used from|
About the Author
Pablo Ruiz started his carreer as a developer working as PHP developer for a local government office in 2007. Before that, he would work in QA for a big multinational game development company. While working as a PHP developer he would build big administrative and accounting systems which were used across all the offices for their daily work. In 2008 he began working on some small C# games using the XNA framework in his spare time. At the time, the iPhone was gaining ground so he began working on a personal project, a little game called Aqua Rush. After releasing it and starting doing consultancy work for several companies he left his day job and began working as a freelance iPhone developer. Half a year later, he founded, with his partner, their own company; Infinix Mobile Software Development in Argentina, where he employs and trains students to learn and master the art of programming.
If you are a seller for this product, would you like to suggest updates through seller support?
Top Customer Reviews
Here is the repost:
Till just a few weeks ago, there were no real books one could read on Cocos2D game programming. While there are an almost infinite number of web tutorials, a book has a different charm - it is usually more structured and hopefully better researched. A few weeks ago, the first book on Cocos2D surfaced, "Learn iPhone and iPad cocos2D game development" by Steffen Itterheim. I bought it on day 1 of its release, and posted my review here. In short, it was well written and, well, the very first book for cocos2D, so it had that first mover advantage.
The other book I am eagerly waiting for is Rod Strougo and Ray Wenderlich's book "Learning Cocos2D". The book is yet to be released, but I get the feeling it will be more `advanced' than the other available books.
In the mean time, I was contacted by another company, Packt Publishing who sent me an email to review a new book from them: Cocos 2D for iPhone 0.99 - Beginners Guide by Pablo Ruiz.
Here is the introduction of the book, in the Preface:
"This book will teach you the fundamentals of how to write games with this framework. As this book is meant to give you a basic knowledge of the most important aspects of Cocos2d, it will cover a lot of subjects very quickly. However, do not worry! Almost every chapter will include tasks for you to complete and examples for you to practice. Throughout this book, we'll make three different games and each chapter will build on the previous one, but can also be considered independently, so feel free to skip to any chapter that interests you."
So this post is a review of this new book by Pablo.
So how is Pablo Ruiz's "Cocos2D for iPhone 0.99' ?
Its 350 pages of relevant content. The author dives into topics quickly and gets to code examples very soon.
It covers the usual topics like fiddling with sprites, more details on actions, scene and menu management, particle systems, cocosdenshion
I liked the fact that the examples Pablo chose of games are better than `stupid games that only prove a concept'. For example, "Chapter 2:Playing with Sprites" is a 54 (approx) page chapter which incrementally goes about building a board game where you align stones based on color by swapping them around and then when you align them, the stones destroy themselves. In this 50 page chapter, he goes through the basics of CCSprite, using CCTouchDispatcher for touch management, using Zwoptex to create Sprite Sheets,using CCTextureCache to pre load images for faster response time and even a few lines of OpenGL (basic stuff like drawing a box around an item you select)
He continues the same board game across Chapters 3&4 (another 55 odd pages), where he embellished the game with actions (the usual CC actions along with the ease in action effects). There is a nice page in his book that shows the animation path of each ease action. It looks like it was copy pasted from some standards reference - if so, then you may already know about it - but to me, it was nice to see the easein/out effects on one page. Finally, in Chapter 4, he shows us how to add fonts and text labels to the game and goes through the basics on how to create your own font with CCBitmapFontAtlas.
While the board game was interesting, I was getting bored. Fortunately, at Chapter 5, Pablo stars a new game that basically is called "Aerial Gun" which is a shooting game. You control an airplane while enemies approach you - you have to kill em. In this chapter his focus is on the basics of the game - sprite movement, handling accelerometer based movements, how to fire bullets (bullets stored in an array so you see a spurt of them), collision detection
Then, in chapter 6, he adds options and other menus to the game, including telling us how to use the basis NSUserDefault class to store preferences
Finally, in chapter 7,he integrates the Cocos2D particle system into his game to give explosion effects. One thing I liked was it covers the meaning of all the attributes of a particle system (again at a cursory level). Specifically, I liked the section where he covers how to give an explosion effect when your enemy is hit including telling us how to make the particles move correctly. All of this is directly by manipulating the particle parameters he briefly explained earlier. And then he finishes off with using ParticleDesigner, which is pretty much the defacto particle design tool, it seems
In Chapter 8, he covers background panning using tilemaps. Nothing new or unique here. But if you don't know tilemaps, here it is.
Chapter 9 covers the CC Sound engine. He covers both SimpleAudioEngine and CDSoundEngine
What stands out from the others in this book is the chapter on Chipmunk. Chipmunk is a physics engine that can add realism to your games (like the toppling monuments in angry birds). Most tutorials and books cover Box2D (even Steffen's book I reviewed earlier). Box2D seems more able, but is reasonably more complicated. And I really wanted a good reference to chipmunk (as a beginner). I was very happy to see Pablo cover chipmunk. Just for that, I'd give him kudos. And also, he goes through several pages in building a relevant game - a totem block, that rests on top of various blocks of different shapes. Your goal is to remove the blocks without the totem falling on the floor.
There is also a chapter on OpenFeint - I liked it. Frankly, I never knew about it. OpenFeint is a software library you can link your code with that allows your game to become "social". In other words, you get access to leader boards, get notifications on new scores from your buddies in your network, connect and post messages to Face Book and more. Yep, you guessed it. It can also become a nightmarish tool if you choose to abuse it (remember those beyond irritating messages from all your friends in facebook about some idiotic occurrence in some mafia game they were playing etc.) Used properly, OpenFeint looks like a very nice tool and Pablo covers it well.
The book is hurried. Just too hurried. When you start focusing on a topic into the next level of detail, you feel like the author is trying to complete a race in record time. While at first glance, it looks like he has spent time with details, when you really want to understand something new, you feel he should have spent more time with details.
Code level commentary is high-level and has errors. Consider for example, the chapter on Chipmunk. This was my first point of interest, so I decided to actually try out his examples. I was not given his resource file zips, so I had to type them in myself. The instructions were cursory at best:
Example, he just says "rename HelloWorld" to "GameScene" (no further instructions, and it is not just renaming - you have to rename more than one part, and refactoring was a better approach as far as I feel)
He says "in init method of GameLayer class, change space gravity to 0,-200' without saying where that line would be and what are we looking for. Again, basic stuff - if you know your stuff, you don't have an issue. But if you are a beginner, you are left wondering
Finally, he asks us to introduce a line declaring a totem variable, which never compiles because the instructions forgot to tell us to declare it first (and there too, he says in another example "declare an ivar" - thats all). Again, not an issue for those who know, but if you are really a beginner, you will feel lost at his pace and choice to ignore details.
So basically, you either describe it well enough and the reader can figure out errors on their own, or, you describe it at a high level but make sure the code has no errors. Again, like I said - I did not get enough time to actually try his other examples. Unfortunately, the first chapter I did try to get into details (chipmunk) left me floundering (remember I am a beginner to cocos2d, and am supposed to be a target audience for his book as per the preface)
There may be other issues, I am on travel, so I could not do a thorough read.
Verdict - Better than Steffen Itterheims Cocos2d book?
Frankly, from what I read so far, I don't think so. While Pablo's book covers more topics, the one chapter I actually decided to dive into came out with several errors. Steffen's book is more thought out and not hurried at all. And I'd say there i around 60-70% intersection of topics between the books. And unless I try out more of Pablo's code in the book, I can't honestly say it is the book for beginners.
But besides that, it covers enough topics to be of interest. I think if Pablo spent more time with details on the book, it would be a treasure trove. Also, there is limited (or no) handling of the more advanced Cocos2D functions like isometric tilemaps, Cocos2D Camera, Parallax scrolling etc.
Having said all of the above, I think the author will likely improve the quality of the book in future versions.
Should you buy it?
Well, if it was the first book, I would buy it. Since I already have one book and I will surely buy the one by Rod & Ray (just because of the reputation), it makes buying this book a not-so-easy-choice. For those who choose to buy it, it will give you lots of help and a great head start. But be expected to be rushed and brace yourselves for errors in code.
* Missing Code Resources. Right from the get-go, there is a major problem. The chapter 2 code resources for the first section of chapter 2 are 100% incorrect. Sure the stuff in the book looks good, and the stuff you download will compile and run; BUT, the code you download does not match the code in the book! In fact you cannot even build the code in the book as some resources are missing in the download! And, this is NOT an isolated incident.
* English as a second language. Ok, this is a tech book. But, there are editors at Packt that get paid money to proof-read the basic text of a book. There can be NO excuse for broken English to get into print in the amount seen here. It is not a book-breaker on its own, but it is a constant irritation.
* OOP?? Whazzat? The architecture presented for the systems is, to put it bluntly, awful. It is like the author had never heard of OOP or MVC. You might learn a bit here and there about Cocos2d, but even the simple examples in this book cry out for a real software engineering solution.
* Just a little Cocos2d. In the process of making the example games, more time and effort is spent on creating the (bad) game architecture than is spent with Cocos2d. In fact, very little space is used to explain and illustrate the exact HOW and WHY the Cocos2d API works. Yes, Cocos2d is used. Yes, Cocos2d API calls are listed out. But to what end? Nothing about Cocos2d is really explained very well.
* Logic Bugs crawling around. Yes, the code will build and run. But there are logic and operational bugs in the code. A lot of them. By trying to do to much, the examples end up being very incomplete, and in many ways broken. There are also a number of "I will show you how to fix this later." type statements; and the 'later' never comes.
* Just does not feel finished. In working through the book, the feel I get is one of impatience and rushed work by the author. The example projects do not proceed in a clean, cohesive fashion. To many interesting capabilities are left for the reader to do as an 'exercise'. Chapters cover to much disparate ground, and in a very shallow a manner. The book would have been better served with double the number of chapters, each covering ONE concept of the Cocos2d, in depth. The book is supposed to be about Cocos2d specifically; not making games.
I am giving this book a 2-star rating as it does have some merit; one can learn from it. If you cannot afford, or want, to buy the Cocos2d game source code to learn from, then there is little alternative. I would hope that the publisher would require the author to fix the source download so that it matches the book and that the resources needed are present.
Just be aware of the limitations of this text, and the amount of extra work you will need to do to get through it.
Most Recent Customer Reviews
** one suggestion for the writer. please remove the "Time for action" headline.Read more
Extremely poorly edited.Read more
You can read this review on […] The Mac and iOS Game Developer Community.
Cocos2d for iPhone 0.Read more
I'm barely into Chapter 2, and I'm dealing with 1.x beta cocos2d on Xcode 4, but the only issues I'm having seem to be with the editing of...Read more
This book is an introduction to game development using the cocos2d for iPhone framework.Read more
I am experienced programmer and I have done game programming before at various times in my varied career.Read more