Creați un joc cu baloane în unitate utilizând microfonul

Ce veți crea

Introducere

În acest tutorial, veți învăța cum să creați un joc 2D folosind C # și Unity. Vom profita de sprijinul microfonului Unity pentru a îmbunătăți gameplay-ul jocului. Obiectivul jocului este simplu, ajungând pe cealaltă parte a nivelului, evitând obstacolele de-a lungul drumului. Jucătorul poate muta caracterul principal prin suflare pe microfonul dispozitivului, deplasându-l în sus.

Veți învăța următoarele aspecte ale dezvoltării jocului Unity în acest tutorial:

  • crearea unui proiect 2D în Unity
  • importă sprite
  • controalele microfonului
  • lucrul cu coliziuni fizice

1. Creați un proiect de unitate nouă

Deschideți Unitatea și selectați Proiect nou de la Fişier meniu pentru a deschide dialogul de proiect nou. Spuneți unității unde doriți să salvați proiectul și setațiConfigurați valorile prestabilite pentru: meniu la 2D.

 

2. Construiți setările

În pasul următor, vă prezentați interfața de utilizator a Unity. Setați proiectul pentru platforma preferată alegând Construiți setările de la Fişier meniu și selectarea platformei țintă.

3. Interfața utilizator unitate

Înainte de a începe, asigurați-vă că 2D buton în Scenă panou este evidențiat. De asemenea, puteți modifica rezoluția curentă în Joc panou.

De asemenea, ar trebui să vedeți panourile de lucru ale Unity, pe care le vom folosi în acest tutorial. Ia-ți un moment pentru a explora interfața de utilizator a Unity, cum ar fi Scenă, Joc, Ierarhie, Proiect, bunuri, și Inspector. O să le folosim mult în acest tutorial.

4. Interfața jocurilor

Interfața cu utilizatorul nostru va fi simplă. Următorul ecran vă oferă o imagine a activelor pe care le vom folosi și a modului în care interfața finală de utilizator a jocului va sfârși. Puteți găsi activele pe care le vom folosi în fișierele sursă din GitHub.


5. Limba de programare

Puteți folosi una dintre cele trei limbi de programare atunci când utilizați Unity, C #, UnityScript, o variantă de JavaScript și nuu. Fiecare dintre aceste limbi de programare are argumentele sale pro și contra și depinde de tine să decideți care dintre ele preferați. Preferința mea personală merge în limba de programare C # și aceasta este limba pe care o voi folosi în acest tutorial.

Dacă vă decideți să utilizați un alt limbaj de programare, asigurați-vă că ați aruncat o privire asupra exemplei Unity's Script Reference.

6. Active și efecte sonore

Înainte de a începe codificarea, trebuie să adăugăm activele proiectului Unity. Puteți face una din următoarele căi:

  • Selectați Importați un nou activ de la bunuri meniul
  • adăugați elementele în dosarul de materiale din proiect
  • trageți și plasați activele în fereastra proiectului

După finalizarea acestui pas, ar trebui să vedeți activele din proiectul dvs. bunuri dosar în Proiect panou.

Vom folosi o serie de sunete pentru a crea o experiență audio excelentă. Efectele sonore folosite în acest tutorial au fost obținute de la freesound.org.

7. Context

Începeți prin tragerea și plasarea fundalului în Ierarhie panou. Ar trebui să apară în mod automat în Scenă panou.


8. Dimensiunea camerei

Deoarece Scenă panoul este setat să afișeze o vizualizare 2D, veți observa că selectați Camera principală în Ierarhie arată o previzualizare a ceea ce aparatul foto va afișa. Puteți vedea, de asemenea, acest lucru în Joc vedere. Pentru a face vizibilă întreaga scenă, setați mărimea valoarea Camera principală la 4 în Inspector după cum se arată mai jos.

9. Fișa Sprite

Vom folosi o foaie de sprite pentru elementele interfeței de utilizare a jocului nostru. Unitatea are un editor de sprite care face folosirea spritelor o briza. Lucrarea utilizată în acest tutorial a fost obținută de la openclipart.org.

Importați operele de artă, selectați-o din bunuri panou și modificați Sprite Mode opțiunea pentru Multiplu în Inspector panou.

Faceți clic pe butonul etichetat Sprite Editor și setați Tip opțiunea pentru Automat.

10. Corpul rigid de vaca 2D

