Sukurkite savo pirmąjį pagrindinį „Android“ žaidimą vos per 7 minutes (naudodamiesi „Unity“)

Autorius: Lewis Jackson
Kūrybos Data: 11 Gegužė 2021
Atnaujinimo Data: 1 Liepos Mėn 2024
Anonim
How to make a Video Game in Unity - BASICS (E01)
Video.: How to make a Video Game in Unity - BASICS (E01)

Turinys


Padaryti visiškai veikiantį „Android“ žaidimą yra daug lengviau, nei galite pamanyti. Raktas į sėkmingą „Android“ ar bet kokio tipo plėtrą yra žinoti, ko norite pasiekti, ir rasti reikiamas priemones bei įgūdžius, kad tai padarytumėte. Eikite mažiausio pasipriešinimo keliu ir turėkite omenyje aiškų tikslą.

Kai reikia kurti žaidimus, geriausias įrankis, mano manymu, yra „Vienybė“. Taip, galite kurti žaidimą naudodamiesi „Android Studio“, tačiau, jei nebūsite patyrę su „Java“ ir „Android SDK“, tai bus įkalnė. Turėsite suprasti, ką daro užsiėmimai. Turėsite naudoti pasirinktinius rodinius. Jūs pasitikėsite keliomis papildomomis bibliotekomis. Sąrašas tęsiasi.

„Unity“ yra labai profesionalus įrankis, suteikiantis daugumai daugiausia „Play“ parduotuvėje parduodamų pavadinimų.

Kita vertus, didžiąją dalį darbo už jus daro vienybė. Tai yra žaidimo variklis, reiškiantis, kad visa fizika ir daugelis kitų funkcijų, kurias galbūt norėsite naudoti, jau yra pasirūpinta. Tai ne tik platforma, bet ir labai patogi pradedantiesiems mėgėjams ir indie kūrėjams.


Tuo pačiu metu „Unity“ yra labai profesionalus įrankis, suteikiantis daugumai daugiausia „Play“ parduotuvėje parduodamų pavadinimų. Čia nėra jokių apribojimų ir nėra rimtos priežasties apsunkinti gyvenimą sau. Tai taip pat nemokama!

Norėdami parodyti, koks lengvas žaidimo kūrimas naudojant „Unity“, aš jums parodysiu, kaip padaryti savo pirmąjį „Android“ žaidimą vos per 7 minutes.

Ne - aš nesiruošiu paaiškinti kaip tai padaryti per 7 minutes. Aš einu į daryk per 7 minutes. Jei ir jūs sekate, galėsite atlikti visiškai tą patį!

Atsisakymas: prieš mums pradedant, aš tiesiog noriu pabrėžti, kad šiek tiek sukčiauju. Nors žaidimo kūrimas užtruks 7 minutes, daroma prielaida, kad jau esate įdiegę „Unity“ ir viską susikūrę. Bet aš nepaliksiu jūsų pakabinęs: išsamią instrukciją, kaip tai padaryti, galite rasti apsilankę.


Pridėjus spritų ir fizikos

Pradėkite du kartus spustelėję „Unity“, kad paleistumėte. Net ilgiausia kelionė prasideda vienu žingsniu.

Dabar sukurkite naują projektą ir įsitikinkite, kad pasirinkote „2D“. Kai tik pateksite, jus pasitiks keli skirtingi langai. Tai daro daiktus. Mes neturime laiko paaiškinti, todėl tiesiog vykdykite mano nurodymus ir pasirinksite, kai eisime.

Pirmas dalykas, kurį norėsite padaryti, yra sukurti „personažą“. Lengviausias būdas tai padaryti yra nupiešti kvadratą. Mes pateiksime tai pora akių. Jei norite būti dar greitesnis, tiesiog galite iš kažkur patraukti jums patinkančią spyruoklę.

Išsaugokite šį rašinį ir tiesiog nuvilkite jį į „sceną“, įdėdami jį į didžiausią langą. Pastebėsite, kad jis pasirodo ir „hierarchijos“ kairėje.

Dabar norime sukurti keletą platformų. Vėlgi, mes susitvarkysime su paprastu kvadratu ir galėsime pakeisti šios laisvos rankos dydį, kad padarytume sienas, platformas ir tai, ką jūs turite.

Ten mes einam, gražu. Nuleisk jį taip, kaip ką tik darei.

Mes jau turime tai, kas atrodo kaip „žaidimas“. Spustelėkite paleisti ir dabar turėtumėte pamatyti statinę sceną.

