Preface - Getting Started with OUYA (2014)

Getting Started with OUYA (2014)


OUYA is the new video game console, announced in July 2012, based on the Android operating system.

Its main challenge is to be an alternative for independent developers and small businesses that do not have direct access to the major consoles in the market.

Its economy model is based on the freemium scheme, where all the games and content published on the console should have one free component and another that you can monetize.

Welcome to Getting Started with OUYA, a book that will guide you through the wonderful world of this console: its hardware, its configuration, how to build your first project for the console, and how to make money with it.

In the first three chapters, you will learn the general features of the console: origins, business model, technical prerequisites, and preparation of the development environment. In the next four chapters, the book explains the code base used to build video games for OUYA using the Unity3D engine Version 4.x. The last chapter shows the technologies that are being developed for the near future and that directly or indirectly impact the development and advancement of the console: Leap Motion, VR Oculus Rifts, and Arduino, among others.

The aim of this book is to let the reader know all the requirements and the basic tools to start your game development projects for the OUYA console.

To facilitate learning and practice during the course of this book, we will use a Lite version of our (the authors') project, THE LAST MAYA, a video game based on the mythological Mayan culture and the end of the world.

What this book covers

Chapter 1, Why OUYA?, describes the origins of the project, the company, and its business model and gives an overview of the types of content that can be published in the console.

Chapter 2, Setup Prerequisites, shows the readers all the technical prerequisites and basic configurations to prepare the development environment for Android.

Chapter 3, Setup Instructions for the OUYA ODK, explains how to create a new developer account on OUYA's site, how to download and install the SDK development environment for OUYA (the ODK), and how to configure the emulator.

Chapter 4, Guidelines for Setting Up the OUYA ODK, explains the contents of theODK, installation and configuration of the ODK plugin to Unity3D, the starter kit, and common mistakes that can be made when starting a development project for the console.

Chapter 5, Configuring the Controllers, explains how to start our first project for the OUYA console and goes over the basic configuration of the main scene and the main character, their animations, and how to associate them with controls.

Chapter 6, The OUYA Marketplace, explains how to program the monetization of our video games using the integration features for OUYA's marketplace.

Chapter 7, Advanced OUYA Functions – Graphics and Controls, explains all the basics that readers need to know to optimize the graphics of their games, leveraging the capabilities of the TEGRA 3 graphics processor by Nvidia.

Chapter 8, The Future, describes all the emerging technologies that will impact the development and advancement of the console.

What you need for this book

Download the 4.x Version of the Unity3D game engine from You should also download the SDK for OUYA (the ODK) from Moreover, you should have all the prerequisites for Android development.

Who this book is for

This book is for beginners and advanced programmers who want to build video games for the OUYA console. From beginners to advanced users, this book allows anyone to address various issues related to development projects for the OUYA console.


In this book, you will find a number of styles of text that distinguish between different kinds of information. Here are some examples of these styles, and an explanation of their meaning.

Code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles are shown as follows: "Open the c:\progs\ adt-bundle-windows-x86\sdk\extras\google\usb_driver\android_winusb.inf file with the Notepad editor or another text editor."

A block of code is set as follows:

;OUYA Console

%SingleAdbInterface% = USB_Install, USB\VID_2836&PID_0010

%CompositeAdbInterface% = USB_Install, USB\VID_2836&PID_0010&MI_01

Any command-line input or output is written as follows:

adb kill-server

adb devices

New terms and important words are shown in bold. Words that you see on the screen, in menus or dialog boxes for example, appear in the text like this: "Run the MANAGE | NETWORK option and configure your Internet connection."


Warnings or important notes appear in a box like this.


Tips and tricks appear like this.