Cu foaia de sprite tăiată și gata de utilizare, faceți clic pe săgeata care apare atunci când este selectată foaia de sprite și alegeți sprite-ul vacăi, personajul principal al jocului nostru. Glisați-l spre scena pentru al adăuga.

Pentru a detecta coliziunile, cel puțin unul dintre obiectele de coliziune trebuie să aibă a Corpul rigid 2D componenta atașată la acesta. Pentru a adăuga unul la vacă, faceți clic pe Adăugați componenta buton în Inspector panou. Din lista de componente, selectați RigidBody 2D în Fizica 2D secțiune.

Verifică Unghiul fixat pentru a preveni rotirea vacei în cazul unei coliziuni. Nu vom folosi gravitatea fizică implicită în acest joc, ci vom simula propriul nostru. Schimba Scală gravitațională din 1 la 0 pentru a se asigura că gravitatea implicită nu afectează obiectul.

11. Adăugarea colizoarelor

Podeaua este folosită pentru a ne menține caracterul principal, după ce am adăugat fizica la joc. Creați un nou obiect de joc selectând Creați gol de la GameObject meniul.

Pentru a face ca etajul să fie detectat atunci când caracterul îl atinge, trebuie să adăugăm a Box Collider 2D componentă. Un collider este o formă de fizică care definește zona care declanșează o coliziune.

Selectați obiectul joc de podea în Ierarhie, deschide Inspector panou și faceți clic pe Adăugați componenta. Din lista de componente, selectați Box Collider 2D în Fizica 2D secțiune.

Schimba mărimea proprietate la X: 4.8 și Y: 0,05 pentru a crea un mic dreptunghi unde va fi poziționată vaca. În cele din urmă, adăugați a Box Collider 2D la obiectul jocului de vacă prin repetarea acestor pași.

12. Sursa audio de vaca

Un Sursă audio componenta este utilizată pentru a reda un clip audio atunci când playerul colectează steaua. Această componentă va citi clipul audio setat în opțiunile sale și îl va reda atunci când este sunat dintr - un script sau la început dacă Joacă pe Trezeste este selectată caseta de selectare.

Pentru a reda un sunet atunci când playerul colectează o stea, trebuie mai întâi să atașăm o stea Sursă audio componentă a acesteia. Selectați steaua din Ierarhie sau Scenă vizualiza, faceți clic pe Adăugați componenta buton în Inspector și selectați Sursă audio în Audio secțiune.

Întrucât dorim ca sunetul să se joace numai când jucătorul atinge steaua, trebuie să debifați Joacă pe Trezeste opțiune. Dați clic pe butonul mic din partea dreaptă, sub pictograma roată, pentru a selecta sunetul pe care dorim să-l jucăm.

13. Adăugarea de baloane

Baloanele reprezintă viața sau sănătatea personajului nostru principal. Când o mână se ciocnește cu vaca, va apărea unul din baloane pentru a indica faptul că a fost lovit și numărul de vieți a scăzut.

Trageți sprite-ul balonului de la bunuri la Ierarhie panou și apoi înapoi la bunuri. Acest lucru va crea o prefabricat din balon. Veți observa că textul devine albastru indicând că este acum un prefabricat. Prin crearea unui prefabricat, putem reutiliza balonul fără a folosi resurse suplimentare.

Selectați noul prefabricat și apăsați Comandă + D să o duplicați. Folosește Rotație unealta pentru a roti ușor baloanele așa cum se arată în captura de ecran de mai sus.

Grupează vacă și baloane pentru a le face mai ușor să le mișcăm. Pentru aceasta, trageți un balon din Ierarhie panou și puneți-l pe partea de sus a obiectului de joc de vaca din Ierarhie panou. Obiectul jocului de vacă este evidențiat pentru a indica faptul că aruncarea balonului pe el îl va adăuga ca un copil al obiectului jocului de vaci. Rezultatul este că mișcarea obiectului jocului de vaci mută și poziția baloanelor.

14. Adăugarea de obstacole

Mâinile sunt dușmani sau obstacole care trebuie evitate dacă jucătorul dorește să termine nivelul prin colectarea stelei. Mâinile se mișcă dintr-o parte în alta, lăsând un gol îngust în mijloc pentru ca vaca să treacă.