Tai galime pakeisti spustelėję žaidėją ir žiūrėdami į dešinę, į langą, vadinamą „inspektoriumi“. Čia keičiame „GameObjects“ savybes.

Pasirinkite „Pridėti komponentą“, tada pasirinkite „Fizika 2D>„ RigidBody2D “. Jūs ką tik pridėjote fiziką prie savo grotuvo! Tai mums būtų nepaprastai sunku padaryti savarankiškai ir tai iš tikrųjų pabrėžia Vienybės naudingumą.

Mes taip pat norime pataisyti savo orientaciją, kad personažas nesisuktų ir nesisuktų. Pasirinkus grotuvą, inspektoriuje suraskite „apribojimus“ ir pažymėkite langelį, kad įšaldytumėte sukimąsi Z. Dabar spustelėkite dar kartą žaisti ir turėtumėte surasti žaidėją, kuris dabar nukrito iš dangaus į savo begalinę bausmę.

Skirkite šiek tiek laiko apmąstyti, kaip tai buvo lengva: tiesiog pritaikę šį scenarijų, vadinamą „RigidBody2D“, turime visiškai funkcionuojančią fiziką. Jei tą patį scenarijų pritaikytume apvaliai formai, jis taip pat riedėtų ir net atšoktų. Įsivaizduokite, kad patys užkoduosite ir koks tai dalyvaus!

Norėdami sustabdyti mūsų personažo kritimą per grindis, turėsite pridėti susidūrimo įrankį. Iš esmės tai yra tvirtas formos kontūras. Norėdami tai pritaikyti, pasirinkite grotuvą, spustelėkite „Pridėti komponentą“ ir šį kartą pasirinkite „Fizika 2D>„ BoxCollider2D “.

Skirkite šiek tiek laiko apmąstyti, kaip tai buvo lengva: tiesiog pritaikę šį scenarijų, vadinamą „RigidBody2D“, turime visiškai funkcionuojančią fiziką.

Atlikite lygiai tą patį su platforma, spustelėkite žaisti ir tada jūsų personažas turėtų nukristi ant tvirto pagrindo. Nesunku!

Dar vienas dalykas: norėdami įsitikinti, kad kamera seka mūsų grotuvą, nesvarbu, ar jie krinta, ar juda, norime ant grotuvo nuvilkti scenoje esantį kameros objektą (jis buvo sukurtas pradėjus naują projektą). Dabar hierarchijoje („GameObjects“ sąrašas kairėje) ketinate vilkti fotoaparatą taip, kad jis būtų įdubęs po grotuvu. Kamera dabar yra „GameObject“ žaidėjo vaikas, tai reiškia, kad žaidėjui judant, taip pat bus ir fotoaparatui.

Jūsų pirmasis scenarijus

Mes ketiname padaryti pagrindinį begalybės bėgiką ir tai reiškia, kad mūsų veikėjas turėtų judėti tiesiai per ekraną, kol jie nepasieks kliūties. Tam mums reikia scenarijaus. Taigi dešiniuoju pelės mygtuku spustelėkite aplanko Turtas apačioje ir sukurkite naują aplanką pavadinimu „Skriptai“. Dabar vėl spustelėkite dešiniuoju pelės mygtuku ir pasirinkite „Kurti> C # scenarijus“. Vadinkite tai „PlayerControls“.

Dažniausiai mūsų sukurti scenarijai apibrėžs specifinį „GameObjects“ elgesį.

Dabar dukart spustelėkite savo naują scenarijų ir jis atsidarys „Visual Studio“, jei viską nustatysite teisingai.

Čia jau yra koks nors kodas, kuris yra „katilinės plokštės kodas“. Tai reiškia, kad tai kodas, kurį turėsite naudoti beveik kiekviename scenarijuje, todėl jis yra paruoštas užpildyti, kad sutaupytumėte laiko. Dabar pridėsime naują objektą su šia eilute virš negaliojančios pradžios ():

viešas Rigidbody2D rb;

Tada įdėkite šią sekančią kodo eilutę į metodą Pradėti (), kad rastumėte tvirtą kūną. Tai iš esmės nurodo „Unity“ rasti fiziką, pridėtą prie „GameObject“, su kuria šis scenarijus bus susietas (mūsų žaidėjas, žinoma). Pradėti () yra metodas, kuris vykdomas iškart sukūrus naują objektą ar scenarijų. Raskite fizikos objektą:

rb = „GetComponent“();

