Kom igång Gör virtuella verklighetsspel i enhet 5 gratis

Kom igång Gör virtuella verklighetsspel i enhet 5 gratis / Gaming

Virtuell verklighet tar av sig på ett stort sätt Varför virtuell verklighetsteknik kommer att blåsa ditt sinne om 5 år Varför virtuell verklighetsteknik kommer att blåsa ditt sinne om 5 år Framtiden för den virtuella verkligheten innefattar huvud-, ögon- och expressionsspårning, simulerad beröring och mycket mer . Dessa fantastiska tekniker kommer att vara tillgängliga för dig om 5 år eller mindre. Läs mer - Valve, HTC, Samsung och Facebook levererar alla avancerade virtuella verklighetshårdvaror inom en snar framtid. På programsidan utvecklas dussintals stora studioer för den nya hårdvaran, och alla erkänner fritt att de inte har någon aning om vad de gör.

Den här guiden är tillgänglig för nedladdning som en gratis PDF. Ladda ner Kom igång Gör virtuella verklighetsspel i enhet 5 gratis nu. Känn dig fri att kopiera och dela med dig av dina vänner och familj.

Det är som DOM och Wolfensteins tidiga dagar igen. Ingen vet vad ett bra VR-spel ser ut, och fältet är öppet för indiestudior att bli stora spelare. Om du vill skapa videospel Start Skapa spel på nolltid med Unity3D Gratis start Skapa spel på nolltid med Unity3D Free Read More, det här är kanske den bästa möjligheten du någonsin måste göra ett namn för dig själv.

Så, låt oss säga att du vill bli involverad. Verktygen är mer användarvänliga än någonsin, och de är nästan alla lediga. Men var börjar du? Denna guide ger dig alla verktyg och information du behöver för att komma igång - helt gratis.

Redo? Låt oss ta itu med det.

Vad du behöver:

För att komma igång med att göra VR-spel behöver du bara tre saker:

  • Först behöver du ett VR-headset. Det bästa tillgängliga alternativet just nu är Oculus Rift DK2, som du kan köpa här för $ 350.
  • För det andra behöver du en relativt kapabel spel PC. VR är ungefär tre gånger mer intensiv än vanlig PC-spel, så du vill ha en kraftfull CPU och kort. Oculus rekommenderar en i5, en GTX 970 eller motsvarande och åtta gigabyte RAM.
  • En ny version av Windows 7, 8 eller 10.

Bortsett från det är allt annat du behöver gratis. När det gäller programvara använder vi oss av:

  • Unity 5 Personal Edition
  • GIMP (Gnu Image Manipulation Program)
  • SteamVR Unity Plugin
  • Primitiv Plus Unity Plugin
  • Oculus Windows Runtime

Ställa in dina verktyg

Låt oss börja med att få allt installerat. Ladda ner och kör installationsprogrammet för Unity och GIMP GIMP: Ett snabbt genomgång av allas favoritbildsredigerare för Open Source Image GIMP: Ett snabbt genomgång av allas favoritbildsredigerare för Open Source. Läs mer. Detta borde vara ganska självförklarande. När du öppnar Unity för första gången kommer du att uppmana dig att skapa ett konto: gör det och kom ihåg ditt användarnamn och lösenord.

Inside Unity, skapa ett nytt projekt (var noga med att skapa en “3D” projekt - inte “2D”). Ställ projektkatalogen i Mina dokument / Mitt projekt.

Använd nu din webbläsare för att gå till Unity Asset Store och logga in med samma uppgifter. Detta ger dig tillgång till utvecklingsverktyg och resurser. Använd länkarna Primitive Plus och SteamVR ovan, hitta paket och klicka på knappen Öppna i enhet i övre vänstra hörnet. Eftersom dessa är fria tillgångar behöver du inte betala för dem - andra kan inte vara lediga, så var försiktig. Följ anvisningarna som kommer upp och importera dessa paket till Unity. Du bör se nya mappar under undermenyn "Projekt". Det kan ta en minut för dem att ladda ner, var så tålmodig och stäng inte Unity tills de är färdiga.