Deoarece mâinile sunt obiecte de joc pe care le vom folosi de mai multe ori, mai întâi îl convertim într-un prefabricat, așa cum am făcut-o cu baloanele. Urmați pașii de mai sus pentru a crea prefabricatul și utilizați instrumentele editorului pentru a poziționa mâinile așa cum se arată în captura de ecran de mai sus.

De asemenea, trebuie să adăugăm un collitor la fiecare mână pentru a detecta coliziunile. Pentru a adăuga colizorul, faceți clic pe Adăugați componenta buton în Inspector și selectați Box Collider 2D în Fizica 2D secțiune. Veți observa că în jurul mâinii apare o casetă verde atunci când o selectați pentru a indica că mâna are un atacator legat de ea.

Suntem, de asemenea, un sunet atunci când o mână se ciocnește cu vacă, popping un balon. Pentru a realiza acest lucru, trebuie mai întâi să adăugăm sunetul. Selectați mâna din Ierarhie sau Scenă vizualiza, faceți clic pe Adăugați componenta buton în Inspector și selectați Sursă audio de la Audio secțiune.

Detaliile componentei audio vor apărea în Inspector Panel. Faceți clic pe punctul de sub pictograma roată pentru a selecta sunetul corect.

15. Adăugarea stelei

Scopul jocului este să colectezi steaua la sfârșitul fiecărui nivel. Jucătorul poate mișca vaca în sus prin suflare pe microfonul dispozitivului.

Glisați steaua din bunuri panou și adăugați-l la Scenă. În Inspector„s Transforma , modificați valorile afișate în imaginea de mai jos pentru a poziționa steaua.

Aceasta va plasa steaua în partea de sus a nivelului. Pentru a detecta momentul în care vacile colectează steaua, trebuie să adăugăm un ciocnitor la fel cum am făcut deja de câteva ori. Adauga o Box Collider 2D la stea.

16. Adăugarea alertelor

Alertele sunt, de asemenea, obiecte de joc. Acestea sunt mesaje care informează jucătorul când nivelul a fost terminat sau jocul sa terminat.

Glisați alertele de la bunuri panou la Ierarhie și apoi înapoi la bunuri pentru a le converti într-o prefab. Mai târziu, în acest tutorial, vom adăuga un script la alerte și vom arăta modul în care sunt folosite. Nu uitați să le ștergeți din Scenă odată ce le-ați transformat într-un prefabricat.

17. Adăugarea de scripturi

Unitatea include un editor de cod, o versiune de Mono Dezvoltă. Deși este un editor bun, puteți folosi orice editor doriți. Studio vizual, de exemplu, este o alegere populară dacă utilizați Windows.

Puteți crea un fișier nou lansând editorul de cod, salvând fișierul în bunuri folder al proiectului dvs., apoi adăugați-l la un GameObject, la fel ca tu cu o componentă. Alternativ, puteți crea un nou script în Inspector prin selectarea Script nou și apoi făcând dublu clic pe ea pentru al deschide.

18. Detectarea intrării microfonului

Pentru a ne mișca personajul principal, vom avea nevoie de acces la microfonul dispozitivului. În mod implicit, Unity oferă suport de bază pentru captarea audio, dar nu include o proprietate sau o metodă pentru detectarea nivelului de activitate al microfonului, ceea ce este ceea ce trebuie să mutați vacă.

Din fericire, putem folosi un script de terță parte care ne va permite accesul la un intensitate proprietate. intensitate proprietatea ne va permite, împreună cu transform.position, pentru a muta vaca.

Creați un spațiu gol GameObject și numește-o MicrophoneInput. Folosește Adăugați componenta pentru a atașa scriptul menționat mai sus și unul Sursă audio componenta la noul obiect de joc.

Procedând astfel, activați scenariul, iar aplicația va începe să capteze intrarea microfonului. Prin ajustarea Sensibilitate proprietate în Inspector, controlam cât de mult este vacă transmisă de intrarea microfonului. Cu cât este mai mare valoarea, cu atât viteza se va mișca mai repede. Am aflat asta 50 este o valoare bună pentru a începe cu.

19. Mișcarea mâinilor

Următorul script definește Mână clasa și controlează mișcarea mâinilor. Mâinile se mișcă continuu de la stânga la dreapta și invers. Să vedem cum funcționează acest lucru.

Pasul 1: Proprietăți

Prima proprietate pe care o folosim în scenariu este viteza de miscare, A pluti care definește numărul de unități pe care le mișcă o mână în timpul fiecărui cadru. Setează X valoarea transform.position proprietate, mutarea mâinii pe orizontală.