Pridėkite šį atnaujinimo () vidų:

rb.velocity = naujas „Vector2“ (3, rb.velocity.y);

Atnaujinimas () atnaujinamas pakartotinai, todėl bet koks čia esantis kodas vėl ir vėl kartosis, kol objektas bus sunaikintas. Visa tai sako, kad mes norime, kad mūsų tvirtas kūnas turėtų naują vektorių, kurio greitis y ašyje būtų toks pat (rb.velocity.y), bet horizontalioje ašyje būtų „3“. Tobulėdami tikriausiai ateityje naudosite „FixedUpdate ()“.

Išsaugokite tai ir grįžkite į Vienybę. Spustelėkite grotuvo simbolį, tada inspektoriuje pasirinkite Pridėti komponentą> Skriptai, tada - naują scenarijų. Spustelėkite žaisti ir klesti! Dabar jūsų personažas turėtų judėti atbrailos krašto link kaip lemmingas.

Pastaba: jei kuris iš šių dalykų atrodo klaidinantis, tiesiog žiūrėkite vaizdo įrašą, kad pamatytumėte, kaip viskas daroma - tai padės!

Labai paprastas žaidėjo indėlis

Jei norime pridėti šuolio funkciją, tai galime padaryti labai paprastai, naudodami tik vieną papildomą kodo bitą:

if (Input.GetMouseButtonDown (0)) {rb.velocity = new Vector2 (rb.velocity.x, 5); }

Tai taikoma atnaujinimo metodui ir sako, kad „jei žaidėjas paspaudžia“, tada pridėkite y ašies greitį (reikšmė 5). Kai mes naudojame, jei viskas, kas yra skliausteliuose, naudojama kaip tikras ar klaidingas testas. Jei minėtų skliaustų viduje esanti logika yra teisinga, tada bus naudojamas kodas, pateiktas toliau pateiktuose skliausteliuose. Tokiu atveju, jei žaidėjas spustelėja pelę, greitis pridedamas.

„Android“ nuskaito kairįjį pelės paspaudimą kaip bakstelėjimą bet kurioje ekrano vietoje! Taigi dabar jūsų žaidime yra pagrindiniai čiaupo valdikliai.

Savo pagrindų suradimas

Iš esmės to pakanka, kad būtų sukurtas „Flappy Birds“ klonas. Įmeskite keletą kliūčių ir išmokite sunaikinti žaidėją, kai jis liečia jas. Viršuje pridėkite balą.

Jei to nepaisysite, ateityje nė vienas iššūkis nebus per didelis

Bet mes turime šiek tiek daugiau laiko, todėl galime tapti ambicingesni ir vietoj jo sukurti begalinio bėgiko tipo žaidimą. Šiuo metu vienintelis blogas dalykas yra tai, kad bakstelėjimas šokinėja peršokti net tada, kai žaidėjas neliečia grindų, todėl jis iš esmės gali skristi.

Tai ištaisyti tampa šiek tiek sudėtingesnė, tačiau tai yra taip sunku, kaip ir Vienybei. Jei to nepaisysite, ateityje nė vienas iššūkis nebus per didelis.

Virš atnaujinimo () metodo pridėkite šį kodą prie scenarijaus:

„Public Transform groundCheck“; public Transform startPosition; viešas plūdurų gruntasCheckRadius; viešas „LayerMask whatIsGround“; privatus bukas ant žemės;

Pridėkite šią eilutę prie naujinimo metodo virš if teiginio:

onGround = Physics2D.OverlapCircle (groundCheck.position, groundCheckRadius, whatIsGround);

Galiausiai pakeiskite šią eilutę taip, kad ji apimtų && onGround:

if („Input.GetMouseButtonDown“ (0) && onGround) {

Visas dalykas turėtų atrodyti taip:

viešosios klasės „PlayerControls“: „MonoBehaviour“ {public Rigidbody2D rb; „Public Transform groundCheck“; public Transform startPosition; viešas plūdurų gruntasCheckRadius; viešas „LayerMask whatIsGround“; privatus bukas ant žemės; negaliojanti pradžia () {rb = „GetComponent“(); } negaliojantis atnaujinimas () {rb.velocity = new Vector2 (3, rb.velocity.y); onGround = Physics2D.OverlapCircle (groundCheck.position, groundCheckRadius, whatIsGround); if (Input.GetMouseButtonDown (0) && onGround) {rb.velocity = new Vector2 (rb.velocity.x, 5); }}}

Tai, ką mes darome, sukuria naują transformaciją - padėtį erdvėje - tada nustatome jos spindulį ir klausiame, ar ji nesutampa su sluoksniu, vadinamu žeme. Tada keičiame loginio vertę (kuri gali būti teisinga ar klaidinga) priklausomai nuo to, ar taip yra.

Taigi, „onGround“ yra tiesa, jei transformacija, vadinama „groundCheck“, sutampa su žemės sluoksniu.

Jei spustelėsite išsaugoti, o tada grįšite į „Unity“, dabar turėtumėte pamatyti, kad pasirinkdami grotuvą inspektoriuje turite daugiau galimybių. Šiuos viešuosius kintamuosius galima pamatyti pačioje Vienybėje ir tai reiškia, kad mes galime juos nustatyti taip, kaip mums patinka.

Dešiniuoju pelės mygtuku spustelėkite kairėje esančią hierarchiją, kad sukurtumėte naują tuščią objektą, tada vilkite jį taip, kad jis būtų tiesiai po grotuvu Scenos lange, kuriame norite aptikti grindis. Pervardykite objektą „Check Ground“ ir padarykite jį grotuvo vaiku kaip ir jūs su fotoaparatu. Dabar jis turėtų sekti žaidėju, tikrindamas grindis.

Dar kartą pasirinkite grotuvą ir inspektoriuje vilkite naują „Check Ground“ objektą į vietą, kur sakoma „groundCheck“. „Transformacija“ (padėtis) dabar bus lygi naujo objekto padėčiai. Kai esate čia, įveskite 0,1, kur nurodomas spindulys.

Galiausiai turime apibrėžti savo „žemės“ sluoksnį. Norėdami tai padaryti, pasirinkite anksčiau sukurtą reljefą, tada inspektoriaus viršuje, dešinėje, suraskite ten, kur rašoma „Sluoksnis: Numatytasis“. Spustelėkite šį išskleidžiamąjį laukelį ir pasirinkite „Pridėti sluoksnį“.

Dabar spustelėkite atgal ir šį kartą kaip platformos sluoksnį pasirinkite „žemė“ (pakartokite tai visoms kitoms jūsų slankiojančioms platformoms). Galiausiai, kur jūsų grotuve parašyta „Kas yra žemė“, taip pat pasirinkite pagrindinį sluoksnį.

Jūs sakote grotuvo scenarijui, kad patikrintumėte, ar mažas ekrano taškas sutampa su tuo sluoksniu. Dėl tos eilutės, kurią pridėjome anksčiau, veikėjas dabar šokinės tik tada.

Taigi, jei paspausite žaisti, galėsite mėgautis gana paprastu žaidimu, kuriame reikia spustelėti, kad šoktumėte reikiamu metu.

Tokiu atveju, jei paspausite žaisti, galėsite mėgautis gana paprastu žaidimu, kuriame reikia spustelėti, kad šoktumėte reikiamu metu. Jei tinkamai nustatysite „Unity“ naudodami „Android SDK“, turėtumėte sugebėti tai sukurti ir paleisti, o tada žaisti išmaniajame telefone, bakstelėdami ekraną, kad šoktumėte.

Kelias į priekį

Akivaizdu, kad dar daug ką reikia pridėti, kad tai būtų visavertis žaidimas. Žaidėjas turėtų sugebėti mirti ir atsigauti. Norėtume pridėti papildomų lygių ir dar daugiau.

Mano tikslas čia buvo parodyti jums, kaip greitai jūs galite sukurti kažką pagrindinio ir paleisti. Vykdydami šias instrukcijas, jūs turėtumėte sugebėti greitai sukurti savo begalinį bėgiką, tiesiog leisdami Unity tvarkyti sunkius dalykus, tokius kaip fizika.

Jei žinote, ką norite sukurti, ir atliksite savo tyrimus, jums nereikia būti kodavimo vedliu, kad sukurtumėte padorų žaidimą!

Jei eate dažna kaitytoja, galite naudoti „Google Play“ knyga kaip vieną iš naujo kaitymo medžiago šaltinių. Jum paiekė, kad „Play Book“ dabar turi keletą beta funkcijų, ukurtų atižvelgiant į unkiu kai...

Daugeli „Android“ vartotojų - net tie, kurie niekada gyvenime neukūrė programo - jau žino apie „Android“ kūrėjų parinkti. Turite žinoti apie šį O kyrių, kai kuriate programa arba norite atlikti tokiu ...

Būtinai Perskaitykite