Scripting in Unity

Enhet är extremt lätt att använda om du någonsin har programmerat förut. Om du inte är bekant med C #, spendera lite tid på att bekanta dig med syntaxen (prova den här utmärkta interaktiva handledningen). Om du aldrig har gjort någon programmering framför allt gör du också det här steget, och sedan spendera lite tid på att arbeta dig igenom pusselarna på Project Euler. Det här hjälper dig att bekanta dig med de typer av problem du ska hantera i programmeringen och vilken typ av problemlösning du behöver.

När du väl känner dig välkomna att lösa problem med C #, rekommenderar jag att du spenderar lite tid på att utforska Unity med hjälp av deras utmärkta nybörjarmanualer. Du kan också använda vår egen kraschbana till Unity Programming Ett spel med enhet: En nybörjarguide Programmering ett spel med enhet: En nybörjarguide I det utvecklande landskapet med indiespelutveckling har Unity framträtt som något av en de facto-standard: den låga kostnaden, användarvänligheten och den breda funktionen gör den idealisk för snabb spelutveckling. Läs mer . Jag ger korta förklaringar till alla komponenter jag använder, men det finns mycket värdefull information där som kommer att hjälpa dig bra när du försöker större projekt.

För att använda ett Unity-skript behöver du först ett objekt att bifoga det till. Inuti redigeraren kan du skapa 3D-objekt på ett av tre sätt.

  • Du kan importera dem som en del av ett paket.
  • Du kan dra filerna i mappen My Project / Assets.
  • Du kan skapa dem i redigeraren, via GameObject-menyn längst upp på skärmen - det här låter dig göra enkla primitiva former som kuber och sfärer, samt text och partiklar.

Om du importerar dem eller drar dem i aktivitetsmappen visas de i underfönstret "Projekt". Du kan lägga dem i spelet genom att välja fliken 'Scen' och dra dem på den. Du bör då se dem visas i världen. Kontrollväxlarna i övre vänstra hörnet gör att du kan skala, rotera och placera dem efter eget tycke. Objekt kan vara "föräldra" till varandra (orsakar att de roterar och rör sig ihop) genom att dra deras namn på varandra i fliken "Hierarki".

När ett objekt finns på scenen kan du bifoga ett eller flera skript till det. Dessa skript gör objektet till liv. De gör vapen eld, kulor rör sig, och karaktärer går och pratar.

För att lägga till ett skript, välj det objekt du vill kontrollera i fliken "Scen" eller "Hierarki". Fliken "Inspektör" ändras för att visa alla komponenter som är kopplade till objektet i fråga. Ett typiskt objekt kommer att se ut så här och innehåller några element:

  • Ett meshfilter låter spelmotorn veta vilken form objektet är.
  • En Renderer drar faktiskt objektet till skärmen.
  • En Rigidbody låter fysikmotorn veta att objektet existerar och definierar dess egenskaper.
  • En Collider definierar objektets fysiska gränser: du kan göra fysikberäkningar billigare genom att ge ett komplext objekt en enkel collider, som en låda eller en sfär.

Från fliken inspektör kan du lägga till ett nytt skript med knappen "Lägg till komponent" längst ner. Härifrån kan du antingen lägga till ett skript du redan har skapat, eller du kan skapa en ny. Ändra språket till "C #", skriv in det namn du vill ha och tryck "skapa". Detta lägger till ett nytt (tomt) skript till objektet. Dubbelklicka på skriptets namn på fliken Inspektör öppnar manuset i MonoDevelop, Unitys kodredigerare.

Inuti din nya fil ser du en "Start" och "Update" -funktion. 'Start' körs när objektet skapas först. Gör någon inställning du behöver där. "Uppdatering" kör varje ram, och är där det mesta av logiken ska gå.

För att komma åt objektets komponenter kan du skriva 'gameObject.Renderer,' gameObject.rigidbody ', etc. beroende på vilket element du vill kontrollera. Offentliga variabler som deklarerats innan startfunktionen kommer att vara synlig i redigeraren, vilket gör det enklare att tweak dem. För mer information om hur man interagerar med olika systemelement, kolla in Unity manualen.

