Zostavte svoju prvú základnú hru pre Android za 7 minút (s Unity)

Autor: Lewis Jackson
Dátum Stvorenia: 11 Smieť 2021
Dátum Aktualizácie: 1 V Júni 2024
Anonim
Zostavte svoju prvú základnú hru pre Android za 7 minút (s Unity) - Správy
Zostavte svoju prvú základnú hru pre Android za 7 minút (s Unity) - Správy

Obsah


Vytvorenie plne funkčnej hry pre Android je oveľa jednoduchšie, než si myslíte. Kľúčom k úspešnému vývoju systému Android - alebo k akémukoľvek vývoju - je vedieť, čo chcete dosiahnuť, a nájsť potrebné nástroje a zručnosti na to. Choďte po ceste najmenšieho odporu a majte na pamäti jasný cieľ.

Pokiaľ ide o vytváranie hier, najlepším nástrojom podľa môjho názoru je jednota. Áno, hru si môžete vytvoriť v aplikácii Android Studio, ale pokiaľ nemáte skúsenosti s programom Java a súpravou Android SDK, bude to boj o stúpanie. Musíte pochopiť, čo robia triedy. Budete musieť použiť vlastné zobrazenia. Spoliehate sa na niektoré ďalšie knižnice. Zoznam pokračuje.

Unity je vysoko profesionálny nástroj, ktorý ovláda drvivú väčšinu najpredávanejších titulov v Obchode Play.

Jednota na druhej strane robí väčšinu práce za vás. Jedná sa o herný engine, čo znamená, že o všetku fyziku a mnoho ďalších funkcií, ktoré by ste mohli chcieť použiť, sa už starajú. Je to multiplatformová platforma a je navrhnutá tak, aby bola veľmi vhodná pre začiatočníkov pre fanúšikov fandov a nezávislých vývojárov.


Unity je zároveň vysoko profesionálnym nástrojom, ktorý ovláda drvivú väčšinu najpredávanejších titulov v Obchode Play. Nie sú tu žiadne obmedzenia a žiadny dobrý dôvod na to, aby sa vám život sťažil. Je to zadarmo!

Aby sme demonštrovali, aký ľahký je vývoj hry s Unity, ukážem vám, ako si vyrobiť svoju prvú hru pre Android za 7 minút.

Nie - nebudem vysvetliť ako to urobiť za 7 minút. Chystám sa urob to za 7 minút. Ak budete postupovať tiež, budete môcť urobiť to isté!

dementi: predtým, ako začneme, chcem len zdôrazniť, že som trochu podvádzal. Zatiaľ čo proces tvorby hry bude trvať 7 minút, predpokladá sa, že ste už nainštalovali Unity a dostali ste všetko nastavené. Ale nenechám ťa visieť. Úplný návod, ako to urobiť, nájdete.


Pridanie spritov a fyziky

Začnite dvojitým kliknutím na Unity. Aj najdlhšia cesta začína jedným krokom.

Teraz vytvorte nový projekt a nezabudnite zvoliť „2D“. Po vstupe vás privítajú rôzne okná. Tieto veci robia veci. Nemáme čas to vysvetliť, tak postupujte podľa mojich pokynov a vy si ho vyzdvihnete, keď ideme.

Prvá vec, ktorú budete chcieť urobiť, je vytvoriť sprite, ktorý bude vašou postavou. Najjednoduchší spôsob, ako to urobiť, je nakresliť štvorec. Dáme mu pár očí. Ak chcete byť ešte rýchlejší, môžete odniesť niekoho, kto sa vám páči.

Uložte tento sprite a potom ho jednoducho pretiahnite do „scény“ umiestnením do najväčšieho okna. Všimnite si, že sa objaví aj vľavo v „hierarchii“.

Teraz chceme vytvoriť niekoľko platforiem. Znova sa budeme venovať jednoduchému štvorcu a budeme môcť zmeniť veľkosť tohto ruky, aby ste vytvorili steny, platformy a čo máte.

Tam ideme, krásne. Nechajte to tak, ako ste práve urobili.

