Reviews
Feb 16, 2011

OGRE 3D 1.7 Beginner's Guide Review

Every developer knows creating 3D games from scratch isn't easy. However, when you use a 3D library, your life becomes quite a bit easier. OGRE 3D is one of those popular 3D open source libraries.

Because Packt Publishing has been really gearing on the 3D side of things lately, they released a beginner's guide on OGRE 3D entitled OGRE 3D 1.7 Beginner's Guide.

With only ten chapters in three-hundred pages, this may seem like a really simple beginner's guide, but it does pack a punch for what it offers. Let's get more into that in the full review below, shall we!

My Background with OGRE 3D

I cannot say, once so ever, that I'm the brightest developer at C++. My focus is geared towards Objective C, but I'm not completely clueless at the C++ language; I just don't use it too often.

I've used OGRE 3D only a couple of times to help a few friends out with their projects. I've created some of the same simple projects found in OGRE 3D 1.7 Beginner's Guide and found the overall library very easy to use.

What's Included

OGRE 3D 1.7 Beginner's Guide talks about a number of OGRE 3D's features. Let's list them out below:

  • Installing and setting up OGRE 3D
  • Creating scene nodes
  • Using cameras, lights, and shadows
  • Getting the user's input
  • Adding wireframes
  • Adding timers
  • Animating models
  • Managing scenes
  • Using static geometry to make rendering faster
  • Using materials and textures
  • Working with the compositor framework (like different views)
  • The OGRE 3D startup sequence
  • And more!

I know what you're thinking:  "All of that is very simple to an advanced 3D game developer," but this is a beginner's guide! Everything is kept very simple!

What an Amazing Book

The number one thing that I cannot say more than enough is that OGRE 3D 1.7 Beginner's Guide is really for beginners. Like myself, fairly new to OGRE 3D, I found it very easy to follow along with the book. Felix Kerger, the author, did an amazing job with the overall layout of OGRE 3D 1.7 Beginner's Guide. I was never lost on what I was reading, understood every bit and piece of it, and the language used is so easy to follow along with. It is, what I would call, an easy read.

Right in the very beginning of the book, he starts talking about high-level math like quaternions. He approaches the subject in a way that's very easy to understand, and in my mind, he explained it the best from what I've ever read before. No matter what 3D library/engine you'll be working with, it's guaranteed that quaternions will come into play.

With over 102 "What just happened?" sections in OGRE 3D 1.7 Beginner's Guide, he explains every single thing he changed and what was the cause of it. I really love the fact that he keeps this same repetition; typically repetition is bad, but in a beginner's book, following the same format is great to use as a reference guide later.

Not only does Felix explain every situation in an easy to understand manner, he also gives you twenty-one pop-quiz questions throughout the ten chapters; what a really nice touch! And of course, don't be peaking at those answers in the back - test yourself first!

Something that I personally always have a hard time with is setting up all of the cameras, shadows, and lighting effects. He spends and entire chapter on all of these topics to make sure you understand them. He made all of these features of OGRE 3D sound incredibly easy! Literally with just a few lines of code (compare to what would be needed in OpenGL), OGRE 3D gets the job done quickly and very efficiently.

In some of his "What just happened?" sections, he even refers to some external webpages for the reader to check out. In his "Writing a shader" section, his "What just happened?"section is fairly large. He started mentioning documentation from OGRE 3D's website and with this, the reader could reader could go more in-depth on what he was talking about.

As the ending approached, he started talking about particle effects and how they can be used to create a nice result. I was really hoping for an explosion to take off near boxes with a physics engine attached to it to see all these boxes fly in the 3D world!

Few Faults

There's really not too much I disliked from OGRE 3D 1.7 Beginner's Guide. Felix did an amazing job but there are some critical areas he did leave out, one of them being an user interface. At the very end of the book, he listed lots of ways to extend OGRE 3D's capabilities. Unfortunately, OGRE lacks any user interface library built in. He did cover one extension briefly called CEGUI. He never coved its features in the book and quite honestly, I think he really should of done that. If developers want to create a real game out of this, a user interface would be extremely important.

The last thing, that I personally thing would be a very fun topic for him to cover, would be a physics engine like the popular C++ library, Box2D. You could go without it, but I'm quite sure most readers would enjoy this chapter. Physics is so much fun to work with and one thing that I feel should be in every 3D game. If we're making games that live in a 3D world, we might as well give the world gravity!

Overall

Overall, I really enjoyed OGRE 3D 1.7 Beginner's Guide. It was written in a way that was easy to comprehend and follow along at the same time. You're not going to be typing thousands of lines of code every single chapter and it's just, for the most part, fun to work in the 3D world.

I have to give a hand over at Packt Publishing for once again letting me review one of their amazing books. I really enjoyed OGRE 3D 1.7 Beginner's Guide and if you're looking for a 3D library to use with your day-to-day C++ programming, pick up OGRE 3D 1.7 Beginner's Guide and install OGRE 3D!

Stalk me on social media! Any other way would just be creepy…