A doua proprietate, currentPos, este de asemenea a pluti și stochează poziția curentă a mâinii înainte de a se mișca. Acest lucru ne va ajuta sa calculam numarul de unitati pe care mana le poate misca.

utilizând UnityEngine; utilizând System.Collections; clasa publică Mână: MonoBehavior private float moveSpeed ​​= 0.02f; privat float actualPos; bool public left = false;

În cele din urmă, stânga proprietate de tip boolean definește dacă mâna se mișcă spre stânga. Acest lucru ușurează schimbarea direcției unei mâini prin setarea stânga variabilă la oricare dintre ele Adevărat sau fals.

Pasul 2: Metoda de pornire

 start metoda este o metodă definită în MonoBehaviour clasa care se numește în timpul inițializării, înainte de a cere orice altă metodă - cu excepția Treaza, pe care nu o vom acoperi în acest tutorial.

În start , putem configura obiectul înainte de a executa orice alt cod. În acest caz, setăm currentPos proprietate la poziția actuală a mâinii, înainte de a fi mutat.

void Start () currentPos = transform.position.x; 

Pasul 3: Schimbați poziția

În Actualizați , verificăm dacă mâna este la stânga sau la dreapta și o mutați în direcția corectă în fiecare cadru. Pentru a face acest lucru, vom scrie un dacă declarație în interiorul Actualizați și să scadă sau să crească X poziție folosind viteza de miscare variabilă pentru a modifica poziţie proprietate.

void Actualizare () / * Mutare mână * / / * Mutare în dreapta dacă mâna este în partea stângă * / if (! stânga) transform.position - = Vector3 nou (moveSpeed, 0, 0);  altceva transform.position + = Vector3 nou (moveSpeed, 0, 0);  / * Schimba moveSpeed ​​pentru a muta în cealaltă direcție, creând o buclă de mișcare * / if (transform.position.x <= currentPos - 0.7f)  moveSpeed *= -1;  if (transform.position.x >= actualPos + 0.7f) moveSpeed ​​* = -1; 

Când mâna se mișcă 0.7 unități, înmulțim viteza de miscare proprietate de către -1 pentru a face mâna să se miște în direcția opusă. Rezultatul este că mâinile se deplasează dintr-o parte în alta într-o buclă continuă, ceea ce face mai greu ca vaca să treacă prin mâini și să ajungă la stea.

20. Cow Script

Creați un script nou și atașați-l la obiectul jocului vacă. Acest script va gestiona acțiunile jucătorului și alte câteva funcții legate de mecanica jocului, cum ar fi afișarea alertelor. Să aruncăm o privire la proprietățile folosite în acest script.

utilizând UnityEngine; utilizând System.Collections; clasa publica Cow: MonoBehavior privat Vector3 gravitate = Vector3 nou (0, 0.02f, 0); public GameObject micVolume; privat float moveSpeed; private byte balloons = 3; public GameObject alertWin; public GameObject alertLose; 
  • gravitatie: utilizat pentru a simula o forță verticală, trage vacile în jos
  • micVolume: trimitere la MicrophoneInput obiect de joc
  • viteza de miscare: devine intensitate valoare de la MicrophoneInput clasă
  • baloane: deține numărul de baloane, această valoare reprezintă viața jucătorului
  • alertWin: Trimitere la alertWin obiect de joc
  • alertLose: Trimitere la alertLose obiect de joc

Rețineți că variabilele publice trebuie să fie configurate în editorul Unity. Toate sunt referiri la prefabs. Setarea valorii unei variabile în editor este ușor. Salvați scriptul și asigurați-vă că nu există erori. Apoi treceți înapoi la Unity și selectați obiect de joc la care este atașat scriptul. Ar trebui să vedeți variabilele enumerate mai jos componenta script, după cum se arată mai jos.

Glisați și fixați activul dorit sau preferat la variabila sau faceți clic pe micul punct de sub pictograma roată pentru ao selecta.

Asigurați-vă că activul și variabila sunt de tip acelasi tip sau nu veți putea să-l abandonați sau să-l vedeți când faceți clic pe pictograma punct.

21. Mutarea Vaca

Pasul 1: Mutarea