Už máme niečo, čo vyzerá ako „hra“. Kliknite na tlačidlo play a zatiaľ by ste mali vidieť statickú scénu.

Môžeme to zmeniť kliknutím na sprite nášho hráča a pohľadom doprava do okna nazývaného „inšpektor“. Tu zmeníme vlastnosti našich GameObjects.

Vyberte možnosť „Pridať komponent“ a potom vyberte „Fyzika 2D> RigidBody2D“. Do prehrávača ste práve pridali fyziku! Bolo by to pre nás neskutočne ťažké urobiť sami a skutočne by sa tým zdôraznila užitočnosť Jednoty.

Chceme tiež napraviť našu orientáciu, aby sme zabránili roztočeniu a voľnému pohybu kolies okolo. Nájdite v inšpektori „obmedzenia“ s vybratým hráčom a začiarknutím políčka zastavte rotáciu Z. Teraz kliknite znova na tlačidlo hrať a mali by ste nájsť hráča, ktorý teraz spadne z oblohy do svojho nekonečného záhuby.

Urobte si chvíľku a zamyslite sa nad tým, aké ľahké to bolo: jednoducho použitím tohto skriptu s názvom „RigidBody2D“ máme plne funkčnú fyziku. Keby sme použili ten istý skript na guľatý tvar, tiež by sa točilo a dokonca odrazilo. Predstavte si, že kódujete sami a aké by to bolo zapojené!

Ak chcete zabrániť tomu, aby naša postava prepadla podlahou, musíte pridať kolízora. Toto je v podstate pevný obrys tvaru. Ak chcete použiť tento postup, vyberte prehrávač, kliknite na „Pridať komponent“ a tentokrát vyberte „Fyzika 2D> BoxCollider2D“.

Urobte si chvíľku a zamyslite sa nad tým, aké ľahké to bolo: jednoducho použitím tohto skriptu s názvom „RigidBody2D“ máme plne funkčnú fyziku.

Urobte to isté s platformou, kliknite na tlačidlo hrať a potom by vaša postava mala spadnúť na pevnú zem. Jednoduché!

Ešte jedna vec: aby sme sa ubezpečili, že kamera sleduje nášho hráča bez ohľadu na to, či padá alebo sa pohybuje, chceme pretiahnuť objekt kamery, ktorý je na scéne (to sa vytvorilo pri spustení nového projektu) na vrch prehrávača. Teraz v hierarchii (zoznam GameObjects vľavo) presuniete fotoaparát tak, aby bol odsadený pod prehrávačom. Fotoaparát je teraz „dieťaťom“ prehrávača GameObject, čo znamená, že keď sa hráč pohne, aj kamera.

Váš prvý skript

Urobíme základný nekonečný bežec a to znamená, že naša postava by sa mala pohybovať po celej obrazovke, kým nenarazí na prekážku. Na to potrebujeme skript. Pravým tlačidlom myši kliknite v dolnej časti na priečinok Aktíva a vytvorte nový priečinok s názvom Skripty. Teraz kliknite pravým tlačidlom myši a vyberte možnosť Vytvoriť> C # skript. Hovorte tomu „PlayerControls“.

Skripty, ktoré vytvoríme, z väčšej časti definujú konkrétne správanie našich GameObjects.

Teraz dvakrát kliknite na nový skript a otvorí sa vo Visual Studio, ak všetko nastavíte správne.

Existuje už nejaký kód, ktorým je „kód dosky kotla“. To znamená, že je to kód, ktorý budete musieť použiť takmer v každom skripte, takže je pripravený na naplnenie, aby ste ušetrili čas. Teraz pridáme nový objekt s týmto riadkom nad neplatný začiatok ():

verejné Rigidbody2D rb;

Potom umiestnite tento ďalší riadok kódu do metódy Start (), aby ste našli rigidbody. Toto v podstate hovorí jednote, aby našla fyziku pripojenú k GameObject, s ktorou bude tento skript spojený (samozrejme náš hráč). Start () je metóda, ktorá sa vykoná ihneď po vytvorení nového objektu alebo skriptu. Vyhľadajte fyzický objekt:

rb = GetComponent();

Pridajte túto aktualizáciu ():

rb.velocity = nový Vector2 (3, rb.velocity.y);

Aktualizácia () sa obnovuje opakovane, takže akýkoľvek kód tu bude bežať znova a znova, až kým nebude objekt zničený. To všetko hovorí, že chceme, aby náš rigidný orgán mal nový vektor s rovnakou rýchlosťou na osi y (rb.velocity.y), ale s rýchlosťou 3 na horizontálnej osi. Ako budete postupovať, pravdepodobne budete v budúcnosti používať „FixedUpdate ()“.

Uložte to a vráťte sa späť k jednote. Kliknite na postavu hráča a potom v inšpektore vyberte možnosť Pridať komponent> Skripty a potom nový skript. Kliknite na tlačidlo play a boom! Vaša postava by sa teraz mala pohnúť smerom k okraju rímsy ako lemovanie.

Poznámka: Ak je niečo z toho mätúce, pozrite si video a pozrite sa na všetko, čo sa deje - pomôže!

Veľmi jednoduchý vstup hráča

Ak chceme pridať funkciu skoku, môžeme to urobiť veľmi jednoducho pomocou jedného ďalšieho kódu:

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

Ide o metódu aktualizácie a hovorí sa, že „ak hráč klikne“, pridajte rýchlosť na osi y (s hodnotou 5). Keď použijeme, ak sa niečo, čo nasleduje v zátvorkách, používa ako druh pravdivého alebo nepravdivého testu. Ak je logika v uvedených zátvorkách pravdivá, spustí sa kód v nasledujúcich zložených zátvorkách. V takom prípade, ak hráč klikne na myš, pridá sa rýchlosť.

Android číta kliknutím ľavým tlačidlom myši kdekoľvek na obrazovku! Vaša hra má teraz základné ovládacie prvky klepnutia.

Nájdenie vašej základne

V podstate to stačí na vytvorenie klonu Flappy Birds. Zahoď nejaké prekážky a nauč sa, ako zničiť hráča, keď sa ho dotkne. K tomu pridajte skóre.

Ak sa vám to podarí, v budúcnosti nebude príliš veľká výzva

Máme však trochu viac času, aby sme mohli byť ambicióznejší a namiesto toho vytvoriť nekonečnú hru typu bežca. Jediné, čo je zlé na tom, čo momentálne máme, je to, že poklepaním na skok skočí, aj keď sa hráč nedotýka podlahy, takže v podstate môže lietať.

Náprava tohto problému je o niečo zložitejšia, ale je to asi také ťažké ako jednota. Ak sa vám to podarí, v budúcnosti nebude príliš veľká výzva.

Pridajte do svojho skriptu nad metódu Update () nasledujúci kód:

verejná transformácia GroundCheck; public Transform startPosition; verejné plávajúce ihriskoCheckRadius; public LayerMask whatIsGround; súkromné ​​bool onGround;

Pridajte tento riadok do metódy aktualizácie nad príkaz if.

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

Nakoniec zmeňte nasledujúci riadok tak, aby obsahoval && onGround:

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

Celá vec by mala vyzerať takto:

public class PlayerControls: MonoBehaviour {public Rigidbody2D rb; verejná transformácia GroundCheck; public Transform startPosition; verejné plávajúce ihriskoCheckRadius; public LayerMask whatIsGround; súkromné ​​bool onGround; void Start () {rb = GetComponent(); } void Update () {rb.velocity = new Vector2 (3, rb.velocity.y); onGround = Physics2D.OverlapCircle (groundCheck.position, groundCheckRadius, whatIsGround); if (Input.GetMouseButtonDown (0) && onGround) {rb.velocity = nový Vector2 (rb.velocity.x, 5); }}}

