Hur man skapar spel med unity3d. Att arbeta i Unity3d: grunderna för att skapa spel

Vi har redan pratat om Unity-motorns historia och dess fördelar i artikeln "". Kort sagt, denna teknik är otroligt populär bland indieutvecklare, såväl som ett antal stora studior som skapar spel av olika genrer med hjälp av den. Nedan kommer vi att titta på det bästa av projekten som skapades med Unity.

10:e plats

En original indie-shooter med förstapersonsvy, skapad av Superhot Team med samma namn. Som en liten demo för 7 Day FPS Challenge växte spelet till en demo , och flyttade sedan till Kickstarter, där det fick den nödvändiga finansieringen och blev sedan ett fullfjädrat spel.

I utseende gör ett obeskrivligt intryck: grafiken är gjord i en minimalistisk stil (röda ansiktslösa motståndare på en grå bakgrund), och spelet erbjuder bara en sak - att skjuta mot motståndare. Det unika ligger dock i själva skjutningen, eller snarare, i sättet den sker.

Så när du rör på dig flyter tiden som vanligt i SUPERHOT, men så fort du stannar fryser allt runt omkring dig. Stoppad tid gör att du kan se dig omkring och lista ut din nästa handling för att göra vackra serier av dödar. Men om du bara fångar en kula kommer du att dö.

9:e plats

Ännu ett indiespel skapat av av Failbetter Games. Sunless Sea i sig är inte ikoniskt och erbjuder inget unikt. Vi bestämde oss för att inkludera det i listan bara för att spelet i allmänhet är gjort med hög kvalitet, och dess genre - roguelike - är nästan omöjlig att hitta i sin rena form idag i den stora spelindustrin.

Efter att ha samlat in pengar på Kickstarter bestämde sig utvecklarna för att släppa en spin-off till sin egen webbläsare RPG Fallen London. Hela handlingen i Sunless Sea utvecklas i samma universum och i samma tidsram - landskapet från den viktorianska eran, som innehåller mystiska teman och fantasi som legenderna om Cthulhu.

I Sunless Sea var du tvungen att spela som en fartygskapten som reser till olika öar i denna värld och möter alla möjliga hinder.

Om du vill spela ett spel med en underbar värld, väldesignade scener och en bra handling som inte är sämre än seriösa böcker, då kommer du definitivt att gilla Sunless Sea.

8:e plats

En MMO-simulator där spelare måste arbeta tillsammans för att kontrollera ett enormt luftskepp. Guns of Icarus Online är designad i stilen . Du kommer inte att hitta någon värld eller beskrivning av universum i det här spelet - allt som händer sker i de ansiktslösa himmelska utrymmena där stridsluftskepp kolliderar.

Eftersom det är ett sessionsspel inbjuder spelet spelare att delta i onlinestrider, både 1 mot 1 och i form av massstrider. Men 1 på 1 är ett relativt begrepp, eftersom varje enhet representeras av fyra riktiga spelare.

Innan striden börjar måste var och en av de fyra välja en specialisering: klassen pilot, skytt eller ingenjör. Namnet trogen fokuserar inriktningarna på olika uppgifter och har unika egenskaper.

Under strider är hela laget av spelare på luftskeppet och utför sina uppgifter. Som ingenjör kan en spelare ta pilotens rodret eller sitta på en kanon. Piloten är i sin tur inte hindrad från att gå för att reparera ett trasigt föremål.

Skillnaden ligger i de buffar och buffs som tillämpas beroende på spelarens klass och handlingar (piloten kontrollerar bättre, och ingenjören reparerar snabbare).

Guns of Icarus Online har många unika luftskepp, alla med sin egen eldkraft och egenskaper. Seger kommer att uppnås av laget som skickar fiendens utrustning till fri flykt - d.v.s. kommer att förstöra.

7:e plats

Projektet, som skapade en hypebacchanalia 2016 som svepte över hela Internet, penetrerade tv och tidningar. är gratis spel för mobila enheter, där spelaren behöver samla berömda monsterkaraktärer från Pokémons universum.

Nyckelfunktionen i spelet är baserat på förstärkt verklighetsteknik, som med hjälp av en internetanslutning och en videokamera bestämmer användarens plats och projicerar själva Pokémon på skärmen, som vid den tiden verkar vara i verkligheten.

Det var dock bara Pokemon Go som lyckades få ett högljutt svar från allmänheten – spelet laddades ner av mer än 100 miljoner människor från hela världen. Niantic studio lyckades tjäna cirka en halv miljard dollar.

6:e plats

2016 släppte Campo studio ett intressant indieprojekt - en omgång med ett 1:a personperspektiv, som berättar historien om en vanlig man som heter Henry och hans problem som ger upphov till det moderna samhället.

Spelet utspelar sig i Shoshone Forest 1989, precis när Yellowstone Fire började. Huvudkaraktär Henry, efter att ha förlorat sin älskade fru, bestämmer sig för att abstrahera sig från samhället och gå in i avskildhet och bli en skogsobservatör på ett av eldtornen.

Hela handlingen är baserad på kommunikationen mellan Henry och flickan Delilah, som är på andra sidan walkie-talkie under hela passagen. Relationerna mellan karaktärerna och de problem de tar upp är kärnan i Firewatch.

5:e plats

Obsidian Entertainment fortsätter trenden som skapades för att återuppliva "old school" rollspel. Efter framgångsrika Pillars of Eternity satte utvecklarna igång – ett projekt av samma genre som berättar en helt ny historia.

Precis som PoE, som vi också rekommenderar att du spelar, är Tyranny gjord på Unity-motorn. I tekniska termer erbjuder spelet (som alla de som beskrivs ovan) inget nytt - det använder samma teknologier från gränsen till 1990- och 2000-talen som en gång användes i CRPGs.

När du är bekant med genren kommer du att möta det vanliga partyspelet och pausa. Du kommer att hitta komplexa strider där du måste använda alla hjältarnas färdigheter, och förgrenade intrig och dialoger, som är tyranniets främsta höjdpunkt. Rekommenderas för fans av Baldur's Gate och Planescape: Torment.

4:e plats - Rust

I den oändliga luktvätskan som kallas "Survival Simulator in Early Access" är det mycket svårt att hitta något annat värdefullt än själva luktvätskan. Men undantag förekommer, som Rust vältaligt berättar. Denna "survivalist" skiljer sig främst från hundratals liknande kloner genom att den var en av de första i sitt slag.

Rost

Rust-projektet har varit i tidig tillgång under lång tid (sedan 2013), vilket i huvudsak placerar det i det förbannade lägret av "alfaspel" som aldrig kommer att släppas. Spelet har dock uppdaterats så länge och har fått så mycket innehåll att det var i tidig tillgång mer på utvecklarnas infall än på grund av tekniska skäl. Slutligen, den 8 februari 2018, släpptes spelet officiellt.