Pentru a muta vacile în sus, vom folosi FixedUpdate metodă. De ce nu regulate Actualizați metodă? Această metodă este predefinită MonoBehaviour care rulează fiecare rată fixă ​​a cadrelor în loc de fiecare cadru. Aceasta înseamnă că va fi netedă chiar dacă rata actuală a cadrelor este puțin scăzută. Adăugați următorul bloc de cod la script:

void FixedUpdate () / * Mutare Cow în sus pe baza volumului Mic * / moveSpeed ​​= micVolume.GetComponent() .doodness * 0.01f; transform.position = Vector3 nou (0, transform.position.y + moveSpeed, 0); / * Simulați gravitatea noastră (aceasta nu devine mai puternică atunci când este înaltă) * / transform.position - = gravitatea; 

Vom calcula viteza prin obținerea luminozității curente a microfonului. Această intensitate este obținută de la MicrophoneInput clasă și apoi înmulțită cu 0,01. Facem acest lucru pentru a împiedica vaca să se miște prea repede.

Caracterul de vacă este mutat prin mărirea y valoarea transform.position proprietate, utilizând viteza stocată în memoria stocată viteza de miscare.

Pasul 2: Simularea gravității

În plus față de mișcarea vacă, aplicăm și o forță descendentă, gravitatea. Acest lucru se realizează prin scăderea poziției vacăi utilizând gravitatie vector creat mai devreme. Acest lucru va reduce în mod constant y poziția vacei fără ca aceasta să scadă mai repede, ceea ce se întâmplă dacă vom folosi comportamentul gravitațional implicit.

22. Coliziunea mâinilor

Pasul 1: Detectarea coliziunilor

În următorul pas, detectăm dacă una dintre mâini se ciocnește cu vacă. OnTriggerEnter2D metoda rulează atunci când două obiecte se ciocnesc fără interacțiunea fizică. În acest caz, verificăm dacă vacile se ciocnesc cu un obiect numit "Mână", care poate fi oricare dintre mâinile de pe scenă și să redea sunetul atașat la obiectul jocului de vacă dacă apare coliziunea. Veți observa că verificăm și proprietatea alfa a vacii. De ce facem acest lucru este explicat în pasul următor.

void OnTriggerEnter2D (altul Collider2D) / * Hands Collision * / if (other.name == "Hand" && transform.GetComponent() .color.a == 1) other.audio.Play ();

Pasul 2: Prevenirea coliziunilor multiple

Coliziunile sunt testate de mai multe ori în fiecare cadru, ceea ce înseamnă că trei coliziuni vor avea loc într-un timp foarte scurt, ridicând toate baloanele. Deoarece nu vrem ca acest lucru să se întâmple, avem nevoie de o modalitate de a preveni acest lucru.

O modalitate utilă de a face acest lucru este schimbarea alfa a obiectului lovit. Acest lucru va da utilizatorilor feedback vizual care indică faptul că au fost lovite. Următoarele linii vor avea grijă de asta.

/ * Prevenirea coliziunii multiple * / Culoare alfa = culoare nouă (1, 1, 1, 0.5f); transform.GetComponent() .color = alfa; Invocați ("EnableCollision", 1);

Mai întâi creăm un nou Culoare obiecte și alocați-i culoarea obiectului de joc și setați-l alfa valoare pentru 0.5 pentru a deveni semi-transparent. Apoi, accesăm obiectul jocului SpriteRenderer, care ne permite să-i modificăm culoarea.

Ultima linie din acest bloc de cod așteaptă o secundă și apoi o apelează EnableCollision funcţie. Această funcție reinițializează valorile culorilor vacăi, făcând din nou posibilitatea de a detecta o coliziune. Vom implementa această funcție mai târziu în acest tutorial.

23. Înlăturarea baloanelor

Când vaca este lovită de o mână, un balon trebuie eliminat. Noi numim Distruge metoda pe un obiect de balon. Noi folosim Găsi pentru că nu avem o referință la fiecare dintre baloane.

Această funcție caută activele jocului și returnează obiectul de joc pe care îl căutăm, în acest caz un balon.

/ * Eliminați balonul * / Distrugeți (GameObject.Find ("Balon")); balloons--;

Dar așteptați, nu sunt trei baloane în scenă? Este corect. Însă Găsi funcția returnează primul meci pe care îl poate găsi. Cu alte cuvinte, returnează primul obiect de balon pe care îl găsește.