To, čo tu robíme, je vytvorenie novej transformácie - polohy v priestore - potom nastavíme jej polomer a opýtame sa, či prekrýva vrstvu nazývanú zem. Potom meníme hodnotu logickej hodnoty (ktorá môže byť pravdivá alebo nepravdivá) v závislosti od toho, či je to tak alebo nie.

Takže onGround je pravda, ak transformácia zvaná groundCheck prekrýva vrstvu vrstvy.

Ak kliknete na tlačidlo Uložiť a potom sa vrátite k jednote, mali by ste teraz, keď vyberiete hráča, mať v inšpektori k dispozícii viac možností. Tieto verejné premenné sú viditeľné zvnútra Jednoty, čo znamená, že ich môžeme nastaviť, akokoľvek sa nám to páči.

Kliknutím pravým tlačidlom myši v hierarchii nad vľavo vytvoríte nový prázdny objekt a potom ho potiahnite tak, aby sa nachádzal pod prehrávačom v okne Scéna, kde chcete zistiť podlahu. Premenujte objekt „Check Ground“ a potom z neho urobte dieťa, rovnako ako to urobili s fotoaparátom. Teraz by malo nasledovať hráča a skontrolovať podlahu pod ňou.

Znova vyberte prehrávač a v inšpektore pretiahnite nový objekt Check Ground do priestoru, kde sa hovorí „groundCheck“. „Transformácia“ (pozícia) sa teraz bude rovnať pozícii nového objektu. Keď ste tu, zadajte 0,1, kde je uvedený polomer.

Nakoniec musíme definovať našu „pozemnú“ vrstvu. Ak to chcete urobiť, vyberte terén, ktorý ste vytvorili skôr, a potom v pravom hornom rohu inšpektora nájdite, kde sa hovorí „Vrstva: Predvolené“. Kliknite na toto rozbaľovacie pole a vyberte možnosť Pridať vrstvu.

Teraz kliknite naspäť a tentoraz vyberte ako vrstvu platformy platformu „zem“ (opakujte to pre všetky ostatné platformy, na ktorých sa pohybujete). Nakoniec, kde je na prehrávači nápis „Čo je to Ground“, vyberte tiež zemnú vrstvu.

Teraz hovoríte skriptu prehrávača, aby skontroloval, či malý bod na obrazovke prekrýva niečo, čo sa zhoduje s touto vrstvou. Vďaka tomu riadku, ktorý sme pridali skôr, postava teraz skočí, len keď je to tak.

A s tým, ak zasiahnete hru, môžete si užiť celkom jednoduchú hru, od ktorej musíte kliknúť a skočiť v pravý čas.

Vďaka tomu, ak stlačíte hru, si môžete užiť celkom jednoduchú hru, od ktorej musíte kliknúť a skočiť v pravý čas. Ak nastavíte svoju jednotu správne pomocou súpravy Android SDK, mali by ste byť schopní zostaviť a spustiť ju a potom hrať na svojom smartfóne klepnutím na obrazovku a skočiť.

Cesta pred nami

Je zrejmé, že na to, aby sa z tejto hry stala úplná hra, je toho ešte veľa. Hráč by mal byť schopný zomrieť a respawnovať. Chceli by sme pridať ďalšie úrovne a ďalšie.

Mojím cieľom tu bolo ukázať vám, ako rýchlo môžete získať niečo základné a funkčné. Podľa týchto pokynov by ste mali byť schopní vytvoriť svoj nekonečný bežec v žiadnom momente jednoducho tým, že necháte Unity zvládnuť tvrdé veci, napríklad fyziku.

Ak viete, čo chcete vybudovať a urobiť svoj výskum, nemusíte byť sprievodcom kódovaním, aby ste vytvorili slušnú hru!

Minulý rok bola humbuk veľký na to, aby a hodinky Google Pixel Watch putili polu Google Pixel 3. Avšak minulý rok me vôbec nevideli inteligentné hodinky Google a nepočuli me ...

Google tadia, nadchádzajúca platforma cloudových hier, bude môcť prevádzkovať všetky herné toky rýchloťou 4 K a rýchloťou 60 nímok / ....

Nové Príspevky