Detta är ett enkelt skript som jag skapade som gör att ett objekt rytmiskt expanderar och kontrakt, baserat på en sinusvåg. Skapa en kub i Enhet, lägg till ett skript och kopiera manuset till "Uppdatera" -metoden. När du har sparat det och trycker på "play" -knappen i redigeraren, ska du se kuben expandera och contracting. Se till att "Camera" -objektet är placerat så att det kan se objektet!

Aktiverar VR-läge

Nu när vi har skapat en grundläggande Unity-scen, låt oss få den att visas på ditt VR-headset. Vi använder SteamVR-plugin, vilket kommer att göra både för Oculus Rift och HTC Vive när det så småningom släpps. Det är ett enkelt sätt att utveckla för båda.

På fliken "Projekt", gå till SteamVR-mappen och öppna underkatalogen "prefab". Du ser flera enheter redo för dig att använda. Dra Prefabs 'CameraRig' och 'SteamVR' till scenen. Dessa är redan inrättade med allt du behöver. Flytta dem till din scen (placerad vid samma punkt). Flytta dem så att de kan se kuben. Ta bort de ursprungliga (icke-VR) kamerobjekten - om mer än en aktiv kamera i en scen kommer att utlösa ett fel, eftersom Unity inte vet vilken du vill använda.

Nu, om du inte redan har installerat Oculus Windows Runtime, och anslut din DK2.

Starta om datorn. I systemfältet ser du Oculus-ögonlogotypen. Om du klickar på det får du möjlighet att öppna "Display Mode" -väljaren och konfigurationsverktyget. Ställ in visningsläget till "Direkt". Öppna sedan verktyget Oculus Configuration. Verifiera att du kan se demoscen. Om du inte kan, debug det här innan du fortsätter.

r / Oculus är en bra resurs för denna typ av sak. Demoscenen ska springa smidigt och spåra huvudets rotation och position, utan ryck eller dubbla bilder.

Om det inte fungerar korrekt kontrollerar du att kameran kan se dig och är korrekt ansluten. Kontrollera också att ditt grafikkort är tillräckligt kraftfullt och att du inte har intensiva program som körs i bakgrunden.

När du har verifierat att ditt VR-headset fungerar korrekt öppnar du enhet och trycker på avspelningsknappen. Den enkla scen vi har ställt in ska visas på ditt VR-headset! Grattis: du har just gjort din första VR-demo!

Gör ditt första VR-spel

Hittills, så enkelt - men det här är inte en särskilt imponerande demo. För att ge dig en smak av hur det är att göra ett mer involverat projekt, kommer jag att prata dig genom processen att göra ett fullt VR-arkadspel som jag redan har genomfört, berättigad AsteroidVR.

Detta är inte Skyrim, men det är ett komplett spel som du kan spela, med grafik och en komplett uppsättning mekanik. Det tog några dagar att göra, och handlar om nivåerna av bevis-av-konceptet demo du kommer att göra mycket som du experimenterar med olika spelstilar.

Spelet är enkelt nog: du ska pilot ett fartyg som är fångat i ett stort rum. Hantverket kommer att flytta i konstant fart. Du kommer att kunna styra och skjuta, men sluta inte. Rummet fylls långsamt med slumpmässigt stor storlek “asteroider,” som kommer att studsa obefläckat runt rummet. Ditt jobb är att undvika att stöta på dessa asteroider, eller väggarna, så länge du kan. Du kommer att kunna skjuta asteroider, men din ammunition laddas långsamt om du slutar.

Det är den grundläggande idén. Låt oss börja. Eftersom det här är bara en demo, kommer vi att göra våra tillgångar ur enkla primitiva som kuber och sfärer (med Primitive Plus-tillgången).

Fartyg

Här är det skepp jag skapade.

Jag ska erkänna, det ser mycket ut som en gaffeltruck, men det kommer att göra för den här demo.

