Vytvořte svou první základní hru pro Android za pouhých 7 minut (s Unity)

Autor: Lewis Jackson
Datum Vytvoření: 11 Smět 2021
Datum Aktualizace: 1 Červenec 2024
Anonim
Vytvořte svou první základní hru pro Android za pouhých 7 minut (s Unity) - Zprávy
Vytvořte svou první základní hru pro Android za pouhých 7 minut (s Unity) - Zprávy

Obsah


Vytvoření plně funkční hry pro Android je mnohem jednodušší, než si možná myslíte. Klíčem k úspěšnému vývoji Androidu - nebo k jakémukoli vývoji - je vědět, čeho chcete dosáhnout, a najít potřebné nástroje a dovednosti k tomu. Vydejte se na cestu nejmenšího odporu a mějte na paměti jasný cíl.

Pokud jde o vytváření her, je podle mého názoru nejlepším nástrojem jednota. Ano, v Android Studio si můžete vytvořit hru, ale pokud nemáte zkušenosti s Java a sadou Android SDK, bude to boj o kopec. Musíte pochopit, co třídy dělají. Budete muset použít vlastní zobrazení. Budete se spolehnout na některé další knihovny. Seznam pokračuje.

Unity je vysoce profesionální nástroj, který ovládá drtivou většinu největších prodejních titulů v obchodě Play.

Jednota na druhé straně dělá většinu práce za vás. Jedná se o herní engine, což znamená, že o veškerou fyziku a mnoho dalších funkcí, které byste mohli chtít použít, je již postaráno. Je to platforma napříč platformou a je navržena tak, aby byla velmi vhodná pro začátečníky pro fandy a nezávislé vývojáře.


Unity je zároveň vysoce profesionální nástroj, který ovládá drtivou většinu největších prodejních titulů v obchodě Play. Nejsou zde žádná omezení a žádný dobrý důvod, proč vám život ztěžovat. Je to také zdarma!

Abychom demonstrovali, jak snadný vývoj her s Unity je, ukážu vám, jak si vyrobit první hru pro Android za pouhých 7 minut.

Ne - nebudu vysvětlit jak na to za 7 minut. Budu Udělej to za 7 minut. Pokud budete postupovat také, budete moci udělat přesně to samé!

Zřeknutí se odpovědnosti: než začneme, chci jen poukázat na to, že jsem trochu podváděl. Zatímco proces vytváření hry bude trvat 7 minut, předpokládá se, že jste již nainstalovali Unity a dostali všechno nastavené. Ale nenechám vás viset: najdete kompletní návod, jak to udělat znovu.


Přidávání skřítků a fyziky

Začněte dvojitým kliknutím na Unity pro jeho spuštění. I ta nejdelší cesta začíná jediným krokem.

Nyní vytvořte nový projekt a ujistěte se, že jste vybrali „2D“. Jakmile se nacházíte, budete uvítáni několika různými okny. Tohle dělají věci. Nemáme čas to vysvětlit, tak postupujte podle mých pokynů a vy si to vyzvednete, když jdeme.

První věcí, kterou budete chtít udělat, je vytvořit sprite, který bude vaší postavou. Nejjednodušší způsob, jak toho dosáhnout, je nakreslit čtverec. Dáme mu pár očí. Pokud chcete být ještě rychlejší, stačí odnud odpružit, jak se vám líbí.

Uložte tento sprite a poté jej jednoduše přetáhněte do „scény“ umístěním do největšího okna. Všimněte si, že se také objeví „vlevo“ v „hierarchii“.

Nyní chceme vytvořit několik platforem. Znovu se pokusíme udělat jednoduchý čtverec a budeme moci změnit velikost této ruky, aby se vytvořily zdi, platformy a co máte.

Tam jdeme, krásné. Vypusťte to stejným způsobem, jak jste právě udělali.

Už máme něco, co vypadá jako „hra“. Klikněte na play a prozatím byste měli vidět statickou scénu.

To můžeme změnit kliknutím na našeho hráče sprite a pohledem doprava do okna zvaného „inspektor“. Zde změníme vlastnosti našich GameObjects.

Zvolte „Přidat komponentu“ a poté zvolte „Fyzika 2D> RigidBody2D“. Právě jste do svého hráče přidali fyziku! To by pro nás bylo neuvěřitelně obtížné dělat sami a opravdu to zdůrazňuje užitečnost Jednoty.

Chceme také opravit naši orientaci, aby se zabránilo otáčení postav a volnému pohybu kolem. V inspektoru najděte „omezení“ s vybraným hráčem a zaškrtnutím políčka zmrazte rotaci Z. Nyní klikněte znovu na tlačítko Přehrát a měli byste najít hráče, který nyní spadne z nebe do svého nekonečného zkázy.