I allmänhet, alla galenskaper med early access-spel i började med DayZ, som drabbade branschen som en blixt från klar himmel. Det var detta som Rust-utvecklarna vägleddes av, men de bestämde sig snart för att gå bort från den ursprungliga idén och blanda funktionerna i DayZ med Minecraft.

Egentligen ligger kärnan i Rust i själva genren - du måste överleva. Spelet fungerar uteslutande i online-läge, så du måste interagera med andra spelare.

Du kommer att befinna dig på en enorm ö med det enda målet - att överleva. Jo, för att överleva måste du samla resurser, skapa olika saker från en yxa till en pistol, bygga baser, slåss med andra spelare och så vidare.

Vi hade inte placerat henne i toppen om hon, som nämnts ovan, inte hade blivit en av genrens pionjärer. Ett kvalitetsspel som 2016 lyckades sälja mer än 5 miljoner exemplar, vilket till stor del talar till Rusts fördel.

3:e plats

Detta indieplattformsspel är ett sällsynt undantag när spel av denna genre, skapade av små studior med små budgetar, blir mästerverk.

Majoriteten av Unity-spelen skapas av indieutvecklare (ungefär 90 % av totalen). I grund och botten är det förståeligt att sådana projekt misslyckas eller helt enkelt går obemärkt förbi av publiken, vilket påverkar presentationen av Unity. Och bara ibland spel som De rusar genom sina konkurrenter som en virvelvind och lämnar alla bakom sig.

Inside utvecklades av den danska studion Playdead, som också är ansvariga för släppet av Limbo. I Inside kommer du också att spela som en namnlös pojke som reser genom en grotesk och farlig värld.

Här hittar du inget fantastiskt spel, ingen supercool grafik, inga suveränt skrivna dialoger – bara en tryckande och dyster atmosfär som lägger allt på hyllan utan ord.

Det kommer inte att vara möjligt att diskutera några innovativa teknologier när det gäller Inside. Enhet används , gav dem helt enkelt ett brett utbud av verktyg och användarvänlighet, vilket toppmotorer som Frostbite inte kan erbjuda.

Detta räckte för att utvecklarna skulle skapa ett spel som var enkelt vad gäller gameplay och grafik, men otroligt rörande och minnesvärt.

2:a plats

Ett annat intressant Unity-projekt är rymdsimulator Kerbal Space Program - mest spännande , där du är inbjuden att bygga din egen rymdhamn, bygga en raket och skjuta upp den i rymden!

Många spel kan erbjuda liknande kul, men Kerbal Space Program är unikt genom att det kräver uppfinningsrikedom och åtminstone en ytlig kunskap om fysikens lagar från spelaren.

Det är troligt att din första körning i det här spelet kommer att sluta i ett misslyckande, och det är inte mindre troligt att samma öde kommer att drabba din andra, och till och med ett dussin efterföljande.

KSP är mycket komplext, så du måste ta hänsyn till många faktorer - hastighet som krävs för att nå omloppsbana, bränslebelastning, gravitation och mer - för att implementera ditt eget rymdprogram.

Efter att ha tagit itu med konstruktionen av raketen kommer du att försöka ta dig in i jordens omloppsbana och sedan helt lämna den för att komma till andra planeter. I Kerbal Space Program finns det levande varelser - Kerbals, som kommer att bli dina astronauter.

Efter att ha bemästrat rymdflygningen kan du välja ett mer globalt mål - att leverera en besättning till en annan planet, landa dem och sedan leverera tillbaka dem.

Generellt sett är Kerbal Space Program ett spel med enorm komplexitet, som du efter att ha slagit kommer att ha mycket roligt och bli lite mer lärd.

1 plats

Civilization-serien låg i ursprunget till genren 4X-strategier. Sedan 1990-talet har det gått över enormt sätt och fortsätter fortfarande att anses vara den bästa av de bästa. Naturligtvis, från år till år, har de framväxande ekonomiska framgångarna för serien mer än en gång föranlett och fortsätter att uppmuntra tredjepartsutvecklare att släppa något liknande.

Vissa fungerar som karbonkopior, medan en minoritet gör unika spel som till och med är överlägsna Civilization på många sätt. Endless Legend, utvecklad av Amplitude studio på Unity-motorn, är bara en av dessa.

Endless Legend släpptes 2014. Efter tre år fick den fyra stora och förlorade inte det, om än litet, men ändå en fanbas som verkligen älskade denna magiska strategi.

Och även om målen för en 4X-strategi inte skiljer sig från många andra (du måste fullständigt förstöra fienden, eller uppnå en vetenskaplig/territoriell/diplomatisk seger), skiljer sig dess inställning och vissa funktioner avsevärt från sina konkurrenter.

Om du är trött på Civilization och liknande kloner, var uppmärksam på Endless Legend - ett spel med sitt eget charmiga universum och unika mekanik, som du med stor sannolikhet kanske gillar mycket mer än "chipsen" från samma civilisation.

Video: Endless Legend trailer


Gilla om du gillade det

Hur man skapar ett datorspel på ett par timmar unity3d. Skapa ett spel med Unity 3d Unity 3d Elevator.
Video: https://youtu.be/jnmBMfk-_0k
I den här videon kommer jag att dela med dig av hur du skapar ditt eget spel från grunden, på bara ett par timmar, utan att känna till några färdigheter i programmering, design eller 3D-modellering. Ta en titt och se själv att allt är elementärt enkelt.

hur man skapar ett spel

Vi kommer att skapa ett 3D-spel i Unity 3D. Naturligtvis finns det andra motorer som Urho3D, Doom engine, Build Engine, Quake engine, qFusion, Tenebrae, Cube, Agar, Axiom Engine, Andorra 2d, Boom, Arcane Engine, Auran Jet, Baja Engine, Blitz3D, C4 Engine, Dark motor, Earth-4 Engine, Explorations, GH Engine, KjAPI, Medusa, Hedgehog Engine, Odyssey Engine, OGRE, Quasar, Quest3D, Power Render, Retribution Engine, Revolution3D, Shark 3D, Silent Storm-motor, Torque Game Engine, TOSHI, Truevision3d , Vicious Engine, 3DGame Studio, Trinigy Vision Engine, Visual3D.NET, Virtools, WGAF, White Engine, Xors3d Engine, Zero, LyN-motor, Vicarious Visions Alchemy, Luminous Studio, Source 2, Serious Engine 4, CryEngine, Creation Engine, 4A Engine, HydroEngine, id Tech 5, Illusion Engine, Serious Engine 3, CryEngine 3, Crystal Tools, Eclipse Engine, Frostbite Engine, Dunia Engine, Dreamworld, RAGE, Anvil engine, CryEngine 2, X-Ray, NeoAxis Engine, Genome, YETI motor, HPL Engine, Electron Engine, Reality Engine, Dagor Engine, TheEngine, Unigine, Serious Engine 2, Vengeance Engine, CryEngine, id Tech 4, Source, IW-motor, CloakNT, Saber3D, Jade, CPAL3D, Coldstone Game Engine.