När du bygger cockpiten ska du se några tydliga strukturer i användarens synvinkel, särskilt i periferin. Detta hjälper till att undvika rörelsesjuka genom att ge användaren några fasta element, vilket minskar känslan att de rör sig. Det gör det lättare för hjärnorna att hantera bristen på rörelse som rapporteras av sina inre öron.

Jag var tvungen att experimentera med flera cockpitkonfigurationer innan jag hittade en som inte gjorde mig sjuk. När du är osäker lägger du till fler struts och flyttar kameran tillbaka. Var försiktig med skala! En enhet i Unity är en meter i VR, så håll koll på storleken på de element du skapar. Det är lätt att göra föremål som är löjligt stora eller löjligt små i VR, och resultaten kan vara oroande.

När du är färdig med att bygga ditt skepp, skapa en kub som omger den och förälder hela skeppets primitiva till det. Detta kommer att ge sin kollisionslåda och centrum för rörelse. Lägg till en “Rigidbody” till den yttre kuben och inaktivera renderaren (genom att avmarkera den i inspektören). Se till att den styva kroppen är inställd så att "kinematisk" och "använd gravitation" är båda inaktiverade. Lägg till andra styva kroppar till var och en av fartygets primitiva, den här gången ställa dem som “kinematisk,” men stänger av “använd gravitationen.”

Flytta "CameraRig" och "SteamVR" -objekten till cockpiten och placera dem där användarens huvud ska vara inne i skeppet. Jag har använt en annan fri enhet tillgång (en humanoid robot) för att säkerställa att positionen stämmer rätt. Föräldra dem till den yttre kuben - det här får dem att flytta med objektet.

Nu för att skriva på skeppet! Här är de två skript som jag har skapat - Fordonskontroller och Fordonsförstörare. Den första läser in från användaren, och ger tryck till skeppet, vilket gör att det rör sig. Den andra upptäcker när skeppet kolliderar med något märkt "rock" och avslutar spelet. Som en rolig liten extra bryter den också skeppet i sina komponenter, så att du kan se dem flyga bort under en kollision. Skriptet skapar en rad objekt som du behöver fylla i med alla primitiva i skeppet, inne i redigeraren.

Skriptet visar också några instruktioner som kommer att dyka upp när du dör. Skapa ett TextMesh GameObject, och sätt det att säga “Du dog! Skjut för att starta om!” Placera denna TextMesh inuti cockpiten, förälder den till fartyget och inaktivera dess renderer-komponent. Dra sedan den på “instruktion” variabel av VehicleDestroy-skriptet i inspektören. Denna text kommer att vara osynlig normalt, men visas igen när du dör.

Asteroid

Därefter ska vi skapa våra asteroider. Här är den asteroid som jag hamnade med, gjord av några primitiva som fastnat ihop och standardskärmen. Ingenting är för komplicerat, men det ser ganska trevligt ut.

Jag har lagt till en styvbody och taggad den som en “sten.” Om du inte känner till enhetslabeln, kolla in den relevanta manuella sidan. I grund och botten kan taggar du tilldela speciella egenskaper till objekt som kan upptäckas under kollisioner, så att skript vet vad de interagerar med. I det här fallet kommer taggen att orsaka att skeppsobjektet upptäcker att det har drabbats av något farligt.

Nu för att skriva asteroiden. Skriptet här är “AsteroidInit,” vilket gör två saker.

  • För det första randomiserar asteroiderna lite för att få dem att se olika ut, och ger varje en spark i slumpmässig riktning.
  • För det andra upptäcker den om asteroiden har drabbats av något märkt "bullet". Om så är fallet aktiverar den en partikelemitter jag är fäst vid asteroiden och förstör det ursprungliga objektet.

Arena

Bra! De två grundläggande elementen i spelet är närvarande. Nästa upp, arenan. Det kan vara vilken form du vill, men se till att den är stor. Att sätta i små cirklar tenderar att göra människor sjuka. Att flyga rakt fram är relativt ofrivilligt. Tag alla väggarnas sten "för att se till att fartyget förstörs om det flyger in i dem. Här är arenan som jag hamnade med:

