Hoe Ouya Gamedev te leren

De volgende generatie gameconsoles is er. Deze keer zijn de helden van de giganten (Sony, Microsoft en Nintendo) de echte microconsoles: minder krachtig, goedkoper en uitnodigender voor indie-ontwikkelaars. De superster van deze nieuwe familie gameconsoles is de Ouya.

In deze handleiding Leren werken, zullen we je kennis laten maken met het Ouya-platform en zijn mogelijkheden, koppelingen delen met bronnen en enkele suggesties presenteren om je te helpen ermee spellen te ontwikkelen.

gerelateerde berichten
  • Eenheid leren
  • Hoe UDK te leren
  • Hoe XNA leren
  • Leren LÖVE (Love2D)
  • Hoe leer je Flash en AS3


Wat is een Ouya?

De Ouya is een kleine (Rubik's cube sized) gameconsole die het resultaat is van een succesvolle Kickstarter-campagne met een recordtijd. Hoewel het op Android draait, is het ontworpen om op je tv te worden afgespeeld, terwijl je op de bank zit met een controller in je hand.

Het beschikt over een goede 3D-hardwareversnelde grafische processor en HD-video die geschikt is voor uw tv met groot scherm, maar is lang niet zo krachtig als de gameconsoles van dit jaar. Het is ongeveer net zo krachtig als een high-end tablet. Het kost ongeveer $ 100, en elke eenheid wordt geleverd met een SDK (Software Development Kit). Deze machine smeekt om te worden gespeeld met - niet alleen door gamers, maar door game-ontwikkelaars.


In plaats van te proberen te concurreren op ruwe paardenkracht en fotorealistische 3D-graphics, is de aantrekkingskracht van de Ouya de lage prijs, eenvoud van ontwerp en moderne consumentencultuur: het omvat freeware en freemium-spellen, waardoor een shareware-achtige demo-ervaring of gratis games mogelijk zijn inclusief moderne IUAP (in-app-betalingen). Dit betekent dat elke game op de Ouya gratis kan worden gespeeld.


Wat maakt Ouya zo geweldig?

De Ouya belooft een open app-winkel die het mogelijk maakt dat zelfuitgegeven indieën spellen maken zonder een uitgever, dure hardware voor het oplossen van fouten of een uitgebreid proces van certificering, en heeft een enorme aantrekkingskracht op programmeurs en ondernemers. Daar is gelegenheid en weinig toetredingsdrempels.


Eenvoudig te ontwikkelen voor

Vanuit het oogpunt van een gamedev is de Ouya om verschillende redenen aantrekkelijk. Veel ontwikkelaars zijn al bekend met de ontwikkeling van Android-games, wat betekent dat de motoren, codebases en kennis die ze de afgelopen paar jaar hebben verzameld, hen op de grond zullen laten lopen. U hoeft niet op de eerste plaats te beginnen of een onbekende leercurve te beklimmen. Porteren van bestaande mobiele en webgames naar de Ouya zal eenvoudiger zijn. U kunt waarschijnlijk doorgaan met het gebruik van de tools waarmee u bekend bent. Ontwikkeling zal snel en goedkoop zijn.

Eenvoudig publiceren

Vanuit een zakelijk perspectief is het beroep minder zeker. Aan de ene kant zijn de voorheen "blauwe oceaan" winkel-ecosystemen van iOS en Android "rode oceaan" geworden (wat betekent: zeer concurrerend met slechts een klein percentage van de ontwikkelaars die een groot percentage van de totale winst genereren). Omgekeerd vertegenwoordigt de Ouya een "grote vis in een kleine vijver" -kans waar er zeer weinig concurrentie is.

Vanaf de lanceringsdag zijn er bijvoorbeeld minder dan 1000 games uitgebracht. Dit betekent dat elke gamedev die nu een game publiceert de vruchten zal plukken van een early adopter tijdens de "goldrush" -fase. Het wordt gemakkelijker om in de schijnwerpers te komen omdat gamers minder games hebben om uit te kiezen. Hoge ontdekbaarheid gekoppeld aan weinig concurrentie is een groot voordeel.

Voors en tegens

Aan de andere kant is de vraag naar games door consumenten nog niet bewezen. Zullen mensen genoeg eenheden kopen om daar een gezonde economie te zijn? Hoewel de Kickstarter een doorslaand succes was en duizenden al vooraf bestelde eenheden bestelden, zijn het dan allemaal gamedevs? Het valt nog te bezien of de verkoopaantallen van Ouya-spellen hoog genoeg zullen zijn om het voor je volgende spel een goede zaak te maken.

Dat gezegd hebbende, niets is zeker, en voor veel kleine, één persoon, garage indie-gamedevs, kan de Ouya de enige woonkamer-gameconsole zijn waar ze games voor kunnen compileren.


Ouya Developer Console en prototype controller - foto door M.Taniguchi

Op zijn minst vertegenwoordigt de Ouya een paradigmaverschuiving in de consolegame-business. De opening van de ommuurde tuin. De democratisering van gamedev. Het omarmt de indie-beweging en zorgt voor zelfpublicatie. Het is misschien de perfecte locatie voor ontwikkelaars van indie-games die hun bereik willen uitbreiden buiten een krimpende of gevestigde markt, zoals game-portals en mobiele app-winkels..


Wat zit er onder de motorkap?

De Ouya heeft genoeg pk's om complexe 3D-werelden vol te maken met next-gen shaders en hoogpolige personages, maar het is niet in staat om mega-texturen, miljard poly-scènes uit te putten of massaal parallelle verwerking van fysica en animaties te gebruiken zoals te zien op de next-gen PS4 en Xbox One.

Voor pure verwerkingskracht is de Ouya niet zo snel als een desktopcomputer van topklasse. Het beschikt over de elegant ontworpen quad-core nVidia Tegra 3 T33-P-A3 CPU. Elk van de vier ARM Cortex-A9 MPCore (ARMv7-A architectuur) CPU-kernen werkt op 1,6 GHz, wat ongeveer dezelfde snelheid is als een high-end tablet. Het kan hardware decoderen van video- en audiostreams in de meest gebruikelijke formaten zoals H.264, MPEG-2 en 4, DivX 4/5, XviD HT, H.263, Theora, VP8, WMV, Sorenson Spark, Real Video en VP6.

In termen van grafische kracht werken de 12 kernen van de nVidia GeForce ULP op 520 MHz en zijn ze in staat om 12,48 GFLOPS te berekenen. Het is aan de taak om goede graphics te leveren, maar het zal niets zijn om over naar huis te schrijven. Het ondersteunt 1080p en 720p via HDMI.

Dit is geweldig nieuws voor Android-gamedevs die moe zijn van het ondersteunen van een tiental verschillende pixeldichtheden en schermformaten. Laat je spel de twee belangrijkste HD-resoluties ondersteunen en je bent klaar om te gaan.

Intern is er slechts 1 GB als DDR3-1600 SDRAM, wat betekent dat je voorzichtig zult moeten zijn dat je niet te veel geheugen nodig hebt als je game draait. Er is ook slechts 8 GB aan flash-opslagruimte, hoewel u een externe USB-drive kunt aansluiten. De console bevat ook een ethernetpoort voor verbinding met een bekabeld internet, 802.11 b / g / n Wi-Fi voor draadloze connectiviteit, Bluetooth, een HDMI-poort, een volledige USB-poort en een Micro-USB-verbinding, en ondersteuning voor 5.1-geluid.


De controller, die verschillende herontwerpen heeft ondergaan, is een typische gamepad met dubbele analoge sticks, een richtingspad en vier gezichtsknoppen. Gewoon voor de lol, ze zijn gelabeld O, U, Y en A. Er zijn ook de verwachte paren van achterbumpers en triggers. Het meest interessante aan de controller is dat het ook een touchpad in het midden van de controller bevat (die alleen de invoer van een enkele vinger kan accepteren). Dit zorgt voor allerlei interessante nieuwe interacties.

Een van de leukste aspecten van de Ouya-hardware is dat je van harte welkom bent om te sleutelen aan de internals. Zowel de console als de controller zijn afgedicht met standaard kruiskopschroeven en het gehele systeem is zo ontworpen dat het gemakkelijk uit elkaar te halen is. De firmware en het besturingssysteem staan ​​ook open voor hacking - u kunt uw apparaat vrijelijk rooten, een aangepaste Android ROM installeren of zelfs zover gaan dat u het voor uw eigen doe-het-zelfprojecten zoals robotica gebruikt.

Hoe zit het met het renderen van prestaties?

De $ 99 Ouya, die een fractie kost van wat moderne Android-tablets kosten, presteert ongeveer even goed als de beste apparaten van 2012. Dit betekent dat hoewel er genoeg GPU-pk's zijn om een ​​aantal zeer indrukwekkende grafische afbeeldingen te genereren, je niet kunt verwachten dit te noemen een beest van een gaming-rig in staat om oneindige polies in 1080p te duwen.

Om het expliciet te zeggen, kun je 3DMark benchmark-prestatienummers vergelijken: de Ouya-scores 4077, die de Google Nexus 7, die een 3551 scoorde, en iets achter Galaxy S III van Samsung, die een 5.076 scoorde, ver vooruit zijn. Sommige high-end duizend-dollar-tabletten van vandaag scoren boven de 10.000.

Het is echter interessant om op te merken dat het Ouya-team van plan is om een jaar- versie van de Ouya met nieuwere hardware in elke iteratie om gelijke tred te houden met de huidige technologie.


Je spel op Ouya krijgen

Game-inzendingen zijn een relatief pijnloos proces. De belangrijkste regel die je moet volgen, is dat elke game een gratis component moet hebben. Dit kan pure freeware, shareware-achtige games met gratis demo's of freemium-spellen met IAP betekenen.

De Ouya omvat niet Google Play of de Amazon Appstore; hoewel het Android 4.1 draait, zullen alle spellen echte Ouya-spellen zijn (met ondersteuning voor de controller). Je kunt geen andere Android-apps uitvoeren die zijn gemaakt voor tablets of telefoons - en niet zonder reden: voor deze spellen is meestal een apparaat met touchscreen vereist. Hoewel de controller van de Ouya aanraakinvoer mogelijk maakt in de kleine ruimte tussen de richtingsknop en de gezichtsknoppen, heeft deze niet dezelfde precisie als een grote tablet met aanraakbediening.

Om een ​​bestaand Android-spel naar Ouya te porteren, of om er een helemaal van te maken in de hoop om het in de Ouya-winkel te maken, hoef je alleen maar de betalings-API van Ouya in te voeren, de Ouya-controller te ondersteunen en naar Ouya te sturen voor beoordeling. Alle game-aankopen worden gedaan via in-app-aankopen. Devs krijgen 70%, Ouya krijgt 30%. Alle spelers hebben een bankpas of creditcard nodig die is aangesloten op hun account, zelfs om gratis spellen te downloaden.

De downloadgrootte van het eerste spel (het .apk-bestand) moet 750 MB of minder zijn. Als een game extra bestanden of items vereist, moeten deze worden geleverd via uw eigen servers.

Je hebt drie of meer JPG-screenshots nodig, 1280x720 of beter voor inzending. Apps moeten worden ondertekend voordat ze worden verzonden. Er is een handtekeningsleutel (key.der) die de OUYA-ontwikkelaarsconsole u geeft om in-app-aankopen te ondertekenen.

Het beoordelingsproces is uiterst eenvoudig en gestroomlijnd. De meeste games worden binnen enkele uren en niet dagen door het personeel goedgekeurd. Het enige waar ze op letten is inbreuk op het auteursrecht, niet-spellen of materiaal voor volwassenen. Dit is geen ommuurde tuin met een Apple-stijl en beheerde inhoud: bijna alles kan. Goed of slecht, als je spel "werkt" en niet illegaal is, zul je hoogstwaarschijnlijk worden goedgekeurd.

Er zijn enkele gezond verstand regels die dicteren wat je wel en niet in de winkel kunt publiceren. Dingen die niet zijn toegestaan, zijn onder andere:

  • Haattoespraak
  • Echt geweld
  • Seksueel expliciete inhoud
  • Misrepresentatie (van je spel of jezelf)
  • Intellectuele eigendomsinbreuk
  • Gevaarlijke producten: malware, enz.
  • Illegale activiteiten
  • Misbruik van het OUYA-handelsmerk
  • Gokken met echt geld

Omdat deze open benadering titels van mindere kwaliteit in het ecosysteem mogelijk maakt, gaan alle nieuwe games naar wat de "Sandbox" wordt genoemd. Zodra gamers je titel voldoende "thumbs up" geven, of genoeg games hebben gespeeld of de totale speeltijd hebben gespeeld, zal het hogerop komen te staan ​​en krijgt het de schijnwerper die het verdient.


Ontwikkelen voor Ouya

Het goede nieuws is dat de ouya Android draait. Dit betekent dat honderden game-engines, IDE's en SDK's ongewijzigd zullen werken. U bent vrij om uw gereedschap naar keuze te kiezen. Als het kan worden gecompileerd naar een APK (en op voorwaarde dat u de JNI-interface kunt gebruiken om de Ouya-betalings- en controller-API's te integreren), kunt u dit waarschijnlijk gebruiken.

Dit betekent dat je Corona, Game Maker, MonoGame, Unity en vele anderen kunt gebruiken. Plug-ins voor veel andere populaire tools (zoals Phonegap en CocoonJS voor HTML5 gamedev) zijn in de maak en ondersteuning voor Ouya is aangekondigd voor tientallen game-engines tot nu toe.

Het Ouya dev-team heeft code, voorbeelden en documentatie voor de meest populaire tools opgesteld:

  • Adobe AIR
  • Corona
  • Spellenmaker
  • MonoGame
  • Eenheid

Veel andere game-engines ondersteunen Ouya, maar maken geen deel uit van de ODK. Bijvoorbeeld:

  • LibGDX - een prachtige open source cross-platfrom (Desktop, Android, iOS, WebGL) Java 2D / 3D game-ontwikkelingsraamwerk
  • CocoonJS - een native-code (openGL ES) -wrapper voor HTML5 canvas / webGL - sneller dan een standaardwebview

Als u niet weet welke engine u moet gebruiken, begin dan met Unity. Het wordt de meest ondersteunde, meest actuele en populairste tool met de grootste community. Dat gezegd hebbende, of je je home-brew game-engine port, iets open source gebruikt, of het helemaal opnieuw schrijft met Sublime Text, Eclipse of Notepad ++, als je het op andere Android-apparaten kunt laten werken, zou je je game moeten kunnen spelen op de Ouya.

Hoe zit het met HTML5?

Omdat je HTML5 (javascript / canvas) -games kunt omzetten in een Android .APK met tools als Phonegap, Appcelerator of cocoonJS, zal binnenkort ook een overvloed aan HTML5-game-engines op de console draaien, zoals ImpactJS, Construct2, createJS , evenals grotere (Turbulenz) en kleinere (JAWSJS) motoren in overvloed.

Sommige van deze HTML5-engines zijn nog niet uitgebreid getest op de Ouya - verwacht groeipijnen en slechte prestaties voor de komende paar maanden totdat de technologie volwassen is.

Potentiële Gotchas

Hoewel u zich in elke gewenste taal kunt ontwikkelen, bevindt de meeste van de ODK-broncode zich in Java en zelfs in het geval van engines die de code voor u genereren, zal de Ouya-ontwikkelingskit interfacen via JNI (Java Native Interface) en zal gebruik maken van de Android SDK. Je zult waarschijnlijk een "lijmcode" van Java moeten schrijven, zelfs als je het grootste deel van het spel codeert in C ++ of C #.

Bij de lancering is er geen ingebouwde prestatie, vriendenlijst of leaderboard-ondersteuning, maar dit zal naar verwachting in de nabije toekomst worden geïmplementeerd.

Vergeet niet om controller "dode zones" voor de analoge sticks toe te staan. U moet waarden in de buurt negeren 0 zodat de hoofdpersoon van je spel niet langzaam in een richting afdrijft wanneer de joysticks worden losgelaten (omdat ze nog steeds een kleine richtingswaarde kunnen registreren). Hier is een geweldige tutorial over het doen van de juiste thumbstick-dode zones.

Maak het werkelijk duidelijk welk menu-item is geselecteerd - sommige lanceringsgames markeren knoppen niet duidelijk genoeg, misschien omdat tablets en telefoonversies slechts enkele centimeters van uw ogen worden gehouden. Couch-gaming op tv vereist veel grotere lettertypen en een hoog contrast in vergelijking. Lettergroottes die geschikt zijn om vanaf een afstand van tien voet op een tv te lezen, zien er waanzinnig groot uit op de monitor van uw pc.

Vergeet niet om selectie toe te staan ​​met de directionele pad en de linker analoge stick, niet alleen met de touchpad. In die zin is het ook belangrijk om Ouya-specifieke knopnamen en afbeeldingen te gebruiken in plaats van die welke op voorraad zijn op Android-apparaten. U kunt een zipbestand downloaden met knopafbeeldingen voor gebruik in uw games.


Een game maken die geschikt is voor tv biedt extra uitdagingen, waarvan sommige niet vaak een rol spelen bij de ontwikkeling van Android-tablets of -telefoons. U moet bijvoorbeeld voorkomen dat u tekst of GUI tegen de randen van het scherm plaatst, wat voor ontwikkelaars van pc's en tablets totaal vreemd zal lijken, waarbij het vanzelfsprekend is om scores en statusbalken helemaal bovenaan te dokken en dialoogkeuzes of bijschriften alle manier onderaan het scherm.

Dit is belangrijk omdat het gebruikelijk is dat televisies de randen van het scherm afsnijden. Dit wordt soms "overscan" genoemd. Dit betekent dat u bij het ontwerpen van uw gebruikersinterfaces een buffer van 10% tot 20% aan de randen van het scherm moet toestaan. Deze buffer wordt vaak de "veilige zone" genoemd en heeft al problemen veroorzaakt voor Ouya ontwikkelaars.


Bronnen voor ontwikkelaars

Er zijn van tijd tot tijd veel fansites en bloggers die op de consument zijn gericht en Twitter-accounts de moeite waard, maar de primaire focus van dit artikel is het maken van games. Het handigste van de onderstaande links vereist dat je je aanmeldt voor een dev-account bij Ouya, waar je toegang krijgt tot de SDK, documentatie en ontwikkelaarsforums..

Op deze links vindt u de meest grondige en actuele informatie.

  • Ouya Developer's Area
  • Downloaden van de ODK (Ouya Development Kit) -software
  • Ouya ODK-documentatie
  • Regels voor wat je wel en niet in games kunt opnemen
  • Merkgids (foto's van de hardware en logo's)
  • Interface richtlijnen
  • Veel Gestelde Vragen

Ouya op Github

Het Ouya-team heeft de meerderheid van de consolesoftware open source, waaronder de vele SDK-voorbeeldprojecten, de Linux-kernel, de image- en downloadbibliotheek, de Unity-plug-in en nog veel meer. Zorg ervoor dat u van tijd tot tijd terugkijkt om te zien welke andere broncode-goodies beschikbaar komen.

  • github.com/ouya

Ouya op het web

Hoewel sommige van deze links consumenten (gamers) zijn, kunnen ontwikkelaars ook profiteren van het bijhouden van het laatste Ouya-nieuws, updates en game-releases op alle sociale netwerken. in het bijzonder zijn de ouya Developer forums een essentieel wapen in je arsenaal.

  • Ouya-ontwikkelaarsforums
  • Aankondigingen Forum Thread
  • De Ouya-blog
  • Ouya op Google+
  • De Ouya-subreddit: reddit.com/r/ouya
  • Ouya's Facebook-pagina
  • @playouya op Twitter - de bedrijfsfeed.
  • @OUYASupport op Twitter - support tickets en advies
  • @bawbmills op Twitter - ontwikkelaarrelaties kattenliefhebber

Niet-officiële fora en inhoud

Er is minstens één grote speler in de Ouya-gemeenschap die de moeite van het bekijken waard is - de Ouya (Fan) -forums. Het werd gemaakt voordat het Ouya-team hun eigen discussieforums had opgezet en heeft een breder scala aan onderwerpen die verder gaan dan gamedev.

  • Ouya-forums
  • @OUYA_Forum op Twitter
  • Alle 700+ lanceringsgames vermeld!

Duik erin en begin met leren!

De kansen voor Indie-gamedevs die zich willen richten op het Ouya-platform zijn veelbelovend. De kosten maken het een klein risico, en omdat het op Android werkt, bent u mogelijk al bekend met de hulpmiddelen die nodig zijn om uw game te laten draaien. De winkel is wijd open. De tools zijn gratis. De Goldrush-fase van de eerste Adopter is ingesteld om te beginnen. Wat moet je verliezen? Geef Ouya gamedev een kans. Je zult het misschien leuk vinden.

Dit artikel krast slechts het oppervlak. Het is bedoeld om u een voorsprong te geven in uw Ouya gamedev-experimenten door u te wijzen op enkele van de beschikbare bronnen. Als levend artikel dat werd gepubliceerd op de dag dat het werd gelanceerd, zijn we van plan in de toekomst nieuwe links en informatie toe te voegen.

Als u kennis hebben van Ouya tutorials, devblogs, podcasts, video's of documentatie die specifiek van toepassing kunnen zijn op game-ontwikkelaars, laat het me weten in de comments zodat ik ze aan het artikel kan toevoegen.