Hur man gör ett spel

Aurora Engine, LS3D-motor, Bugbear Game Engine, Geo-Mod, Prism3D, BlitzTech, SAGE, Gamebryo, AtmosFear, GrimE, Lithtech, Unreal Engine, GoldSrc, Infinity Engine, Sith, RenderWare, Vampire, Jedi, BRender, Glacier engine, XnGine , INSANE, PRISM-16,
Gold Box, Freescape, SCUMM, SCI, AGI, ZIL, Blender Game Engine(BGE), Unreal Engine 4, Source Engine SDK, NeoAxis Game Engine, Stencyl, Game Maker, DX Studio, ZDoom, Yake, vbGORE, URQ, Telejano, SunBurn Engine, Stratagus, Storm3D, SmartX, Sauerbraten, rRenderer, Ren'Py, RealmForge, ProQuake, pH Engine, PLIB, Pentagram, Oxygine, OGRE, OSlib, OMEGA Engine, OctLight, CheapHack, Blender spelmotor och många andra.
Du är redan övertygad om att urvalet av motorer är för stort))
Vårt val föll på Unity eftersom det är en multiplattforms, flexibel, enkel och mycket trevlig motor. Observera att Unity är mer lämpad för att utveckla spel för smartphones på Android och iOS. Men du kan också skapa spel på en PC: Windows och Mac (MacBook). Du kan till och med skapa ett spel på PlayStation eller för webbläsare (Google Chrome, Opera, Safari, Mozilla FireFox och så vidare). Förresten, allas favoritspel Assasin Creed skrevs i Unity.
Du behöver inte lära dig programmeringsspråk i C#, C, C+, C++, Python, Java, Java Script, Visual Basic, Ruby, Objective C, Swift, etc. Du behöver inte ens kunna 3D Max, Cinema 4D, ZBrush, Maya för att skapa 3D-modeller.
Du behöver bara ha tålamod och lite fantasi, så hjälper jag till)
Ställ också gärna frågor i kommentarerna om programmeringsspråk och program i allmänhet relaterade till spelutveckling. Om du vill skapa en mer komplex och unikt spel— Jag kan göra en video om det här ämnet, berätta vilka programmeringsspråk som är bäst att börja lära sig och var man ska börja i allmänhet, vad är stadierna för att skapa spel, hur många personer behövs för detta och vilken budget kan du räkna med.
Jag hoppas att jag hjälpte dig att börja skapa spel :)
Prenumerera på BestMaster911-kanalen så att du inte missar något nytt. Jag uppskattar verkligen dina prenumerationer, ditt stöd, och jag ska försöka göra mitt bästa för dig?
Prenumerera på vår kanal.



Spelmotor Unity 3D. Studiekurs

Innehållsförteckning 1. Förbereda för arbete: Var du kan ladda ner, hur du installerar, vad du behöver veta, vad du ska följa.
2. Programgränssnitt: Huvudmeny, Projektöversikt, Hierarki, Scen, Spelvy, Inspektör.
3. Det enklaste spelet: Skapa ett projekt, Skapa en spelscen, Skapa ett manus.
4. Det enklaste spelet (2): Förmåga att skjuta, Hur man lägger till fiender, Fiendekontroller.
5. Det enklaste spelet (3): Partikelsystem, Lägga till ljud, Skapa text på skärmen, Publicera.
6. 3D-plattformsspel. (pågående)

3. Det enklaste spelet

Till att börja med skulle vi vilja skapa det enklaste spelet som möjligt för att snabbt gå igenom alla utvecklingsstadier, inte distraheras av små nyanser och i praktiken se att det fortfarande är möjligt - att manuellt skapa ditt eget spel. För detta ändamål kommer vi att välja ett av de första spelen i historien som referens – SpaceWar. Detta är en 2D-shooter där rymdskepp flyger genom rymden och skjuter på ett annat skepp. Minimal grafik, bara ren mekanik. (Men rent grafiskt har vi säkert råd med mer intressanta bilder än monokroma pixlar).

Håller med, ett bra sätt att lära sig är att inte studera många separata, orelaterade funktioner, utan att återskapa dem själv meningsfulla spel hela utvecklingshistorien datorspel, från primitivt till det modernaste.

3.1. Skapa ett projekt

1. Efter att ha startat Unity, i den översta huvudmenyn välj " Arkiv -- Nytt projekt"(fil – skapa projekt).

I fönstret som visas väljer du en plats på din hårddisk där du vill spara projektet. Vi rekommenderar att du skriver mappsökvägen så kort som möjligt, till exempel: C:/Projekt_1.

Nedan i fönstret finns en lista från vilken du kan välja standardtilläggspaket för spelet, men för det första projektet behöver vi inget ännu. (Alla extra bibliotek som läggs till projektet kommer att öka storleken på det sista spelet.)

Längst ned i fönstret väljer du det tvådimensionella spelet "Inställningsinställningar för: 2D».

Efter det, tryck på knappen " Skapa" (skapa).




2. Ett Unity-fönster öppnas framför oss, bestående av flera zoner. Platsen för zonerna kan omedelbart anpassas i avsnittet "Visa" på huvudmenyn, så vi kommer inte att vägledas av sidorna på skärmen, utan av namnen på Unitys arbetszoner.


Låt oss omedelbart göra en reservation för att vi kommer att följa alla programutvecklingsstandarder: en tydlig hierarki, meningsfulla variabelnamn, kommentarer i programkoden. (I allmänhet är dessa inte obligatoriska åtgärder; de ökar utvecklingstiden något, men ökar programmets användbarhet avsevärt för andra människor. Om du ska skapa spel i ett lag med likasinnade behöver du bara följa till standarderna. Men även om du utvecklar ensam kan projektet vara så stort att du någon gång kommer att glömma en del av koden, och du själv kommer inte att snabbt kunna lista ut det. För att förhindra att detta händer, lämna kommentarer överallt. Programdesignstandarder hjälper dig att snabbt förstå din egen sedan länge glömda kod).


3. Låt oss skapa en tydlig projekthierarki genom att skapa mappar för varje filtyp:

1). I fönstret " Projekt"I det övre vänstra hörnet, tryck på knappen" Skapa».

2). I listan som visas väljer du " Mapp"(mapp). En ny mapp kommer att visas i root Assets-mappen.

3). Vi skapar fyra mappar och namnger dem så här:

Prefabs(prefabs är arrayer av objekt),

Manus(skript – programkod),

Ljud(ljud – för ljudackompanjemang av spelhandlingar),

Sprites(sprites är bilder för spelobjekt).

(Skapade mappar kan döpas om och flyttas när som helst genom att dra och släppa objekt i projektfönstret.)