Udělejte si chvilku a zamyslete se nad tím, jak snadné to bylo: jednoduše použitím tohoto skriptu s názvem „RigidBody2D“ máme plně funkční fyziku. Pokud bychom použili stejný skript na kulatý tvar, také by se točil a dokonce odrazil. Představte si, že byste kódovali sami a jak by to bylo zapojeno!

Chcete-li zabránit tomu, aby naše postava propadla podlahou, musíte přidat srážku. Toto je v podstatě pevný obrys tvaru. Chcete-li to použít, vyberte přehrávač, klikněte na „Přidat komponentu“ a tentokrát vyberte „Fyzika 2D> BoxCollider2D“.

Udělejte si chvilku a zamyslete se nad tím, jak snadné to bylo: jednoduše použitím tohoto skriptu s názvem „RigidBody2D“ máme plně funkční fyziku.

Udělejte přesně to samé s platformou, klikněte na tlačítko play a pak by vaše postava měla spadnout na pevnou zem. Snadný!

Ještě jedna věc: abychom se ujistili, že kamera sleduje našeho hráče, ať už padá nebo se pohybuje, chceme přetáhnout objekt kamery, který je ve scéně (to bylo vytvořeno, když jste zahájili nový projekt), na začátek přehrávače. Nyní v hierarchii (seznam GameObjects vlevo) přetáhnete kameru tak, aby byla odsazena pod přehrávačem. Kamera je nyní „dítětem“ přehrávače GameObject, což znamená, že když se hráč pohybuje, také kamera.

Váš první skript

Budeme dělat základní nekonečný běžec a to znamená, že by se naše postava měla pohybovat přes obrazovku, dokud nenarazí na překážku. K tomu potřebujeme skript. Takže klikněte pravým tlačítkem do složky Aktiva dole a vytvořte novou složku nazvanou „Skripty“. Nyní klikněte pravým tlačítkem a vyberte příkaz Vytvořit> C # skript. Říkejte tomu „PlayerControls“.

Skripty, které vytváříme, z velké části definují konkrétní chování našich GameObjectů.

Nyní dvakrát klikněte na nový skript a pokud se vše správně nastaví, otevře se v aplikaci Visual Studio.

Je zde již nějaký kód, kterým je „kód desky kotle“. To znamená, že je to kód, který budete muset použít téměř v každém skriptu, takže je připraven na naplnění, abyste ušetřili čas. Nyní přidáme nový objekt s tímto řádkem nad neplatný Start ():

public Rigidbody2D rb;

Poté umístěte tento další řádek kódu do metody Start () a najděte rigidbody. To v zásadě říká jednotě, aby našla fyziku připojenou k GameObject, ke které bude tento skript přidružen (samozřejmě náš hráč). Start () je metoda, která se spustí, jakmile je vytvořen nový objekt nebo skript. Vyhledejte fyzikální objekt:

rb = GetComponent();

Přidejte tuto aktualizaci ():

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

Update () se obnovuje opakovaně, takže jakýkoli kód zde poběží znovu a znovu, dokud není objekt zničen. To vše říká, že chceme, aby náš rigidní systém měl nový vektor se stejnou rychlostí na ose y (rb.velocity.y), ale s rychlostí 3 na vodorovné ose. Jak budete postupovat, budete pravděpodobně v budoucnosti používat „FixedUpdate ()“.

Uložte to a vraťte se zpět do Unity. Klikněte na postavu hráče a v inspektoru vyberte Přidat komponentu> Skripty a poté svůj nový skript. Klikněte na play a boom! Vaše postava by se nyní měla pohybovat k okraji římsy jako lemování.

Poznámka: Pokud je některý z těchto zvuků matoucí, podívejte se na video a podívejte se, jak se všechno dělá - pomůže to!

Velmi základní vstup hráče

Pokud chceme přidat funkci skoku, můžeme to udělat velmi jednoduše pomocí pouze jednoho dalšího kódu:

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

To je součástí metody aktualizace a říká se, že „pokud hráč klikne“, přidejte na osu y rychlost (s hodnotou 5). Když použijeme, pokud cokoli, co následuje uvnitř závorek, se použije jako druh pravdivého nebo nepravdivého testu. Pokud je logika uvnitř uvedených závorek pravdivá, spustí se kód v následujících složených závorkách. V tomto případě, pokud hráč klepne na myš, přidá se rychlost.

Android čte levým kliknutím myši klepnutím kdekoli na obrazovce! Nyní má vaše hra základní ovládání klepnutím.

Nalezení vaší základny

To je v podstatě dost pro vytvoření klonu Flappy Birds. Házejte nějaké překážky a naučte se, jak zničit hráče, když se jich dotkne. K tomu přidejte skóre.

Pokud se vám to podaří, nebude v budoucnu příliš velká výzva

Ale máme trochu více času, abychom mohli být ambicióznější a místo toho udělat nekonečnou hru typu běžce. Jediné, co je v současné době špatné, je to, že skok z klepání vyskočí, i když se hráč nedotýká podlahy, takže může v podstatě létat.