Du kommer märka att väggarna har en enkel platshållare konsistens som jag gjorde i GIMP. För det mesta designade jag spelet med en texturlös estetik för enkelhet. Jag fann emellertid att jag hade svårt att berätta när jag kom nära att krascha i en vägg, så de får texturer för gameplay. Jag tillade också en partikelemitterare till arenan och fyllde den med svaga, långlivade, statiska partiklar. Detta gör det lättare att berätta hur du rör dig när du inte är nära ett objekt. Lyckligtvis är arenan ganska passiv, så det behöver inte några skript i sig.

Slutligen skapa en primitiv (jag använde en ihålig cylinder) och placera den mot en vägg.

Detta kommer att bli din asteroidspedare. Fäst det här skriptet till det. Du märker att det här skriptet förklarar en “Asteroid” GameObject-variabeln, som ska vara synlig i redigeraren. Dra ditt asteroidobjekt på det i redigeraren. Detta kommer att göra det möjligt att hämta ett obegränsat antal asteroider, med en hastighet på en sekund per sekund, vilket ger spelet en långsamt eskalerande svårighetsskurva. Placera din ursprungliga asteroid väldigt långt bort, för att undvika att det blir oavsiktligt förstört eller orsakar problem.

HUD och Gun

Vid denna tidpunkt är den mest grundläggande formen av spelet väsentligen spelbar. Nu lägger vi till några sekundära funktioner som ger det lite mer djup. Detta skript, fäst vid a “TextMesh,” kommer att hålla reda på hur länge du har levt. Ett annat skript kommer att prata med en fil för att bestämma ditt höga betyg, vilket skrivs till filen av fordonshanteraren när du startar om. Nu har du ett enkelt resultattavle system, vilket ger spelaren ett mål. Förankra dessa maskor inuti cockpiten där de är lätt synliga.

Slutligen måste vi genomföra användarens vapen. Lägg till en “pistol” motsätta sig skeppet (det behöver inte vara komplicerat) och dra det här skriptet på det. Du måste länka ett punktobjekt, vilket kan vara vilket objekt som helst med en styvbody och "bullet" -taggen. Gör det starkt färgat, så det är synligt. Återigen placera den långt bort, så det interagerar inte. Slutligen måste du göra en ammunitionsdisplay. Lägg till det här skriptet i ett annat textnät och ankare det inuti cockpiten där det är lätt att se.

Finjustering

Det är ganska mycket det! Vid denna tidpunkt är alla grundläggande element i spelet färdiga. Nu är det dags att testa. Du kan ändra storleksområdet för asteroiderna, formen och storleken på arenan, fartygets hastighet, mängden ammunition, laddningshastigheten och nedkylningen. Du kan experimentera med hur fartyget hanterar. Om du vill, och har lite 3D-modellering, kan du även ersätta min programmörskonst med reella tillgångar och göra ett polerat spel ut ur det. Det viktiga är att experimentera mycket och ta reda på vad som känns bra för dig och är bekväm för testare (helst testerare som är nya för VR och har inte utvecklat järnmagor ännu).

Om du vill se hela Unity-projektet och röra med det, kan du ladda ner det här. Om du bara vill spela min version av det sista spelet kan du ladda ner det här.

Bygg dina egna demo

Om du följer med din egen handledning och gräver in i dokumenten när du hittar något du inte förstår, kommer du att sluta med ett ganska bra handhav av grundläggande VR-spelskapande i Unity. När du vill gå vidare är du väl rustad att göra det.

Med detta sagt är VR-spelutveckling väldigt annorlunda än traditionell spelutveckling, så jag ska ge några allmänna råd för att utforma VR-upplevelser som kommer att vara bekväma och dra full nytta av mediet.

Rörelse

Först och mest avgörande, respektera användarens huvudrörelse. Skala inte på det, varp det, ändra synfältet eller annars röra med grunderna. Oculus och Valve har gått mycket besvär för att finjustera dessa saker för att inte göra människor sjuka. Om du inte har några perceptuella psykologer till hands, är du inte kvalificerad att manipulera med det. Gör det inte! Var försiktig så att du aldrig stänger av den. Skapa inte menyer som inte har huvudspårning. Ingenting gör dig sjukare snabbare än att ha ett stort föremål som står fast i huvudet i tio sekunder eller mer!

