OUYA Game Development by Example


Ouya Game Development by ExampleOuya Game Development by Example by Jack Donovan

My rating: 4 of 5 stars

I found this book very easy for beginners. Though having knowledge of unity3d is always going to be helpful. This book starts with an intro to hardware console itself. First chapter is dedicated to features of the OUYA device. If you own OUYA device then probably can skip this chapter, but otherwise author has tried to provide a good detailed feature description, so that you can learn about OUYA hardware and features available in it.

Chapter 2 is completely dedicated for setting up Unity3D and installing core development toolchain like Java, Android SDK, ODK and configuring connections. Author took around 15 pages to explain everything for both MacOS X and Windows platform and also a quick intro about building and exporting OUYA packages. So far all slow paced and nicely written.

Real action starts from Chapter 3, in which author walkthrough to first OUYA application and towards end make it to run on hardware itself.

Chapter 4 & 5 are for inputs mainly (both keyboard and touch) and taking action based on inputs. Making marble reacting to player’s input and then adding force based on touch dynamics and reading mouse positions in unity3d are some basic elements from these 2 chapters, which are not specific to OUYA, but since Unity3D maps buttons of OUYA controller with input schema, without any additional effort same game is being ported and author has explained it well. Chapter 6 focus on saving data for various game states and highlight OUYA API for the same.

Chapter 7 is dedicated for In App Purchases implementation, an important aspect for any game. While on OUYA every game has to be free to try, at the end every developer would want to add some sort of revenue generation model in game. This chapter guide how to implement purchase screen, make it function and unlock content / feature based on purchases etc. Also there are 2 pages towards end of the chapter which explains which model of monetization to be picked.

Chapter 8 is about polishing, packaging and submission. One of the key part, which is usually not found in many books like how to submit real product to app stores. Author took time to explain core screens, features, audio, camera actions and then how to export package and create game in developer portal.

Chapter 9 is the best part for any Unity3D beginner, even if you are not going to use it for OUYA. It explains about version control, various development methodologies like Agile, Waterfall. Also it covers basic design patterns considering projects with larger code base. Also to make complete use of Unity3D’s powerful UI features author has provided intro about shaders, particle effect, GUI skins and physics materials. This last chapter itself is enough for a reason to buy this book.

Disclaimer: I received a review copy of the book from Packt Publication. Though this review is not influenced by that. You can grab one from here

View all my reviews


My notes on Ruby on Rails


Recently I configured Redmine software at my work location for project collaboration. While installing and configuring that, I got impressed with Ruby on rails and though that I should really try my hands on RoR.

Though I have no intention to switch to RoR at the moment (even for next few months) and going to stick with PHP and Perl, learning RoR will help me for sure.

Since I have already used some MVC frameworks for Flex (actionscript), PHP and Java, I am comfortable with MVC design pattern. Also my perl knowledge should help me while learning RoR as Ruby got some similarities with perl.

I will be using this blog space for next few days to store and publish my notes and experience with Ruby on Rails.

Reason for writing notes in blog ? Well, first of all, I want to make it available for me anywhere I may need. Second, it may help someone else too or at least inspire to learn new things even when you are not going to use them for next few months in projects 🙂

Also while following Ruby on Rails tutorial and other resources over internet, I will be trying Git version control system (despite of the fact that Linus designed Git to be a content-addressable file system, Git now has full set of features of a SCM).

I’m a linux guy and currently running Ubuntu 9.10 (soon will be updating to 10.04), so my notes will be based on this OS. However, except the installation part, OS won’t be that much important.

I am not writing a book, but still I will try to follow some conventions (but can’t guarantee that I will follow them 100% :)).

  • All console output will be in italic grey
  • All commands which are entered into terminal will be in italic blue  
  • Any new parameter or command which need to be highlighted will be in italic blue with light sky background.
  • Any warning message will be posted in italic blue with yellow highlight.
  • Any error message will be posted in italic blue with light purple highlight.
  • Any command or step which involves risk (for instance rm my_dir -R -f), will be posted in bold yellow with red background.

So journey begins…