4). Så här ska slutresultatet av vår operation se ut:



3.2. Skapa en spelscen

Låt oss skapa huvudspelobjektet, som kommer att styras direkt av spelaren. I vårt fall är detta ett rymdskepp.


Skapa en sprite:

1. Öppna programmet Paint. I bildegenskaperna ändrar du storleken till "100 x 75". Vi ritar ett skepp från de enklaste formerna, målar över det och lämnar färgen vit runt skeppet. Spara filen under namnet "".

2. Öppna den skapade filen i Gimp-programmet. Till vänster, välj verktyget "trollstaven", välj det vita området runt skeppet i bilden. I huvudmenyn, på fliken "Bild", välj den sista raden "Färg till alfakanal". Efter detta kommer det att finnas en transparent färg runt fartyget. Om det fortfarande finns vita områden i bilden, upprepa stegen tills vi har avmättat allt onödigt. Spara filen. Vi kommer ihåg mappen där den skapade filen finns.

(Det spelar ingen roll hur skeppet kommer att se ut, så länge dess silhuetter är tydligt synliga och det finns transparens runt det. Är du riktigt dålig på att rita kan du ladda ner en bild på skeppet direkt från denna sida) .


Bilder som behövs för att skapa ett spel
Fartyg
Plats
Utomjording
Skott

Skapa ett spelobjekt:

1. I ett annat fönster, hitta bildfilen på datorn som vi just skapade, dra den till Unity-fönstret i " Projekt"till mappen" Sprites" Filen kommer att laddas ner till mappen. Efter detta väljer du den nedladdade filen i " Inspektör"i raden" Textur typ"välj värdet" Sprite (2D och UI)" Klicka på knappen nedan Tillämpa"(tillämpa).


(Ett annat sätt att lägga till filer: i "Projekt"-zonen, välj mappen "Sprites", högerklicka på den, i listan som visas, välj "Importera ny tillgång", i fönstret som visas, leta efter platsen mappen och själva bildfilen).

2. Välj den nedladdade filen i " Projekt", dra den till " Scen(mörkgrå del av Unity-arbetsfönstret, där det finns en videokamerabild).

Till höger i "Inspektör"-zonen tittar vi på "Transform"-egenskaperna - det här är koordinaterna för vårt objekt i spelutrymmet. Efter att ha dragit placerades objektet inte korrekt (X- och Y-koordinaterna är bråktal, inte heltal). Högerklicka på menyn " Omvandla", i listan som visas, välj " Återställ position" Efter detta kommer bilden att placeras exakt i världens mitt (X=0, Y=0).


Skapa bakgrunden:

1. Rita en bild av stjärnklart utrymme - en mörk bakgrund och flera stjärnor. Bildstorlek - 100 x 100, format - .png. Du kan använda en färdig bildfil från vår hemsida.

2. Lägg till den skapade filen i Unity-fönstret i mappen "Sprites".

3. Dra filen till spelscenfönstret. Som vi kan se har den nya bilden stått ovanpå den gamla, och skeppet är nu nästan osynligt. Unity, och faktiskt alla redaktörer, är utformade på ett sådant sätt att nya element placeras ovanpå de gamla, men vi behöver ha bakgrunden i bakgrunden. För att korrigera bildernas ordning, välj spelobjektet med bakgrunden i fönstret "Inspektör" i egenskaperna " Omvandla"infoga värdet" Z=1" Fartygsbilden ska ha egenskapen "Z = 0". Z är djupet på ett objekt i 2D-spel. Ju högre Z-värde, desto längre bort är objektet från viltkameran.


4. Ett annat sätt: välj bakgrundsobjektet på scenen, titta på egenskaperna i fönstret "Inspektör". Sprite Renderer", i raden" Sorteringslager"Tryck på knappen och välj" Lägg till sorteringslager" Efter detta kommer en ny rad att visas med namnet på lagret "Layer 1", byt namn på det till " Bakgrund" På samma sätt skapar du ytterligare två lager: " Förgrund"och" GUI».

5. Välj fartygsobjektet i fönstret "Inspektör", på raden "Sorteringslager", ställ in det på lagret "Förgrund". Välj ett bakgrundsobjekt och ställ in det på "Bakgrund". Fartyget kommer nu att visas ovanpå bakgrunden.



Vår bakgrundsbild är för närvarande 100 x 100 pixlar. Detta räcker inte för bakgrunden. Naturligtvis kan du skapa många kopior av den här bilden och täcka hela spelskärmen med dem, men detta är en mycket tidskrävande och ineffektiv metod. Vi går åt andra hållet: förvandla spriten till en textur.


6. Välj bakgrundsobjektet från listan " Hierarki" och ta bort den ("delete"-tangenten) för att ta bort bakgrunden från spelscenen. I zonen Projekt"välj bakgrundsbilden i fönstret" Inspektör"ändra dess typ" Textur typ"på" Textur" På raden "Wrap Mode" ställ in värdet på "Repeat". Tryck på knappen " Tillämpa" (Webbplats)



7. Vi har en textur, låt oss nu skapa ett lämpligt spelobjekt för det. I den översta huvudmenyn, välj raden " GameObject | Skapa annat | Kub" Ändra namnet på det visade objektet till "Bakgrund". I "Transform"-egenskaperna ändrar du platsen "Position: 0, 0, 1 " och storlek "Skala: 100, 100, 1 ».

Genom att skapa en så stor kub i bakgrunden skymmade vi hela delen spelvärlden visas på skärmen.

8. Ta bort avsnittet i kubens egenskaper Box Collider" (kollisionshanterare). För att göra detta, högerklicka på avsnittet, i menyn som visas, välj raden " Ta bort komponent».



9. Vår bakgrundsbild kan inte placeras direkt i ett 3D-objekt. Först måste bilden omvandlas till material. I zonen Projekt"klicka på toppen" Skapa | Material" Vi kallar materialet som visas för "Bakgrundsmaterial". I fastigheter" Shader"klicka på rullgardinsmenyn, välj" Släckt | Textur" I den högra delen av egenskaperna klickar du på fyrkanten med bilden av textur "Texture box", från listan som visas, välj texturen för vår bakgrund (eller så kan du helt enkelt dra texturfilen hit från "Projektet" zon). I fastigheten" Kakelsättning» ange värdena x = 25 , y = 25 .



10. I zonen "Hierarki", välj objektet "Bakgrund". I dess egenskaper, under komponenten " Mesh Renderer" öppen " Material"och ändra värdet" Element 0"på vårt material" Bakgrundsmaterial».


Efter detta kommer en fullfjädrad bakgrund att dyka upp på spelscenen. Vi vet nu att en bakgrund bara är en liten bild omvandlad till material, utsträckt över en platt figur i bakgrunden.

3.3. Skapa ett manus

