Irrlicht: PACKT released a new book for beginners. My review of the book.

BookI've been working with Irrlicht since 2007. At the time I barely knew how to code in C++ and graphic engines where still a mystery. I decided to take Irrlicht at the time, because it seemed the most easy to start from and had the more potential. Other engines where really nice too but really too complicated for a starter like me.

Today, I still don't regret my choice about Irrlicht as it helped me improve my skills and gain more knowledge about game development.

PACKT publishing just released this book for Irrlicht (the first book ever to my knowledge) and I decided to talk about it and review it.

 


What it is:

The book is about IRRlicht. Irrlicht is a C++ open source realtime 3D engine used for a lot of things but often used to create games. Users must have a basic knowledge of C++ and an idea how 3D objects are represented. This book is aimed at beginners (hence the name "Beginner's guide"). In my opinion, this is really well written and clear from beginning to end.

Book format and delivery:

The book can be ordered in PDF format and/or printed form. The printed form format is standard: (190mm x 235mm). Each of the editions can be ordered separately or in a package. I was really surprised how fast the delivery was for the printed book (I had choosen to take both). It took around a week, and I live in Montreal, Canada. For the PDF version, I was able to download it "on the spot". The book have around 245 pages. I just wish there could be more pages...

The content:

The book tries to cover most of the stuff the Irrlicht engine can do from a beginner perspective.  The book start by showing you how to install Irrlicht and use it from different compilers/platforms. I found that really nice.

There is a section devoted to 2D with sprite rendering and the authors explain how to create 2D animated sprites with Irrlicht and a specific tool. Even from a guy like me that is using Irrlicht since 2007, that section was really interesting and fun to read.

The book talk also about specific Irrlicht data types that are really useful, how to use Coppercube to create scenes for Irrlicht, how to use an event manager to collect user event, and manage Irrlicht GUI's. This book even give a little introduction about how to use shaders! I would have liked to have more about this, but since It's addressed at beginners; I would have to wait for a "intermediate book"...

What I would have liked to see:

  • Tutorials and explanations about the Irrlicht coding style. This is not a big issue, but since Irrlicht is community driven; I would have hoped that they teach newcomers about this. When I first tried to give back some code to the community back in 2007, it was really horrible.
    Here some comment on the forum (http://irrlicht.sourceforge.net/forum/viewtopic.php?f=2&t=45194)
     
  • Managing collisions? I did not see any tutorial about collision. I think this is the thing missing the most from the book, as most "beginners" would have surely hoped to "play" simple projects. There is only a mention about the node animators. The collision response animator is mentionned but no explanations how to use it. Fortunately Irrlicht itself have good examples to show how this work. I just had hoped the authors would have discussed about this.

My current opinion about the book:

Its the first book I that I see was made for Irrlicht and is really good for a beginner to have a "fast start" using the graphic library. If you want to start learning using it then I would really recommend reading this book. I just hoped that the book would have more pages, talk about Irrlicht coding style, collisions and this book would have been perfect.


My score:

4/5

An excellent book for beginners


Pro/cons:

Pro:

  • Simple and easy to read
  • Explain really well how to use the library and start something out of Irrlicht
  • Has even some examples that show how to use external tool with the engine
     

Cons:

  • Don't talk about how to code "Irrlicht" style
  • No talk about how to manage collisions