Náprava tohoto problému je o něco složitější, ale je to asi stejně těžké jako Unity. Pokud se vám to podaří, nebude v budoucnu příliš velká výzva.

Přidejte do skriptu nad metodu Update () následující kód:

public Transform groundCheck; public Transform startPosition; veřejné plovoucí hřištěCheckRadius; public LayerMask whatIsGround; soukromé bool onGround;

Přidejte tento řádek do metody aktualizace nad příkaz if:

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

Nakonec změňte následující řádek tak, aby obsahoval && onGround:

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

Celá věc by měla vypadat takto:

public class PlayerControls: MonoBehaviour {public Rigidbody2D rb; public Transform groundCheck; public Transform startPosition; veřejné plovoucí hřištěCheckRadius; public LayerMask whatIsGround; soukromé 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); }}}

Co zde děláme, je vytvoření nové transformace - pozice v prostoru - pak nastavíme její poloměr a zeptáme se, zda se překrývá s vrstvou zvanou země. Poté měníme hodnotu booleovské hodnoty (což může být pravda nebo nepravda) v závislosti na tom, zda tomu tak je nebo ne.

Takže onGround je pravda, pokud transformace zvaná groundCheck překrývá vrstvu vrstvy.

Pokud kliknete na tlačítko Uložit a vrátíte se zpět do Unity, měli byste nyní vidět, že máte v inspektoru více možností, když vyberete hráče. Tyto veřejné proměnné lze vidět zevnitř samotné Jednoty, což znamená, že je můžeme nastavit, jak se nám líbí.

Klikněte pravým tlačítkem myši v hierarchii na levé straně a vytvořte nový prázdný objekt a potom jej přetáhněte tak, aby byl právě pod přehrávačem v okně Scéna, kde chcete detekovat podlahu. Přejmenujte objekt „Check Ground“ a potom z něj udělejte dítě hráče stejně jako u fotoaparátu. Nyní by měl následovat hráče a kontrolovat podlahu pod sebou.

Vyberte hráče znovu a v inspektoru přetáhněte nový objekt Check Ground do prostoru, kde je uvedeno „groundCheck“. „Transformace“ (pozice) se nyní bude rovnat poloze nového objektu. Když jste tady, zadejte 0,1, kde je uveden poloměr.

Nakonec musíme definovat naši „pozemní“ vrstvu. Chcete-li to provést, vyberte terén, který jste vytvořili dříve, a poté v pravém horním rohu inspektora najděte místo, kde se říká „Vrstva: Výchozí“. Klikněte na toto rozbalovací pole a vyberte možnost Přidat vrstvu.

Nyní klikněte zpět a tentokrát vyberte jako vrstvu pro svoji platformu „zemi“ (opakujte to pro všechny ostatní platformy, na kterých se pohybujete). Nakonec, kde je na vašem přehrávači uvedeno „Co je Ground“, vyberte také zemní vrstvu.

Nyní říkáte skriptu přehrávače, aby zkontroloval, zda malý bod na obrazovce překrývá něco, co odpovídá této vrstvě. Díky tomu řádku, který jsme přidali dříve, postava nyní skočí, jen když je tomu tak.

A s tím, pokud narazíte na hru, můžete si užít docela základní hru, která vyžaduje, abyste kliknutím skočili ve správný čas.

S tím, pokud narazíte na hru, můžete si užít docela základní hru, která vyžaduje, abyste kliknutím skočili ve správný čas. Pokud nastavíte jednotu správně pomocí sady Android SDK, měli byste být schopni ji sestavit a spustit a poté hrát na svém smartphonu klepnutím na obrazovku, abyste skočili.

Cesta před námi

Je zřejmé, že k tomu, aby se z této hry stala plná hra, je toho ještě mnohem víc. Hráč by měl být schopen umřít a respawn. Chtěli bychom přidat další úrovně a další.

Mým cílem zde bylo ukázat vám, jak rychle dokážete uvést něco do provozu. Podle těchto pokynů byste měli být schopni vytvořit svého nekonečného běžce v žádném okamžiku jednoduše tím, že necháte Unity zvládnout tvrdé věci, jako je fyzika.

Pokud víte, co chcete vytvořit a provést svůj výzkum, nemusíte být průvodcem kódováním, abyste vytvořili slušnou hru!

Galaxy 10, 10 Plu a 10e mají mnoho polečných věcí. Všechny mají konektor pro luchátka, jou napájeny čipovou adou napdragon 855 nebo Exyno 9820 a mají tupeň krytí...

Google Pixel 3 a Pixel 3 XL mohou být nejobvyklejšími telefony na tomto eznamu. Zatímco více martphonů přidává enzory na zadní traně, karty Pixel 3 a Pixel 3 XL jed...

Zajímavý Dnes