Slik lærer du Ouya Gamedev

Neste generasjon av spillkonsoller er her. Denne gangen, nippe på hælene til gigantene (Sony, Microsoft og Nintendo) er microconsoles: mindre kraftig, billigere og mer innbydende til indie spillutviklere. Superstar av denne nye familien av spillkonsoller er Ouya.

I denne veiledningsveiledningen presenterer vi deg på Ouya-plattformen og dens evner, deler lenker til ressurser og presenterer noen forslag for å komme i gang med å utvikle spill med det.

Relaterte innlegg
  • Slik lærer du enhet
  • Slik lærer du UDK
  • Slik lærer du XNA
  • Slik lærer du LØVE (Love2D)
  • Slik lærer du Flash og AS3


Hva er en Ouya?

Ouya er en liten spillkonsoll (Rubik's cube size) som er resultatet av en rekordbryter Kickstarter-kampanje. Selv om den kjører på Android, er den designet for å bli spilt på TVen din, mens du sitter på sofaen med en kontroller i hånden.

Den har en skikkelig 3D-maskinvare-akselerert grafikkprosessor og HD-video som passer for storskjerm-TV, men er nesten ikke så kraftig som årets neste spillkonsoller. Det er omtrent like kraftig som en high end-tablett. Det koster ca $ 100, og hver enhet leveres med en SDK (Software Development Kit). Denne maskinen ber om å bli spilt med - ikke bare av spillere, men av spillutviklere.


I stedet for å prøve å konkurrere med rå hestekrefter og fotorealistisk 3D-grafikk, er Ouya sin appell med sin lave pris, enkel design, og moderne forbrukerskultur: den omfatter freeware og freemium spill, noe som gir en shareware-lignende demo-opplevelse eller gratis spill som Inkluder moderne IAP (in-app-betalinger). Dette betyr at hvert eneste spill på Ouya vil kunne spilles gratis.


Hva gjør Ouya så fantastisk?

Lovende en åpen appbutikk som tillater selvutgitte indier å lage spill uten å trenge en utgiver, dyr debug-maskinvare eller omfattende sertifiseringsprosess, Ouya har stor appell til programmerere og gründere. Det er mulighet der, og få hindringer for oppføring.


Lett å utvikle for

Fra gamedevs perspektiv er Ouya attraktiv av flere grunner. Mange devs er allerede kjent med Android spillutvikling, noe som betyr at motorer, kodebaser og kunnskap de har akkumulert de siste par årene, vil la dem slå bakken. Du trenger ikke å starte på torget eller klatre opp en ukjent læringskurve. Å dele eksisterende mobil- og webspill til Ouya blir enklere. Du kan sikkert fortsette å bruke verktøyene du er kjent med. Utviklingen vil bli rask og billig.

Enkel publisering

Fra et forretningsperspektiv er klagen mindre sikker. På den ene siden har det tidligere "blue ocean" -butikken økosystemene i iOS og Android blitt "rødt hav" (som betyr: svært konkurransedyktig med bare en liten prosentandel utviklere som genererer en stor prosentandel av totalresultatet). Omvendt representerer Ouya en "stor fisk i en liten dam" mulighet der det er svært lite konkurranse.

For eksempel, fra lanseringsdagen er færre enn 1000 spill blitt utgitt. Dette betyr at enhver gamedev som publiserer et spill nå, kommer til å høste fordelene ved å være en tidlig adopter under "goldrush" -fasen. Det vil være lettere å komme i søkelyset fordi spillere vil ha færre spill å velge mellom. Høy oppdagelighet kombinert med liten konkurranse er en stor fordel.

Fordeler og ulemper

På den annen side har etterspørselen etter spill fra forbrukere ennå ikke blitt bevist. Vil folk kjøpe nok enheter for at det skal være en sunn økonomi? Selv om Kickstarter var en rungende suksess, og tusenvis har forhåndsordnede enheter, er de alle bare gamedev? Det gjenstår å se om Ouya spill salgstallene vil være høy nok til å gjøre målrettingen for ditt neste spill en sikker ting.

Når det er sagt, er ingenting en sikker ting, og for mange små, en person, garasje indie gamedevs, kan Ouya være den eneste stue spillkonsollen de kan kompilere spill for.


Ouya Developer Console og prototype controller - foto av M.Taniguchi

I det minste representerer Ouya et paradigmeskifte i konsollspillet. Åpningen av den inngjerdede hagen. Demedisering av gamedev. Den omfatter indiebevegelsen og gir mulighet for selvutgivelse. Det kan være det perfekte stedet for indie spillutviklere som ønsker å utvide sin rekkevidde utover et krympende eller veletablert marked som spillportaler og mobilappbutikker.


Hva er under hetten?

Ouya har nok hestekrefter til å gjøre komplekse 3D-verdener fylt med neste generatorer og høypolykarakterer, men det er ikke i stand til å pumpe mega-teksturer, milliarder poly scener eller bruke massiv parallell behandling av fysikk og animasjon som sett på neste generasjon PS4 og Xbox One.

For ren prosessering er Ouya ikke noe nesten like fort som en topp av stasjonær PC. Den har en elegant utformet quad-core nVidia Tegra 3 T33-P-A3 CPU. Hver av de fire ARMv7-A arkitektur-CPU-kjernene i ARM Cortex-A9 MPCore kjører på 1,6 GHz, noe som er omtrent like høy hastighet som en high end-tablett. Det kan maskinvare dekode video- og lydstrømmer i de fleste vanlige formater som H.264, MPEG-2 og 4, DivX 4/5, XviD HT, H.263, Theora, VP8, WMV, Sorenson Spark, Real Video og VP6.

Med hensyn til grafikkraft kjører de 12 kjernene til nVidia GeForce ULP på 520 MHz og kan beregne 12,48 GFLOPS. Det er opp til oppgaven å levere god grafikk, men det vil ikke være noe å skrive hjem om. Den støtter 1080p og 720p over HDMI.

Dette er gode nyheter for Android-gamedev som er lei av å støtte et dusin forskjellige pixeldensiteter og skjermstørrelser. Gjør spillstøtten de to store HD-oppløsningene, og du er god til å gå.

Internt er det bare 1 GB hvis DDR3-1600 SDRAM, som betyr at du må være forsiktig så du ikke krever for mye minne når spillet ditt kjører. Det er også bare 8 GB flash-lagringsplass, selv om du kan koble til en ekstern USB-stasjon. Konsollen inneholder også en Ethernet-port for tilkobling til et kablet internett, 802.11 b / g / n Wi-Fi for trådløs tilkobling, Bluetooth, en HDMI-port, en full USB-port og en Micro-USB-tilkobling, og støtte for 5.1 lyd.


Kontrolleren, som har gjennomgått flere redesigner, er en typisk gamepad med to analoge pinner, en retningsplate og fire ansikts knapper. Bare for moro skyld, de er merket O, U, Y og A. Det er også de forventede parene av bakre støtfangere og utløsere. Den mest interessante delen om kontrolleren er at den også inneholder en pekefelt i midten av kontrolleren (som bare kan akseptere en enkeltfingerinngang). Dette vil gjøre for alle slags interessante nye interaksjoner.

En av de mest morsomme aspektene ved Ouya-maskinvaren er at du er velkommen til å tinker med internalerne. Både konsollen og kontrolleren er forseglet med standard phillips skruer og hele systemet er designet for å være enkelt å skille fra hverandre. Fastvaren og operativsystemet er også åpne for hacking - du kan fritt rotere enheten, installere en egendefinert Android ROM, eller til og med gå så langt som å bruke den til dine egne DIY-prosjekter som robotteknologi.

Hva om rendering av ytelse?

$ 99 Ouya, som koster en brøkdel av hva moderne Android-tabletter koster, utfører omtrent like godt som de beste enhetene fra 2012. Dette betyr at selv om det er nok GPU-hestekrefter til å kjøre noen svært imponerende grafikk, kan du ikke forvente å kalle dette et dyr av en gaming rigger kan presse uendelige poler i 1080p.

For å si det eksplisitt, kan du sammenligne 3DMark-benchmark-ytelsesnumre: Ouya-scoreene 4077, som legger det foran Googles Nexus 7, som skårte 3551, og litt bak Samsungs Galaxy S III, som scoret en 5,076. Noen høyverdig tusen dollar tabletter i dag scorer over 10 000.

Det er interessant å merke seg imidlertid at Ouya-teamet planlegger å utvikle en årlig versjon av Ouya med nyere maskinvare i hver iterasjon for å holde tritt med dagens teknologi.


Få ditt spill på Ouya

Spillinnlegg er en relativt smertefri prosess. Den viktigste regelen du må følge er at hvert spill må ha en gratis komponent. Dette kan bety rene freeware, shareware-stil spill med gratis demoer eller freemium spill med IAP.

Ouya inkluderer ikke Google Play eller Amazon Appstore; Selv om det kjører Android 4.1, vil alle spillene være ekte Ouya-spill (med støtte til kontrolleren). Du kan ikke kjøre andre Android-apper laget for tabletter eller telefoner - og med god grunn: disse spillene vil vanligvis kreve en berøringsskjerm. Selv om Ouya's controller vil tillate berøringsinngang i det lille rommet mellom retningsplaten og ansiktsknappene, vil det ikke ha samme presisjon som en stor berøringsaktivert nettbrett.

For å portere et eksisterende Android-spill til Ouya, eller å opprette en fra grunnen i håp om å gjøre det til Ouya-butikken, er alt du trenger å gjøre, å innlemme Ouyas betalings-API, støtte Ouya-kontrolleren, og send den til Ouya for anmeldelse. Alle spillkjøpene gjøres via innkjøpskjøp. Devs får 70%, Ouya får 30%. Alle spillere trenger et debet- eller kredittkort knyttet til kontoen deres, selv for å laste ned gratis spill.

Størrelsen på startspillets nedlasting (.apk-filen) skal være 750 MB eller mindre. Hvis et spill krever flere filer eller eiendeler, skal de leveres via dine egne servere.

Du trenger tre eller flere JPG skjermbilder, 1280x720 eller bedre, for innsending. Apper må signeres før de sendes inn. Det er en signeringsnøkkel (key.der) at OUYA-utviklerkonsollen gir deg mulighet til å logge inn app-kjøp.

Gjennomgangsprosessen er ekstremt enkel og strømlinjeformet. De fleste spill er godkjent av personalet innen timer, ikke dager. Det eneste de ser etter er brudd på opphavsrett, ikke-spill eller voksent materiale. Dette er ikke en Apple-stil inngjerdet hage med kuratert innhold: nesten alt går. God eller dårlig, hvis spillet ditt "virker" og ikke er ulovlig på en eller annen måte, vil du sannsynligvis bli godkjent.

Det er noen vanlige sansregler som dikterer hva du kan og ikke kan publisere i butikken. Ting som ikke er tillatt, inkluderer:

  • Hatespråket
  • Vold i verden
  • Seksuelt eksplisitt innhold
  • Misforståelse (av spillet ditt eller deg selv)
  • Overtredelse av immaterielle rettigheter
  • Farlige produkter: malware, etc.
  • Ulovlige aktiviteter
  • Misbruk av OUYA varemerket
  • Real-money gambling

Fordi denne åpne tilnærmingen vil tillate lavere kvalitet titler i økosystemet, vil alle nye spill gå inn i det som kalles "sandkassen". Når spillerne gir tittelen nok "tommelen opp", eller det har hatt nok spillspill eller total spilletid, vil det bevege seg oppe i rekkene og vil bli gitt spotlighten det fortjener.


Utvikling for Ouya

Den gode nyheten er at ouya kjører Android. Dette betyr at hundrevis av spillmotorer, IDE og SDK vil fungere uendret. Du er fri til å velge ditt valgfrie verktøy. Hvis det kan kompilere til en APK (og forutsatt at du kan bruke JNI-grensesnittet for å inkorporere Ouya-betalings- og kontroller-APIer), kan du mest sannsynlig bruke det.

Dette betyr at du bør kunne bruke Corona, Game Maker, MonoGame, Unity og mange andre. Plugins for mange andre populære verktøy (for eksempel Phonegap og CocoonJS for HTML5 gamedev) er i arbeidet og støtte til Ouya har blitt annonsert for dusinvis av spillmotorer til dato.

Ouya dev team har utarbeidet kode, eksempler og dokumentasjon for de mest populære verktøyene:

  • Adobe Air
  • Corona
  • Game Maker
  • MonoGame
  • Enhet

Mange andre spillmotorer støtter Ouya, men er ikke en del av ODK. For eksempel:

  • LibGDX - en fantastisk åpen kildekode-plattform (Desktop, Android, iOS, WebGL) Java 2D / 3D-spillutviklingsramme
  • CocoonJS - en innledende kode (openGL ES) wrapper for HTML5 lerret / webGL - raskere enn en standard webview

Hvis du ikke vet hvilken motor du skal bruke, starter du med Unity. Det skal være det mest støttede, mest oppdaterte og mest populære verktøyet med det største samfunnet. Når det er sagt, om du sender inn din hjemmebrygging-spillmotor, bruk noe åpen kildekode eller skriv den fra grunnen ved hjelp av Sublime Text, Eclipse eller Notepad ++. Hvis du kan få det til å fungere på andre Android-enheter, bør du kunne få spillet ditt kjører på Ouya.

Hva om HTML5?

Fordi du kan slå HTML5 (javascript / lerret) spill inn i en Android .APK ved hjelp av verktøy som Phonegap, Appcelerator eller cocoonJS, vil en mengde HTML5-spillmotorer snart kjøres på konsollen også, for eksempel ImpactJS, Construct2, createJS , samt større (Turbulenz) og mindre (JAWSJS) motorer aplenty.

Noen av disse HTML5-motorer har ennå ikke blitt testet grundig på Ouya - forventer økende smerter og dårlig ytelse de neste månedene til teknologien matures.

Potensielle Gotchas

Selv om du kan utvikle seg på hvilket som helst språk du liker, er de fleste ODK-kildekoden i Java, og selv om det er motorer som genererer koden for deg, vil Ouya-utviklingssettet være grensesnitt ved hjelp av JNI (Java Native Interface) og vil gjøre bruk av Android SDK. Du må sannsynligvis skrive litt Java "limkode" selv om du koden flertallet av spillet i C ++ eller C #.

Ved lanseringen vil det ikke være noen innebygde prestasjoner, venneliste eller styrelederstøtte, men dette forventes å bli implementert i nær fremtid.

Husk å tillate kontrollerens "døde soner" for analoge pinner. Du må ignorere verdier i nærheten 0 slik at spillets hovedperson ikke kjører sakte i noen retning når styrespakene slippes ut (fordi de fortsatt kan registrere en liten retningsverdi). Her er en flott opplæring om å gjøre tommelfingeren til døde soner rett.

Klare det egentlig åpenbart hvilket menyelement er valgt - noen lanseringsspill markerer ikke knappene åpenbart nok, kanskje fordi tablett- og telefonversjoner holdes bare noen få inches unna øynene dine. Couch gaming på TV krever mye større skriftstørrelser og høy kontrast ved sammenligning. Skriftstørrelser som er egnet for å lese fra ti meter unna på en TV, vil se seg så stor ut på PC-skjermen.

Husk å tillate valg med retnings- og venstre-analog-pinne, ikke bare pekefeltet. Langs disse linjene er det også viktig å bruke Ouya-spesifikke knappens navn og bilder i stedet for de som kommer på lager Android-enheter. Du kan laste ned en zip-fil som inneholder knappbilder for bruk i spillene dine.


Å lage et spill som passer for TV, presenterer flere utfordringer, hvorav noen ofte ikke er en faktor i vanlig Android-nettbrett eller telefonutvikling. For eksempel bør du unngå å sette noen tekst eller GUI mot skjermkanten, noe som vil føle seg helt rart for PC- og tablet-devs, hvor det er naturlig å doktere og helsestang hele vei på toppen og dialogvalg eller bildetekster hele langt nederst på skjermen.

Dette er viktig fordi det er vanlig for TV-apparater å kutte av kantene på skjermen. Dette kalles noen ganger "overscan". Dette betyr at når du utformer brukergrensesnittene dine, bør du tillate en 10% til 20% buffer rundt kantene på skjermen. Denne bufferen kalles ofte "sikker sone", og det har allerede forårsaket problemer for noen nybegynnere Ouya devs.


Utviklerressurser

Det er mange fan nettsteder og forbruker-vendte blogger og Twitter kontoer verdt å sjekke ut fra tid til annen, men det primære fokus for denne artikkelen er å lage spill. De mest nyttige av linkene nedenfor vil kreve at du registrerer deg for en dev-konto hos Ouya, hvor du får tilgang til SDK, dokumentasjon og utviklerfora.

Disse koblingene er der du finner den mest grundige og oppdaterte informasjonen.

  • Ouya Developer Area
  • ODK (Ouya Development Kit) nedlasting av programvare
  • Ouya ODK Dokumentasjon
  • Regler for hva du kan og ikke kan inkludere i spill
  • Brand Guide (bilder av maskinvare og logoer)
  • Grensesnitt retningslinjer
  • ofte stilte spørsmål

Ouya på Github

Ouya-teamet har åpnet mesteparten av konsollets programvare, inkludert de mange SDK-eksempelprosjektene, Linux-kjernen, bilde- og nedlastingsbiblioteket, Unity-pluginet og mye mer. Husk å sjekke tilbake fra tid til annen for å se hvilken annen kildekode godbiter blir tilgjengelig.

  • github.com/ouya

Ouya på nettet

Selv om noen av disse koblingene er forbruker (gamer), kan devs også ha nytte av å holde rede på de nyeste Ouya-nyhetene, oppdateringene og spillutgivelsene på alle sosiale nettverk. spesielt, ouya Developer Forums er et viktig våpen i arsenalet ditt.

  • Ouya Developer Forums
  • Kunngjøringer Forum Tråd
  • The Ouya Blog
  • Ouya på Google+
  • The Ouya subreddit: reddit.com/r/ouya
  • Ouya sin Facebook-side
  • @playouya på Twitter - selskapets feed.
  • @OUYASupport på Twitter - støtte billetter og råd
  • @bawbmills på Twitter - utvikler relasjoner cat-lover

Uoffisielle forum og innhold

Det er minst en stor spiller i Ouya-samfunnet, vel verdt å sjekke ut - Ouya (Fan) Forums. Det ble opprettet før Ouya-laget hadde satt opp egne diskusjonsfora og har et bredere spekter av emner som går utover gamedev.

  • Ouya Forums
  • @OUYA_Forum på Twitter
  • Alle 700 + lanseringsspillene er oppført!

Dykk inn og begynn å lære!

Mulighetene for indie gamedev som ønsker å målrette mot Ouya-plattformen, er lovende. Kostnaden gjør det til en liten risiko, og fordi den kjører på Android, kan du allerede være kjent med verktøyene som kreves for å få spillet til å kjøre. Butikken er bred åpen. Verktøyene er gratis. Den tidlige adopter goldrush-fasen er satt til å begynne. Hva må du miste? Gi Ouya gamedev et forsøk. Du kan bare elske det.

Denne artikkelen raser bare overflaten. Det er ment å gi deg en start i Ouya Gamedev-eksperimentene ved å peke på noen av ressursene som er tilgjengelige. Som en levende artikkel publisert på dagen den lanserte, planlegger vi å legge til nye linker og informasjon i fremtiden.

Hvis du vite om noen Ouya-opplæringsprogrammer, devblogs, podcaster, videoer eller dokumentasjon som kan være spesielt nyttig for spillutviklere, vennligst gi meg beskjed i kommentarene, så jeg kan legge dem til artikkelen.