De asemenea, decrementăm baloane contra pentru a ne ajuta să știm când vaca și-a pierdut toată viața.

24. Joc peste

Jocul sa terminat când toate baloanele au fost aruncate. Pentru a testa acest lucru, verificăm dacă baloane este egal cu 0 și afișați o alertă dacă este adevărată. Am setat și gravitatie„s y proprietate la 0 și întrerupeți jocul prin setarea Grafic de timp la 0.

Grafic de timp proprietatea controlează timpul petrecut în mediul de joc. Acesta poate fi folosit pentru a face jocul mai rapid sau mai lent pe baza valorii sale. Scala de timp implicită este 1.0, creșterea valorii acesteia accelerează funcțiile asociate ratei de cadre și le diminuează încetinirea. Setarea la 0 întrerupe jocul, împiedicând orice noi ciocniri.

/ * Joc peste * / if (baloane == 0) GameObject alert = Instantiate (alertLose, new Vector3 (0, 0, 0), transform.rotation) ca GameObject; gravitatea.y = 0; Time.timeScale = 0; 

25. Nivel complet

Când jucătorul ajunge pe cealaltă parte a nivelului, trebuie să scoatem steaua și să afișăm o alertă care indică faptul că nivelul a fost terminat.

dacă declarația verifică dacă coliziunea este în realitate cu obiectul jocului stea și redă audio atașat la vacă dacă numele este corect. Apoi scoatem steaua din scenă înainte de a crea alerta. Am setat și gravitatie„s y proprietate la 0 așa cum am făcut în pasul anterior.

/ * Star Collision * / dacă (other.name == "Star") audio.Play (); Distruge (other.gameObject); GameObject alert = Instantiate (alertWin, noul Vector3 (0, 0, 0), transform.rotation) ca GameObject; gravitatea.y = 0; 

26. Activarea coliziunilor

EnableCollision metoda resetează valoarea alfa a obiectului de joc de vaca după ce a fost lovită de o mână. Acest lucru va permite obiectului joc de vacă să detecteze un alt hit. Rețineți că Culoare obiect are un alfa de 1.

void EnableCollision () Culoare alfa = culoare nouă (1, 1, 1, 1); transform.GetComponent() .color = alfa; 

27. Repornirea jocului

 Reîncarcă utilizează metoda cerere pentru a reîncărca nivelul actual. Creați un script nou numit Repornire , adăugați următorul bloc de coduri și atașați-l la ambele prefabricate de alertă create mai devreme.

utilizând UnityEngine; utilizând System.Collections; public class Restart: MonoBehour void Update () if (Input.GetButton ("Fire1")) Reîncărcare ();  void Reîncărcare () Application.LoadLevel (Application.loadedLevel); 

Încercăm mai întâi dacă robotul apasă pe ecran folosind Intrare clasați și apelați Reîncarcă dacă este adevărat. Punerea în aplicare a directivei Reîncarcă metoda este scurtă și simplă. Tot ce facem este să încărcăm nivelul curent, resetând fiecare obiect și variabilă la starea inițială.

28. Testarea

Este timpul să testați jocul. presa Command-P pentru a juca jocul în Unitate. Dacă totul funcționează conform așteptărilor, sunteți pregătiți pentru pașii finali.

29. Setările playerului

Când sunteți mulțumit de jocul dvs., este timpul să selectați Construiți setările de la Fişier meniu și faceți clic pe Setările playerului buton. Acest lucru ar trebui să aducă Setările playerului în Inspector panou în care puteți seta parametrii pentru aplicația dvs..

Aceste setări sunt specifice aplicației și includ creatorul sau compania, rezoluția aplicației, modul de afișare etc. Aceste setări depind de dispozitivele pe care le vizați și de magazinele sau piețele pe care le veți publica pe.

30. Construiți și jucați

Odată ce proiectul dvs. este configurat corect, este timpul să revizuiți Construiți setările și faceți clic pe Construi buton. Asta e tot ce este nevoie pentru a vă construi jocul pentru testare și / sau distribuție.

Concluzie

În acest tutorial, am învățat cum să implementăm comenzile microfonului, interacțiunea cu fizica, foile de sprite și alte aspecte ale dezvoltării jocurilor folosind Unity. Vă încurajez să experimentați rezultatul și să personalizați jocul pentru a-l creați. Sper că ți-a plăcut acest tutorial și l-am găsit de ajutor.

Cod