Getting Started with OUYA (2014)
Chapter 1. Why OUYA?
OUYA was officially announced on July 10, 2012, on the Kickstarter web portal. The project began with a funding goal of 950,000 USD to develop the console prototype. The project was financed by Kickstarter backers (this is the term that Kickstarter uses to refer to users who sponsor a project). Within 24 hours, they had already raised more than 2 million USD. By the end, they had reached 8.5 million USD. This makes OUYA one of the most popular projects launched on Kickstarter.
In December 2012, the creators began delivering developer versions of the console. The launch of OUYA through Kickstarter was an innovative way to raise funds for financing. The first units were sent out to backers on March 28, 2013. After some delays, the console was thrown open for purchase to the general public on June 25, 2013.
OUYA's Kickstarter crowdfunding campaign
The publishing system used by major video game companies was one of the motivations behind the OUYA project becoming a reality. The big companies monopolize the market for video games, and independent developers need to pay a lot of money to publish their creations. OUYA changed this situation, allowing small developers to publish their work directly to final buyers without having to pay large sums of money to the big video game publishing companies.
The official website of the company is http://www.ouya.tv.
The OUYA system has the following technical specifications. The developer versions may vary slightly, but the retail OUYA console has the following standardized specifications.
The specifications of the OUYA console unit are as follows:
· It has a NVIDIA Tegra 3 (T33) processor (four cores). The processor is optimized for graphics processing and web browsing. It has a CPU clock speed of 1.6 GHz and a GPU clock speed of 520 MHz. Because it doesn't have to worry about battery life, OUYA runs this processor at the full clock speed all the time.
· Optimized for video games with high graphical quality, including the reproduction of video in 1080p HD.
· 1 GB LPDDR2 RAM.
· 8 GB internal storage (expandable by means of an external hard disk via USB). Only approximately 6 GB of memory will be used. The remaining memory will be used by the Android and the OUYA OS. A 16 GB version has also been launched recently.
· HDMI connection to TV to 1080p HD (one connection).
· LAN Ethernet connection via an RJ45 port.
· Wi-Fi 802.11 bgn.
· Bluetooth 4.0 LE.
· USB 2.0 (one port). This is the port where components such as mice, keyboards, and storage can be hooked up to. It is sometimes called the inbound USB port.
· Micro USB (one port). This is the port that you should use for hooking OUYA to your computer for development purposes. It is sometimes called the outbound USB port.
The OUYA pack
The specifications of the OUYA controller bundled with the console are as follows:
· A wireless controller with a radio frequency of 2.4 GHz. This uses a standard Bluetooth connection.
· A standard game controller layout (two analog joysticks, D-pad, eight action buttons, and one system button).
· A touchpad, so that mobile games that are ported onto the system can be played more easily.
· Battery operated; needs two AA batteries to power it.
· OUYA supports up to four controllers, as shown in the following diagram:
The control pad
The default software specifications of OUYA are as follows:
· Android operating system 4.1 Jelly Bean
· Custom TV UI
· It has an integrated storage, which allows us to search and download games (and other applications)
· Includes the SDK for development (OUYA ODK), which is available online for download
OUYA is more than a console – it's a business model
The console is the beginning of an ecosystem of businesses that want to leverage e-commerce systems with the aid of the "micro" transactions system.
Video games are the category leader of the applications market, beating competition from categories such as entertainment, utilities, and productivity according to the trends of software consumption in the information era.
The OUYA console is based on a system of monetization of games, referred to as the Freemium system, where the business model operates and consists of offering free basic services, combined with the option of purchasing additional items.
The owner of a game published via the console has the opportunity to generate money in the following ways:
· Selling the complete version of the video game (an unlocked version of the game or a version that has some restrictions removed)
· Selling worlds or levels
· Selling elements of the inventory, such as clothes, weapons, shields, and special powers
The following variables are monitored in a Freemium business model:
· Daily Active Users (DAU)
· Monthly Active Users (MAU)
· Index, which combines Daily Active Users versus Monthly Active Users
The OUYA portal offers some basic level of analytics for developers, such as downloads and purchases.
OUYA – content restrictions
The company is very clear about the type of content that is permitted on the OUYA system. Explicit content is not permitted, including the following:
· Any content promoting hatred toward a person or a group of people for their race, ethnicity, religion, disability, gender, age, sexual orientation, or gender identity
· Any content that promotes violence in the real world, in any form
· Sexually explicit material is forbidden in the contents of the console and their applications
· Content that infringes on any copyright; the creators of the content must respect intellectual property and third-party copyright laws, including patents, marks, commercial secrets, and laws of authorship and others laws of property that are guarded
· Viruses, worms, malware, or any other items that may harm the gamers or the OUYA platform
Marks or branding
You can utilize the OUYA name, logo, and commercial mark, but you must respect that they are the intellectual property of the company, for which they should receive credit.
OUYA has an official manual of corporate identity that should be used. You can find it at https://www.ouya.tv/brand-guidelines/.
The corporate logo
Content scope, applications, and social networks
Besides the OUYA store, there are various media outlets, applications, and social networks that players and developers can use to reach out and make their games and content more popular. Some of these applications and networks include XBMC, TwitchTV, Onlive, VEVO, PLEX, and Crunchyroll, and we will learn about them in detail in the following sections.
The XBMC media center is an open source multimedia entertainment platform under the GNU GPL license. Its official website is http://xbmc.org/.
TwitchTV is an original service where players enjoy sharing their games with other users. It also offers its own chat tools and channels. This website has been functioning since 2011. In November 2012, Planet Side 2 was released, the first game that natively supports TwitchTV capabilities, but many others are coming. This can be a fun tool to show others your skills in various game types. Its official website is http://www.twitch.tv/.
Onlive is a video game distribution system that allows rental on demand (this means that you can rent the game for a few days or up to three years). This service is equivalent to cloud computing in the game industry, with the game being computed, rendered, and stored online. Onlive does not officially support OUYA, but you can get it to work by sideloading the APK on your system. Its official website is http://www.onlive.com/.
VEVO is a music video site owned by Sony Music Entertainment, Universal Music Group, Abu Dhabi Media Company, and Arthur Music Company. EMI Music has given them the license to reproduce its content. Its official website is http://www.vevo.com/.
PLEX is a media center that lets you organize the library of movies, series, and music. We can play it from the OUYA console and create a system of positive feedback for all the items related with high-level interactive content. Its official website ishttp://www.plexapp.com/.
Crunchyroll is an American website and international online community focused on streaming media such as anime, manga, music, video games, and racing from East Asia. Its official website is http://www.crunchyroll.com/.
The important point is that you have software and services that attract users. The OUYA development company is in talks with Hulu, Netflix, Amazon, and Google for their services.
Development tools to build video games for OUYA
In this section, we'll take a look at some of the developer tools for the OUYA system.
Adobe AIR is a free development framework and platform to create games and applications for mobile devices; it allows developers to create games for the OUYA console as it allows the creation of native applications for Android.
Download the software from http://www.adobe.com/devnet/air/air-sdk-download.html.
The official documentation for OUYA can be found at https://devs.ouya.tv/developers/docs/adobe-air.
Download the examples for OUYA from https://github.com/ouya/ouya-sdk-examples/tree/master/AdobeAir.
Android SDK/NDK (Java or C language)
The Android SDK is a free development framework based on Java that allows developers to make games using development IDEs such as Eclipse. The Android native development kit (NDK) is an alternative development framework that is free and allows you to develop native applications using the C or C++ programming languages.
It is worth mentioning that in an application written with NDK, you may need to use the Java Native Interface (JNI) to make use of only the used functions from Java.
Download the software (Android SDK / Android NDK) from http://developer.android.com/sdk/index.html or http://developer.android.com/tools/sdk/ndk/index.html.
The official documentation for OUYA can be found at https://devs.ouya.tv/developers/docs/android.
Download the examples for OUYA from https://github.com/ouya/ouya-sdk-examples/tree/master/Android.
The Corona SDK can be used for all types of mobile developers, from beginners to those with advanced knowledge of programming. It is a framework and SDK to develop games on the Android platform and OUYA. It also allows us to blend HTML5 with OpenGL or to use enterprise features such as access to a SQLite local database, JSON libraries, and asynchronous HTTP connection to store data in the cloud.
The official documentation for OUYA can be found at https://devs.ouya.tv/developers/docs/corona.
Download the examples for OUYA from https://github.com/ouya/ouya-sdk-examples/tree/master/Corona.
GameMaker is based on an interpreted programming language and software development kit (SDK) to develop video games. The program is designed to allow its users to easily develop games without having to learn a programming language such as C++ or Java.
The program is free. However, there is an extended commercial version with additional features.
Download the software from http://yoyogames.com/gamemaker/download.
The official documentation for OUYA can be found at https://devs.ouya.tv/developers/docs/game-maker.
Download the examples for OUYA from https://github.com/ouya/ouya-sdk-examples/tree/master/GameMaker.
MonoGame is an open source implementation of Microsoft's XNA platform. The goal when developing games using this framework is an additional way to create games and applications for iOS, Android, and Windows Phone 8; Mac OS X, Linux, and Windows 8; and OUYA and PlayStation.
The official documentation for OUYA can be found at https://devs.ouya.tv/developers/docs/mono-game.
Download the examples for OUYA from https://github.com/ouya/ouya-sdk-examples/tree/master/MonoGame.
Unity3D is a platform game engine that works as a development environment that supports OUYA. In the web console, developers can find documentation on how to prepare Unity to work with the console, and the ODK includes the files needed to integrate Unity with OUYA libraries. We also have to consider that programming for Unity is based on scripting, and for that we can use UnityScript languages such as C# or Boo.
Among the engine options for video games development, Unity3D has the highest quality and technical support. In addition to the many applications, development kits, and source code that the Asset Store has, it can also be used to get useful material for projects and development on multiple platforms.
Unity3D is available as a development platform for the Windows and Mac operating systems, and allows you to create games for Windows, iOS, Linux, Xbox 360, PlayStation 3, Wii, Wii U, iPad, iPhone, Android, and OUYA (actually). Thanks to the Web plugin that comes with Unity3D, you can also develop games for Windows and Mac browsers.
In the following chapters, we will walk you through the process of downloading and installing Unity3D for creating the practice applications and examples mentioned in this book.
Download the Unity3D software from http://unity3d.com/unity/download/.
The official documentation for OUYA can be found at https://devs.ouya.tv/developers/docs/unity.
Download the examples for OUYA from https://github.com/ouya/ouya-unity-plugin.
In this chapter, we learned how to start a new project, the technical specifications of the console (hardware and software), the contents that are not allowed to be published on the console, and the main development tools that are currently available in the market.
Also, we mentioned the key applications and online platforms that are currently available on the console.