Reviews
Nov 30, 2011

Unity 3.x Game Development by Example Review

Want to get yourself delved right into the 3D gaming world but never had the knowledge to do so? With Packt Publishing's recent release, Unity 3.x Game Development by Example Beginner's Guide by Ryan Creighton, it is a great read if you wish to get started in the Unity world.

If you have been following our reviews for quite sometime, you might of realized this is very similar to our previous Unity review we put out not too long ago. To keep the explanation simple, Unity 3.x Game Development by Example Beginner's Guide is an updated book especially for Unity 3.x. Not everything is all the same (like the writing), but the main parts of the book are very much the same, except edited for Unity 3.x. Some new topics have been added as well, so keep a watch out for that in the review!

Before I start the full on review, I have to give my gracious apologies to Packt on this one. I have always been very adept in reviewing their books, but this review took some more time as I have been bombarded with work for the past two months. Working on school work, physical work, and even client work is extremely hard to manage and when you throw all my other work into it (like writing for Tech Cores), it's near impossible to find the time. I should of planned this review better... so to Packt, sorry! I love you guys and never meant for this review to take so long.

Enough jibber-jabbin', let's just get on to the full review!

What You'll Get

Unity 3.x Game Development by Example Beginner's Guide has the similar outline compared to the previous version of the book, in fact, it's so similar you might as well base the outline on the previous version of the book as well. But to give you a general run down, a basic outline is below on what you'll get:

  • Learning the basics of Unity 3D
  • Possibilities of Unity 3D
  • Understand the essentials of 3D in Unity
  • Taking the built in physics engine to good use
  • Adding some sweet sound effects
  • Coding in JavaScript for Unity Scripts
  • Advanced topics like quaternions, mipmapping, and prefrabs

Those are just some of the many topics that will be introduced in Unity 3.x Game Development by Example Beginner's Guide. We'll be covering more parts of the book further in the review, but hopefully that little gist there will give you a feel for the book.

Introducing Unity 3D

For all of Packt's books on beginner's guides, the author always seems to introduce the topic in a very broad way. In Unity 3.x Game Development by Example Beginner's Guide written by Ryan Creighton, Ryan does an amazing job getting the reader understanding the main essentials of Unity all in the first chapter.

Just like in his previous Unity book, he introduced what has been done with Unity 3D before. As we all Unity developers know, there have been some amazing games developed using Unity, especially on the iOS platform.

Not only does Ryan introduce what can be done with Unity, he also describes what is feasible for a single developer (trust me, I've taken on near impossible tasks). As many of the projects he describes have over fifty developers dedicated to that one game, he states what is possible. But as reading Ryan's previous books, I know he likes to go the extra mile; he even gives recommendations on how to take a game you like that might take a year to develop yourself, and turn it into a nice mini-game that could take a month.

Unlike some other books I have read before on Unity, Ryan does not overwhelm you with introducing all of the features of the Unity interface in the first few chapters. Instead, he takes the "slow but steady" approach and disperses it throughout the book. This method is quite ideal for beginning Unity developers as you're not bombarded with a ton of information at the start of the book. In fact, Ryan does not even cover the 3D elements of Unity fully until the eighth chapter (there are a total of twelve chapters).

Examples are the Key

As most developers learn by example, having all kinds of examples in an Unity book is the key for success. A total of four games and three main concepts make up the main examples of Unity 3.x Game Development by Example Beginner's Guide. And as this book is updated for the latest version of Unity, Ryan also decided to add in an extra game from his previous Unity book. So in other words, you are getting a ton of examples in this book.

Ryan covers quite a bit within these examples, but I'll just list out the main concepts of each:

Ticker Taker (game) - a varient of the keep-up games

  • Learning on how to come up with a practical game idea
  • Adjusting the default lighting
  • Enabling the physics engine and adjusting its settings
  • Using the Unity interface to adjust key settings

Robot Repair (game) - a type of matching game

  • Understanding the built in GUI tools in Unity
  • Adding images and buttons to the game
  • Using title scenes and connecting them with the main game
  • Learning on how to use arrays the Unity way

Clock/timer (element) - many simple count-down timers

  • How to create a simple text clock
  • Upgrading that boring text clock to a progress bar
  • And taking that progress bar to a flash pie clock

The break-up (game) - very unique, more of a concept

  • Using animations from 3D models
  • Making flashy particle effects
  • Writing prefabs to use over and over again
  • Learning how to write Unity scripts to control multiple objects
  • Showing things dynamically on the screen

Shoot the Moon (game) - like space invaders but in 3D

  • Using all of the concepts from the previous games and taking them in one simple game
  • Displaying multiple cameras
  • Changing prefabs to dynamically use different models
  • Applying a custom mesh collider
  • Skinning a different game into an entirely different one

Yes, I know, there are a ton of things covered in a beginners book, but please don't let that scare you. With Ryan's funny writing style (the beginning of the book is really funny - take a read of a sample chapter!), it makes Unity 3.x Game Development by Example Beginner's Guide a smooth but informational read.

I can't say this enough, but Ryan did one heck of a job taking all kinds of different topics and putting them in an updated book. From the structure of the book all the way to explaining how the code works, everything will be covered eventually. Sometimes, the next part of the chapter will be later discussed in the book as Ryan added in additional chapters to help you get the more advanced parts in an easy manner. The entire flow of the book just feels right and is extremely easily to follow along with.

When the more advanced topics come up, like quaternions, Ryan really makes it a fun read without boring you with the technical aspects of it. As this is no professional book by any means, the meaning how things work exactly is not always needed.

Overall

I really enjoyed reading Unity 3.x Game Development by Example Beginner's Guide; as there is so much to be learned in this book, if you're dabbling in the thought of becoming an Unity developer, even if you may not know enough about programming, give Unity 3.x Game Development by Example Beginner's Guide a read. The entire layout of the book, the language used, and the content discussed is of the best I have ever read in a beginner's Unity book.

Overall, I give Unity 3.x Game Development by Example Beginner's Guide a huge recommendation to anyone who is interested in 3D development. Unity is always the best choice as it is extremely documented and you can always find some sort of help no matter the problem you run into. Ryan has compiled all the main topics in Unity into a book so well, that I couldn't put the book down most of the time; it is truly a great read. I was almost late to work one day because of it... yes, it's that good!

For more information on Unity 3.x Game Development by Example Beginner's Guide, feel free to check out the Packt Publishing website for the book below:

http://www.packtpub.com/unity-3-x-game-development-by-example-beginners-guide/book

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