För att få spelobjekt att röra sig behöver vi skript. Skript är ett slags logiska kommandon som instruerar objekt hur de ska bete sig i en given situation. I Unity kan du skriva skript i följande programmeringsspråk: C#, Boo, UnityScript. Vi kommer att använda C#-språket eftersom det tillhör serien av de mest populära programmeringsspråken.

(Även om du inte kan något programmeringsspråk kan du helt enkelt upprepa alla steg vi beskrev steg för steg. Språkkommandona är logiska och blir intuitiva med tiden. Senare kan du använda och transformera de skapade kodraderna på din diskretion, utan att ens förstå dem interna mekanismer. Det viktigaste är att börja göra detta, och att förstå principerna för programmering kommer med erfarenhet).


Genomförande av spelarrörelser

1. I området "Projekt", högerklicka på mappen " Manus", välj " i rullgardinsmenyn " Skapa» - « C#-skript" (Eller så kan du klicka på knappen "Skapa" i det övre vänstra hörnet av området och skapa ett skript där). Låt oss namnge den skapade filen - " PlayerScript».



2. Dubbelklicka på skriptfilen, varefter fönstret för tilläggsprogrammet "MonoDevelop" öppnas (detta är ett program från Unity-kit designat för att skriva skript).


Efter att ha startat "MonoDevelop" ser vi att en del av programkoden redan har skapats automatiskt. Vi ändrar ingenting för tillfället, men studerar vad som visas i koden som standard.


Överväg en standard skriptmall

Längst upp ser vi två linjer:

använder UnityEngine;
använder System.Collections.Generic;

I programkod måste vi arbeta med olika klasser av objekt. Klassbeskrivningar finns i specialbibliotek. Vi ansluter dessa bibliotek till vår kod med kommandot "använder".

UnityEngine-biblioteket innehåller beskrivningar av alla standardobjekt inuti Unity-motorn (objekt, deras egenskaper, filer, prefabs, arvssystem, anslutningar mellan objekt).

"System.Collections.Generic"-biblioteket innehåller de enklaste logiska konstruktionerna (klasser, listor, listor, arrayer, tabeller, vektorer), såväl som källor till externa data för vårt framtida spel (tangentbordstangenttryckningar, musknappar, skärmegenskaper).