Var försiktig med rörelse i samma ven. Den primära faktorn som gör att människor är sjuka är när deras ögon uppfattar rörelse om att deras inre öra inte gör det. I allmänhet håll rörelsen långsam och stabil. Accelerationerna bör vara momentana och rotation bör minimeras. När rotationen måste hända, ge användaren fasta referenspunkter i sin perifera vision. Om du kan, bygg spel som äger rum utan rörelse alls. Det finns massor av coola saker du kan göra i ett enkelrum eller använda små föremål (tänk Real Time Strategy-spel 4 Utmärkta strategier i realtidsspel du kan spela på de billiga 4 Utmärkt Realtidsstrategispel du kan spela på det billigaste Realtidsstrategi-genren är en av häftklamrarna i spel idag. Andra genrer, som första personskyttar och rollspel, mättas med hundratals olika titlar, men realtidsstrategi håller inte ... Läs mer på skala av plast armé män), och det blir mycket lättare att göra dessa erfarenheter bekväm och trevlig.

UI

Många människor, när de börjar utveckla VR-innehåll, vill automatiskt fästa saker till användarens huvud, som militära Heads Up Displays. Tyvärr visar det sig att det inte fungerar bra. När dina ögon är inriktade på någonting långt borta i världen, kommer föremål nära ditt huvud att bli en out of focus röra av pixlar. Dessutom fokuserar på mycket närliggande föremål ögonsträckan.

För att undvika detta, försök att sätta din UI i världen så mycket som möjligt. Titta på spel som Dead Space för inspiration. Du kommer märka att i AsteroidsVR, cemo ovan, är hela gränssnittet förankrat i cockpiten. Eftersom det är i rymden runt dig, är allt användargränssnittet meningsfullt och det är bekväm att titta på.

Var försiktig med text i en relaterad anteckning. Nuvarande VR-headset är ganska lågupplösning, speciellt när du redogör för hur mycket ditt visuella fält de täcker. Det betyder att texten kan vara ganska svår att läsa. Försök att lita på det så lite som möjligt. Texten du har bör vara tillräckligt stor för att den ska vara läsbar under normala visningsförhållanden. Kom ihåg att några av dina spelare kan vara äldre eller synskadade! Err på sidan av för stor.

Grafik

Kom ihåg att VR är mycket intensiv. DK2 måste springa vid 1080p, i 3D, vid 75 fps. Både konsument Rift och HTC Vive kommer att köras vid ännu högre upplösningar och framerates. Om du inte träffar dessa ramfrekvenser kommer det att resultera i flimring av dubbelsyn. Det är extremt upprörande, och en enkelriktad biljett till desorientering och ögonbelastning.

Som ett resultat måste du vara mycket mer försiktig med prestanda än vad du normalt skulle göra. Det betyder att hålla poly-count ned och minimera dyra grafiska effekter. Använd enkla modeller, behåll antalet ljus till ett minimum, inaktivera dynamiska skuggor och försök att få så många objekt som möjligt använda samma material. Du bör också markera alla objekt som inte ändras eller flyttas som “statisk” i inspektören. Det gör det lättare för Unity att sätta dem ihop och spara prestanda. När du kan, gör dessa begränsningar en del av din speldesign genom att välja en cartoony estetisk för ditt spel. I allmänhet, om du kan eliminera en visuell effekt utan att såra spelet, gör det.

Det enda undantaget från denna tumregel är anti-aliasing. Aliasing (en skarp artefakt som orsakas av datorgrafikens diskreta natur) uppträder annorlunda i varje öga, vilket leder till en obehaglig uppdelning av 3D-effekten, vilket kan orsaka ögonbelastning. Använd så mycket anti-aliasing som du har råd med (jag rekommenderar MSAA) och försök att undvika texturer med högfrekvent visuell detalj (som lövverk, fina galler eller komplexa texturer placerade långt borta).