public class PlayerScript: MonoBehaviour (

Det här är titeln på manuset vi skapade. Observera att det tredje ordet "PlayerScript" är namnet på skriptet, vilket motsvarar hur vi döpte filen till "PlayerScript.cs". Efter kolon indikeras klassen för vårt skript - "MonoBehaviour". Detta är en standardklass för alla Unity-skript.

Efter symbolen "(" börjar listan med kommandon inuti skriptet. På den allra sista raden måste skriptet sluta med symbolen ")".


Inuti skriptet ser vi raderna:

// Använd detta för initiering

void Update() (

Detta är två tomma standardfunktioner. "void" är ett kommando för att anropa en funktion. "Start" och "Update" är namnen på funktionerna.

"()" betyder att detta är en procedurfunktion, den behöver inte externa värden, och den producerar inte ett resultat, utan bara utför vissa åtgärder.

"()" - start- och slutgränserna för funktioner; mellan dessa symboler bör det finnas funktionsrader, men för närvarande är det tomt. Du förstår, vi har gränserna för hela manuset, och inom det finns gränserna för två funktioner. I särskilt stora skript börjar antalet "()"-symboler att blända dina ögon, och du måste noggrant övervaka var du infogar rader med kod.

Före funktionerna ser vi textrader som börjar med tecknen "//". Så här indikeras kommentarer till programkoden. Dessa poster påverkar inte själva koden på något sätt, men de hjälper dig att förstå den. I själva koden kan du inte använda ryska ens för att namnge variabler, men i kommentarerna kan vi skriva vad vi vill på vilket språk som helst.


Ändra manuset

3. Raden "använder System.Collections;" Vi ändrar det för att få fler möjligheter under utvecklingen. Lägg till underkategorin ".Generic":

använder System.Collections.Generic ;

4. "Start"-funktionen exekveras en gång när ett objekt skapas i spelet, och "Uppdatera"-funktionen upprepas varje ögonblick under spelet. Vi behöver inte "Start", vi kan ta bort det.


5. Låt oss skapa de variabelvärden som vi behöver. Efter raden "public class PlayerScript: MonoBehaviour (" lägg till följande text:

// Ändra hjältens rörelsehastighet
public float playerSpeed ​​​​= 2.0f;

// Aktuell rörelsehastighet
privat flytströmhastighet = 0.0f;

// Skapa variabler för knapparna
offentlig lista upButton;
offentlig lista nedknapp;
offentlig lista vänster knapp;
offentlig lista höger knapp;

// Spara senaste draget
private Vector3 lastMovement = new Vector3();

Låt oss titta på vad vi skrev. I första raden:

"public" är en publik typ av variabel (den kan ändras av andra spelobjekt).

"float" är den typ av värde som lagras i en variabel, i detta fall ett tal med ett bråktalsvärde.

"playerSpeed" är namnet på variabeln (du kan namnge den på ett annat sätt).

"= 2.0f" är det initiala värdet som lagras i variabeln. Ett bråktal skrivs i detta format - ett tal med en punkt och i slutet bokstaven "f", så att datorn förstår att detta inte är ett vanligt tal, utan ett tal med ett bråktal. Denna typ av variabel används för koordinaterna för ett objekt i rymden.


De återstående raderna är skrivna enligt samma princip, men de har något olika variabelvärden:

"privat" är en privat typ av variabel (en sådan variabel kan bara ändras av objektet självt, en variabel för internt bruk).

"Lista " - variabeltyp "array med flera värden", arrayen innehåller referenser till tangentbordstangenter. “upButton”, “downButton”,... – namnen på de tangenter som används.

"Vector3" är en typ av variabel "vektor i tre dimensioner". "new Vector3()" - skapar en tom vektor (krävs för att initiera denna typ av variabel).


Länka skriptet till objektet

6. Spara ändringarna i skriptet. Vi kan göra detta genom att trycka på tangentkombinationen "Ctrl + S". Vi minimerar "MonoDevelop"-fönstret och återgår till Unity-skärmen.


7. Välj fartygsobjektet i "hierarkin". Dra skriptfilen till fartygets egenskaper till "inspektör"-fönstret. En ny objektegenskap "Player Script (Script)" kommer att visas där. Här kan vi se att alla publika variabler visas i objektets egenskaper, och vi kan ändra dem direkt härifrån utan att behöva gå tillbaka till programkoden.



8. Låt oss ställa in kontrollen av vårt skepp. I egenskaperna för varje knapp variabel "Uppknapp", "Nedknapp", "Vänster knapp", "Högerknapp" på raden " Storlek"ställ in värdet" 2 " Efter detta visas två listor "Element 0" och "Element 1", i dem väljer vi nycklarna som kommer att motsvara denna variabel. För "Upp-knapp" är det " Uppåtpil" (uppåtpil på tangentbordet) och " W" Som ett resultat måste vi tilldela allt till variabler pilknappar och nycklarna" W, A, S, D", som visas i figuren. (När du öppnar listan kan du trycka på tangenten med den första bokstaven i nyckelnamnet på ditt tangentbord för att snabbt hitta den i den enorma listan).

Således kommer rörelsekontrollen att dupliceras på både piltangenterna och bokstavstangenterna, och spelaren kommer att välja vad som ska användas.


Skrivfunktioner för att flytta ett objekt

9. Återgå till "MonoDevelop". Inuti funktionen "Uppdatera" skriver vi ytterligare två funktioner. Att placera funktioner i "Uppdatering" innebär att de kommer att upprepas om och om igen under hela spelet:

// Uppdatering anropas en gång per bildruta
void Update() (

// Rotera hjälten mot musen

// Flytta hjälten

}

10. Ovan skrev vi bara ett samtal till våra funktioner. Nu nedan måste vi beskriva vad dessa funktioner faktiskt kommer att utföra. Efter ")"-tecknet som stänger "Update"-funktionen, och före det sista ")"-tecknet, lägg till koden:

// Rotera hjälten mot musen
void Rotation() (
// Visa spelaren var musen är
Vector3 worldPos = Input.mousePosition;
worldPos = Camera.main.ScreenToWorldPoint(worldPos);
// Spara muspekarens koordinater
float dx = this.transform.position.x - worldPos.x;
float dy = this.transform.position.y - worldPos.y;
// Beräkna vinkeln mellan "Ship" och "Pointer"-objekten
flytvinkel = Mathf.Atan2(dy, dx) * Mathf.Rad2Deg;
// Förvandla vinkeln till en vektor
Quaternion rot = Quaternion.Euler(ny vektor3(0, 0, vinkel + 90));
// Ändra hjältens rotation
this.transform.rotation = ruttna;
}

11. Vi beskriver fartygets rörelsefunktion "Movement":

// Hjältens rörelse mot musen
void Movement() (
// Behövlig rörelse
Vector3 rörelse = ny Vector3();
// Kontrollera de nedtryckta tangenterna
rörelse += MoveIfPressed(upButton, Vector3.up);
move += MoveIfPressed(downButton, Vector3.down);
move += MoveIfPressed(leftButton, Vector3.left);
rörelse += MoveIfPressed(rightButton, Vector3.right);
// Om flera knappar trycks ned, hantera detta
rörelse.Normalisera();
// Kontrollera om knappen är intryckt
if(rörelse.magnitude > 0)
{
// Efter att ha klickat, flytta i den här riktningen
currentSpeed ​​​​= spelarhastighet;
this.transform.Translate(rörelse * Time.deltaTime * playerSpeed, Space.World);
lastMovement = rörelse;
}
annan
{
// Om inget trycks
this.transform.Translate(lastMovement * Time.deltaTime * currentSpeed, Space.World);
// Sakta ner med tiden
strömhastighet *= 0,9f;
}
}

// Återställer rörelse om knappen trycks ned
Vector3 MoveIfPressed(List keyList, Vector3 Movement) (
// Markera knappar från listan
foreach (KeyCode-element i nyckellistan)
{
if(Input.GetKey(element))
{
// Om du trycker, lämna funktionen
återvändande rörelse;
}
}
// Om knapparna inte trycks in, så rör vi oss inte
returnera Vector3.zero;
}


12. Spara skriptfilen, gå tillbaka till Unity-fönstret, spara scenen (i huvudmenyn klicka på " Arkiv | Spara scen" Nu kan vi starta vårt spel. På " Spel"Tryck på knappen " Maximera på Play"så att spelet körs i hela Unity-fönstret. Tryck på knappen " Spela" högst upp på skärmen för att aktivera spelet. (För att stänga av spelet, tryck på knappen " igen Spela»).



Bra! Hon arbetar! Fartyget roterar med muspekaren och rör sig om vi trycker på riktningsknapparna. Men det ser inte ut som ett fullfjädrat spel än; nu måste vi lägga till andra spelelement till det.

Prestation "Hedersläsarwebbplats"
Gillade du artikeln? Som tack kan du gilla via valfri socialt nätverk. För dig är detta ett klick, för oss är det ytterligare ett steg upp i rankingen av spelsajter.
Prestation "Hederssponsorwebbplats"
För de som är särskilt generösa finns möjligheten att överföra pengar till sajtens konto. I det här fallet kan du påverka valet nytt ämne för en artikel eller genomgång.
money.yandex.ru/to/410011922382680
+ Lägg till en kommentar

I det första kapitlet hittar du grundläggande information om nedladdning och installation Enhet och förbereder den första scenen i vårt spel.

Ställa in din miljö i Unity

Låt oss börja med det enklaste: ladda ner och Enhetsinställningar.

Ladda ner senaste versionen från den officiella webbplatsen eller torrent och kör installationsfilen.

För att redigera kod i Unity (4.0.1 och högre), använd MonoDevelop-redigeraren. Om du använder Windows kan du (och jag rekommenderar) använda Visual Studio 2013 Desktop (C#) alternativredigerare för Windows och sedan ändra standardredigeraren till Visual Studio i Unity-inställningarna.

Bra att veta: Det är inte möjligt att använda Visual Studio 2013 Express debugger med Unity. Du måste ha en Pro-version av Visual Studio och köpa UnityVS-plugin. Med Express-versionen får du en bättre kodredigerare, men avsaknaden av en debugger kommer att förneka alla dess fördelar.

Mac OS X

En notering om mappen Resurser: Om du har arbetat med Unity tidigare vet du att mappen Resurser är en användbar och unik mapp. Det låter dig ladda ett objekt eller en fil i skriptet (med hjälp av klassen static Resources). Vi kommer att behöva det i slutet (i kapitlet om menyn). Enkelt uttryckt kommer vi inte att lägga till det ännu.

Vår första spelscen

Panel Hierarki(Hierarki) innehåller alla objekt som är tillgängliga i scenen. Detta är vad du manipulerar när du startar spelet med "Spela"-knappen.

Varje scenobjekt är ett spelobjekt för Unity. Du kan skapa ett objekt i huvudscenen eller i ett annat spelobjekt. Du kan också flytta ett objekt när som helst för att ändra dess överordnade.


Som du kan se här har vi 3 barn här för Nivå-objektet.

I Enhet du kan skapa ett tomt objekt och använda det som en "mapp" för andra spelobjekt. Detta kommer att förenkla strukturen för din scen.

Se till att alla har koordinater (0, 0, 0) så att du enkelt kan hitta dem! Tomma föremål använder inte sina koordinater på något sätt, men de påverkar deras barns relativa koordinater. Vi kommer inte att prata om detta ämne i den här handledningen, låt oss bara återställa koordinaterna för de aktuella tomma objekten till noll.

Fyller scenen

Som standard skapas en ny scen med ett huvudkameraobjekt. Dra henne upp på scenen.

Skapa först dessa tomma objekt:

Skript Vi kommer att lägga till våra manus här. Vi använder det här objektet för att bifoga skript som inte är associerade med objektet - till exempel ett spelhanterarskript. Render Det är här vår kamera och ljuskällor kommer att finnas. Nivå

Skapa 3 tomma objekt i nivå:

  • 0 - Bakgrund
  • 1 - Middleground
  • 2 - Förgrund

Spara scenen i mappen Scener. Kalla det vad du vill, till exempel Stage1. Här är vad vi fick:

Tips: Som standard är spelobjektet bundet till förälderns position. Detta leder till en intressant bieffekt när du använder ett kameraobjekt: om kameran är ett barnobjekt spårar den automatiskt förälderns position. Om det är scenens rotobjekt eller är inuti ett tomt spelobjekt visar det alltid samma vy. Men om du placerar kameran på ett rörligt spelobjekt kommer den att följa dess rörelser genom hela scenen. I det här fallet behöver vi en fast kamera, så vi lägger den i ett tomt Render-objekt. Men kom ihåg den här egenskapen hos kameraobjektet, den kan komma väl till pass. Vi kommer att gå in mer i detalj på detta ämne i kapitlet "Paralax Scrolling".

Vi har precis skapat grundstrukturen för vårt spel. I nästa steg börjar vi göra några roliga saker: lägga till en bakgrund till scenen och några andra saker!

Lägga till en bakgrund till scenen

Vår första bakgrund kommer att vara statisk. Låt oss använda följande bild:


Importera bilden till mappen Textures. Kopiera bara filen till den eller dra den från Utforskaren. Oroa dig inte för importinställningar för tillfället.

Skapa ett nytt Sprite-spelobjekt i Unity på scenen.

Vad är en sprite?

I huvudsak är en sprite en 2D-bild som används i ett videospel. I det här fallet är det ett Unity-objekt för att skapa 2D-spel.

Lägga till en sprite-struktur

Unity kan automatiskt ställa in en bakgrund för din sprite. Om ingenting hände, eller om du vill ändra strukturen, gå till inspektörsfliken och välj bakgrund: (bakgrund)


Du måste klicka på den lilla runda ikonen till höger om inmatningsfältet så att Select Sprite visas i Inspektören

Min sprite visas inte i dialogrutan! Se till att du är på fliken Tillgångar Välj dialogrutan Sprite. Bli inte orolig om du ser dialogrutan tom. Saken är att för vissa Unity-installationer, även med ett fräscht nytt 2D-projekt, importeras bilderna som en "Texture" snarare än en "Sprite". För att fixa detta måste du välja bilden i panelen "Projekt" och i "Inspektören" ändra egenskapen "Texturtyp" för egenskapen "Sprite":

Så vi har skapat en enkel sprite som visar moln på himlen. Låt oss göra några ändringar i scenen. I panelen Hierarki(Hierarki) välj New Sprite. Byt namn på Bakgrund1 eller något som är lätt att komma ihåg. Byt namn på Bakgrund1 eller något som är lätt att komma ihåg. Flytta sedan objektet till önskad plats: Nivå -> 0 - Bakgrund . Ändra koordinaterna till (0, 0, 0) .


Skapa en kopia av bakgrunden och placera den vid (20, 0, 0) . Detta borde passa perfekt in i den första delen.

Dricks: Du kan skapa en kopia av ett objekt med cmd + D på OS X eller ctrl + D på Windows.

Sprite lager

Nästa påstående är uppenbart, men har några olägenheter: vi visar en 2D-värld. Det betyder att alla bilder är på samma djup, dvs 0. Och din grafikmotor vet inte vad den ska visa först. Sprite-lager låter oss definiera vad som är framför och vad som är bakom.

I Unity kan vi ändra "Z" för våra element, så att vi kan arbeta med lager. Det här är vad vi gjorde i den här handledningen innan vi uppgraderade till Unity 5, men vi gillade idén att använda lager med sprites. Din komponent har Sprite Renderer det finns ett fält med ett namn Sorteringslager med standardvärde. Om du klickar på den ser du:

Låt oss lägga till några lager för att passa våra behov (använd +-knappen):

Lägg till ett bakgrundslager till din bakgrundssprite:

inställningar Beställ i lagerär ett sätt att begränsa underskikt. Sprites med lägre siffror visas framför sprites med högre siffror.

Lager Standard kan inte tas bort eftersom det är ett lager som används av 3D-element. Du kan ha 3D-objekt i ett 2D-spel, speciellt partiklar behandlas som 3D-objekt av Unity så att de renderas på det här lagret.

Lägga till bakgrundselement

Också känd som rekvisita. Dessa element påverkar inte spelet på något sätt, men de låter dig förbättra spelets grafik. Här är några enkla sprites för flygande plattformar:


Som du kan se har vi placerat två plattformar i en fil. Det här är ett bra sätt att lära sig att beskära sprites med nya verktyg Enhet.

Få två sprites från en bild

Följ dessa steg:

  1. Importera bilder till mappen "Textures".
  2. Välj plattformspriten och gå till panelen Inspektör
  3. Ändra "Sprite Mode" till "Multiple"
  4. Klicka på knappen Sprite Editor

I ett nytt fönster (Sprite Editor) kan du rita rektanglar runt varje plattform för att skära texturen i mindre bitar:


Slice-knappen i det övre vänstra hörnet låter dig snabbt och automatiskt göra detta tråkiga jobb:

Enhet hittar objekt inuti bilden och klipper dem automatiskt. Du kan ställa in ett standardvärde för pivotpunkten eller en minimistorlek för varje fragment. För en enkel bild utan artefakter är detta ovanligt effektivt. Men om du använder det här verktyget, var försiktig och kontrollera resultatet för att se till att du får det du vill ha.

I denna handledning kommer vi att göra den här operationen manuellt. Namnge plattformarna plattform1 och plattform2. Nu, under bildfilen, bör du se två sprites separat:


Låt oss lägga till dem på scenen. För att göra detta kommer vi att utföra samma åtgärder som för bakgrunden: skapa en ny sprite och välj plattform1. Sedan kommer vi att upprepa dessa steg för plattform2. Placera dem i objekt 1 - Middleground. Se till att deras Z-position är noll.


Prefabs


På så sätt kommer du att skapa en Prefab som matchar det ursprungliga spelobjektet exakt. Du kommer att se att spelobjektet du konverterade till Prefab är en ny rad med knappar precis under dess namn:


En notering om "Prefab"-knappar: När du senare ändrar ett spelobjekt kan du använda knappen "Apply" för att tillämpa dessa ändringar på Prefab , eller "Återställ"-knappen för att ångra alla ändringar av spelobjektet i Prefab-egenskapen . "Välj"-knappen flyttar de valda egenskaperna till Prefab-tillgången i projektfönstret (de kommer att markeras).

Att skapa prefabs med plattformsobjekt kommer att göra dem lättare att återanvända. Bara dra och släpp Prefab till scenen för att lägga till en kopia. Försök att lägga till en annan plattform på samma sätt.

Nu kan du lägga till fler plattformar, ändra deras koordinater, storlekar och plan (du kan placera dem i bakgrunden eller förgrunden, ställ bara in plattformens Z-koordinat till 0).

I det här skedet ser allt grovt ut, men i de kommande två kapitlen lägger vi till parallax-rullning och scenen kommer att vakna till liv framför våra ögon.

Skikten

Innan vi går vidare kommer vi att modifiera våra lager för att undvika problem med deras visningsordning. För att göra detta, ändra helt enkelt positionen för spelobjekt längs Z-axeln i fliken Hierarki(Hierarki) enligt följande:

När du växlar från 2D- till 3D-läge ser du tydligt lagren i scenfönstret:


När du klickar på huvudkameraspelobjektet ser du att kryssrutan Projektion är inställd på Ortografisk. Den här inställningen gör att kameran kan rendera ett 2D-spel utan att ta hänsyn till objektens 3D-egenskaper. Tänk på att även om du arbetar med 2D-objekt använder Unity fortfarande sin 3D-motor för att rendera scenen. Bilden ovan visar tydligt detta.

I nästa lektion:

Du har precis lärt dig hur man skapar en enkel statisk bakgrund och hur man visar den på rätt sätt. Sedan lärde vi dig hur man gör enkla sprites. I nästa kapitel kommer vi att lära oss hur man lägger till en spelare och hans fiender.

I den här serien av inlägg kommer jag att lära dig grunderna för att skapa spel i Unity3D, utan att behöva använda programmering. Materialet är designat för personer som absolut inte har någon erfarenhet av kodning, men som är extremt villiga att ta del av skapandet av dator- eller mobilspel.

Introduktion

Enhetär en av de mest kraftfulla och kanske de mest populära spelmotorerna i världen. Hans särdragär vänlighet för nybörjare och den bredaste multiplattformen (det skapade spelet kan exporteras till vad som helst, praktiskt taget utan att skriva om). Hur flexibel och cool är denna motor? Tja, du kan skapa nästan vad som helst på den, från en orm eller Tetris till GTA 5, om du bara hade styrkan, kunskapen och tiden. Till exempel drar Unity ut den här scenen även på ganska föråldrad hårdvara:

Vad artikelserien kommer att handla om:

Om Unity själv, om tillägget Playmarker, om att skapa flera spel från grunden av den kopian spelmekanik spel som Flappy Bird, Hitman Go, Ballance.

Utan att använda programmering? Hur? Som standard krävde att skapa fullfjädrade spel i Unity kunskap om Java Script eller C#, eller samma C++, när det gäller Unreal Engine. Men framstegen stod inte stilla och visuella nodprogrammeringsmetoder föreslogs som ett alternativ till kodning. I Unreal är detta Blueprints-systemet, i Unity är det Playmarker.

Vad är haken? Med en teoretisk begränsning av nodsystemets möjligheter, i förhållande till källprogrammeringsspråket. Om du inte är en Uncharted 4- eller Witcher 3-utvecklare kommer du aldrig att stöta på denna begränsning.

Är ett nodsystem mycket enklare än programmering:

Mycket. Och vad som är lika viktigt, ett sådant system är mycket mer visuellt. I ett stort projekt finns det mycket kod, och ofta, istället för att skapa, lägger programmerare merparten av tiden på att försöka att inte gräva i sin egen kod. Det finns inga sådana problem med noder. Du tänker inte på hur du ska göra, du bara gör det. Med tillkomsten av dessa moduler kan även en nykomling i spelindustrin skapa personliga, spelbara projekt av vilken genre som helst.

Först måste vi ladda ner Unity. Detta kan göras helt lagligt från den officiella webbplatsen. Programmet är gratis som en del av utbildningen.

Installationsprocessen är mycket enkel, även en katt kan göra det. Nästa steg är att skaffa Playmarker-modulen. Tyvärr är den inte tillgänglig i gratis- eller testversionen. Allt som återstår är att antingen köpa modulen, eller... Ja, ni förstår. Jo-ho-ho! Starta Unity:

Välj Nytt projekt. Vi anger vägen till projektet som passar oss. Vi ger projektet ett namn: Tutorial - Flappy Bird. Vi lämnar resten av inställningarna som standard. Så vi gick:

Remsan överst är vårt välbekanta verktygsfält. Från den kan du komma åt de flesta objekt, menyer och undermenyer i programmet. Nedanför finns hanteringsverktyg.

Låt oss omedelbart och för alltid komma ihåg genvägsknapparna till de mest nödvändiga objekthanteringslägena: Wrör på sig,Erotation, Rförändring av storlek.

Det centrala fönstret är scenfönstret, där vi kommer att tillbringa större delen av tiden. Det är i det som vi kommer att skapa den visuella delen av projekten och observera resultatet:

Du kan navigera i detta projektionsfönster med hjälp av följande kortkommandon:

ALT + vänster musknappkamerarotation, ALT + höger musknappskalning, Fcentrera till det valda objektet.

Det finns tillräckligt med kombinationer för första gången. Varsågod:

Spellägeskontrollknappar. Allt här är intuitivt. Klickade på Spela - spelet startade, såvida du naturligtvis inte trasslat till någonstans... Spelscenstruktur och föremål. Det är här allt du använder i en specifik nivå av spelet visas. Modeller, kameror, lampor etc.

Egenskapsfönster för det valda objektet. Från den kan du styra och konfigurera valfritt valt objekt i scenen. Till exempel, när det gäller en ljuskälla, justera ljusstyrkan på ljuset, dess nyans, typen av skuggor etc. Det räcker som en ytbas. Andra gränssnittselement kommer att förklaras när specifika spel skapas.

Vårt första projekt kommer att skapa ett steg-för-steg logikspel, vars mekanik liknar den mobila Hitman Go. Slutresultatet kommer att se ut så här:

Vi ses i nästa lektion!

Fler inlägg om samma ämne:


  • Hur man infogar en bild i Word: justering och...

Publikationer om ämnet

  • Den mest lönsamma tanken i World of Tanks Den mest lönsamma tanken i World of Tanks

    Genom att delta i striderna i stridsvagnsvärlden ger varje stridsvagn en viss kredit (silverodling), som kan användas...

  • The Elder Scrolls V: Skyrim The Elder Scrolls V: Skyrim

    Hus och gods i Skyrim Du kan inte bara rusa runt i Skyrims territorium med vapen och skära ut, med eller utan instruktioner, allt som rör sig. Här...