Vissa visuella effekter är också dåliga passar för VR i allmänhet, även om du har råd med dem.

  • Var försiktig med efterbehandlingseffekter som blomning, vilket kan resultera i egna stereoljud.
  • Också vara medveten om att 3D gör några vanliga visuella fuskar ser extremt dåligt ut. Normala kartor, en häft av videospel, ser helt platt när de ses upp i närheten av VR. Billboard sprites (av det slag som vanligtvis används för explosioner) ser också platt ut, och kan verkligen bryta nedsänkning. Likaså ser många av de spritbaserade teknikerna som används för att göra skräp eller vegetation blick och fel.
  • Slutligen var försiktig med transparenta föremål. Moderna återgivningsmotorer har svårt att hålla koll på djupet när du har många genomskinliga föremål i samma scen. Detta blir extremt krossande i VR. Försök att behålla antalet transparenta objekt till ett minimum och undvik scenarier där du kan se ett transparent objekt genom en annan.

Håll allt detta i åtanke när du skapar konsttillgångar, och det sparar dig mycket smärta längs linjen.

Om du upptäcker att efter att ha stängt av alla dessa grafiska effekter ser ditt spel lite ut, försöker använda lätta kartor och falska omgivande ocklusion. Lätta kartor bakar belysning direkt in i ett texturlager på kartan, vilket ser bra ut för allt som inte rör sig, och kan lägga till mycket djup och soliditet för din värld. För dynamiska objekt (som tecken), överväga att använda “skugga blob” texturer för att skapa omgivande ocklusion. Det är inte helt realistiskt, men det gör mycket för att mäta dem i världen, och det är extremt grafiskt billigt!

När tiden går, kommer dessa typer av hack vara mindre nödvändiga, men för nu måste du utnyttja så många av dem som möjligt för att spara prestanda.

Experimentera tidigt och ofta

Det viktigaste råd jag har är att släppa dina förutfattade uppfattningar. VR är inte precis vad vi alla trodde att det skulle vara på 90-talet. Verkligheten har visat sig ha många fördelar och begränsningar som ingen kunde ha förutsett. Vad låter bra på papper (som VR Halo) visar sig vara en disorienting, illamående röra i praktiken. Några av de bäst mottagna VR-upplevelserna Oculus Rift VR-simuleringar du måste se för att se Oculus Rift VR-simuleringar du måste se för att du har sett Oculus Rift, men du har inte sett några av de vansinniga användningarna som den har lagts till. Kolla in dessa fantastiska Oculus Rift-demos från hela världen. Läs mer har varit riktigt konstiga saker som Jobb Simulator, ett sandkassettspel i ett kök.

VR är ett helt nytt medium, och ingen förstår helt och hållet reglerna ännu. I traditionella videospel vet vi ganska mycket hur man gör en FPS, en RPG och en skyddsskytte. Dessa grundläggande genrer spikas ner. Det finns bästa metoder. Varje nytt spel som gjorts är en inkrementell förbättring, men det är vanligtvis inte en ny genre. I VR finns det inget men nya genrer. Grunderna i mediet har inte ens uppfunnits än. Ingen vet vad de gör.

Det här är oerhört spännande, men det betyder att du måste vara flexibel. Om du har en fantastisk idé, gör det! Omedelbart! Få en prototyp klar så fort du kan, och se om den fungerar. Men var villig att låta experimentet misslyckas. Om din idé inte är kul eller det gör dina testare sjuka, släng ut det och prova något nytt.

Gör ett nytt spel varje vecka, eller till och med varje dag, tills du slår guld. Ju mer misslyckade prototyper du gör desto högre är dina odds att uppfinna något riktigt coolt. Gör konstiga spel. Göra verkligen konstiga spel. Ingen vet vad som ska fungera och vad som inte är, så kastar ett brett nät. Du kan bli förvånad över vad som visar sig vara fantastisk.

Så kom dit, gör några spel - och framför allt ha kul!

Utforska mer om: Game Development, Longform Guide, Videospeldesign, Virtual Reality.