Creeu el vostre primer joc bàsic per a Android en només 7 minuts (amb Unity)

Autora: Lewis Jackson
Data De La Creació: 11 Ser Possible 2021
Data D’Actualització: 1 Juliol 2024
Anonim
Creeu el vostre primer joc bàsic per a Android en només 7 minuts (amb Unity) - Notícies
Creeu el vostre primer joc bàsic per a Android en només 7 minuts (amb Unity) - Notícies

Content


Fer un joc totalment funcional per a Android és molt més fàcil del que podríeu pensar. La clau per al desenvolupament d’èxit d’Android, o qualsevol tipus de desenvolupament, és saber què voleu aconseguir i trobar les eines i habilitats necessàries per fer-ho. Agafeu el camí de menys resistència i tingueu en compte un objectiu clar.

Quan es tracta de crear jocs, la millor eina segons la meva opinió és Unity. Sí, pots fer un joc a Android Studio, però a menys que tinguis experiència amb Java i el SDK d'Android, serà una lluita ascendent. Haureu d’entendre què fan les classes. Haureu d’utilitzar visualitzacions personalitzades. Confiaràs en algunes biblioteques addicionals. La llista continua.

Unity és una eina altament professional que gestiona la gran majoria dels títols més venuts a Play Store.

Unity, en canvi, fa la major part de la vostra feina. Es tracta d’un motor de joc, el que significa que ja es té cura de tota la física i de moltes de les altres funcions que es poden utilitzar. És multiplataforma i està dissenyat per ser molt agradable per a principiants per a aficionats i desenvolupadors indie.


Al mateix temps, Unity és una eina altament professional que gestiona la gran majoria dels títols més venuts de Play Store. No hi ha limitacions aquí i no hi ha bons motius per dificultar la vida. També és gratuït.

Per demostrar com és de fàcil el desenvolupament de jocs amb Unity, us mostraré com fer el vostre primer joc Android en només 7 minuts.

No, no aniré explica com fer-ho en 7 minuts. Vaig a fes-ho en 7 minuts. Si seguiu també, podreu fer el mateix exactament.

Renúncia: abans de començar, només vull assenyalar que estic enganyant una mica. Mentre que el procés de creació del joc trigarà 7 minuts, això suposa que ja heu instal·lat Unity i que heu configurat tot. Però no et deixaré penjat: podeu trobar un tutorial complet sobre com fer-ho.


Afegint sprites i física

Comença fent doble clic a Unity per llançar-lo. Fins i tot el viatge més llarg comença amb un sol pas.

Ara creeu un projecte nou i assegureu-vos de triar "2D". Un cop hàgiu entrat, sereu rebuts amb algunes finestres diferents. Això fa coses. No tenim temps per explicar-ho, tan sols seguiu les meves indicacions i la recollireu a mesura que passem.

El primer que voldreu fer és crear un sprite per ser el vostre personatge. La manera més fàcil de fer-ho és dibuixar un quadrat. Li posarem un parell d’ulls. Si voleu ser encara més ràpid, només podeu agafar un sprite que us agradi des d'algun lloc.

Deseu aquest sprite i, després, arrossegueu-lo i deixeu-lo anar a la vostra "escena" situant-lo a la finestra més gran. Notareu que també apareix a l'esquerra a la "jerarquia".

Ara volem crear algunes plataformes. Un cop més, anirem a fer-ho amb un quadrat senzill i podrem redimensionar aquesta mà lliure per fer parets, plataformes i què disposem.

Allà anem, bonic. Llisqueu-lo de la mateixa manera que ho vau fer.

Ja tenim alguna cosa que sembla un "joc". Feu clic a reproducció i hauríeu de veure una escena estàtica de moment.

Podem canviar això fent clic al botó de reproducció del reproductor i mirant cap a la dreta a la finestra anomenada "inspector". Aquí és on canviem les propietats dels nostres GameObjects.

Trieu "Afegir component" i, a continuació, trieu "Física 2D> RigidBody2D". Acabeu d’afegir física al vostre jugador. Això ens seria increïblement difícil de fer pel nostre compte i realment destaca la utilitat de la Unitat.

També volem arreglar la nostra orientació per evitar que el personatge gira i es faci girar al voltant. Cerqueu "restriccions" a l'inspector amb el jugador seleccionat i marqueu la casella per congelar la rotació Z. Ara feu clic a reproduir de nou i hauríeu de trobar que el vostre jugador caigui ara del cel fins a la seva condició infinita.

Preneu-vos una estona per reflexionar sobre com de fàcil era: simplement aplicant aquest script anomenat "RigidBody2D" tenim una física totalment funcional. Si apliquéssim el mateix script a una forma rodona, també rodaria i fins i tot rebotaria. Imagineu-vos que ho codifiqueu i com de implicat seria això!

Per evitar que el nostre personatge caigui al terra, haureu d’afegir un col·lisionador. Aquest és bàsicament el traç sòlid d’una forma. Per aplicar-ho, escolliu el vostre reproductor, feu clic a "Afegir component" i, en aquesta ocasió, seleccioneu "Física 2D> BoxCollider2D".

Preneu-vos una estona per reflexionar sobre com de fàcil era: simplement aplicant aquest script anomenat "RigidBody2D" tenim una física totalment funcional.

Feu el mateix exactament amb la plataforma, feu clic a la reproducció i, després, el personatge hauria de caure al sòlid. Fàcil!

Una cosa més: per assegurar-nos que la càmera segueix el nostre reproductor tant si cauen com si es mouen, volem arrossegar l’objecte de la càmera que hi ha en escena (això es va crear quan vau iniciar el nou projecte) a sobre del reproductor. Ara a la jerarquia (la llista de GameObjects a l'esquerra) arrossegueu la càmera de manera que quedi sagnada a sota del reproductor. La càmera ara és un "fill" del jugador GameObject, el que significa que quan el reproductor es mou, també la càmera.

El vostre primer guió

Crearem un corredor infinit bàsic i això vol dir que el nostre personatge s’hauria de desplaçar just a la pantalla fins arribar a un obstacle. Per això necessitem un guió. Així, feu clic amb el botó dret a la carpeta Actius a la part inferior i creeu una carpeta nova anomenada "Scripts". Ara feu clic dret de nou i trieu "Creeu> C # Script". Anomena'l "PlayerControls".

En la major part dels scripts que creem definiran comportaments específics per als nostres GameObjects.

Ara feu doble clic al vostre nou script i s’obrirà a Visual Studio si configureu tot correctament.

Ja hi ha algun codi que és "codi de la placa de caldera". Això vol dir que és el codi que haureu d’utilitzar en gairebé tots els scripts, de manera que el vostre llistat està completament llest per tal d’estalviar temps. Ara afegirem un objecte nou amb aquesta línia per sobre del void Start ():

públic Rigidbody2D rb;

A continuació, col·loca aquesta següent línia de codi al mètode Start () per trobar el rigid rigid. Això bàsicament diu a Unity que localitzi la física adjunta al GameObject amb què s’associarà aquest script (el nostre reproductor, per descomptat). Start () és un mètode que s’executa tan bon punt es crea un nou objecte o script. Localitzeu l’objecte físic:

rb = GetComponent();

Afegiu-lo dins d'Actualització ():

rb.velocity = nou Vector2 (3, rb.velocity.y);

L’actualització () s’actualitza repetidament, de manera que qualsevol codi aquí s’executa una vegada i una altra fins que l’objecte es destrueix. Tot això diu que volem que el nostre cos rígid tingui un nou vector amb la mateixa velocitat a l’eix y (rb.velocity.y) però amb la velocitat de “3” a l’eix horitzontal. A mesura que avanceu, probablement utilitzeu "FixedUpdate ()" en el futur.

Deseu-ho i torneu a Unity. Feu clic al personatge del reproductor i, a l'inspector, seleccioneu Afegir component> Scripts i, a continuació, el vostre nou script. Feu clic a reproduir i augeu! El vostre personatge hauria d’avançar cap a la vora del rebost com un llimac.

Nota: si alguna cosa sembla confús, només cal que vegeu el vídeo per veure-ho tot i això, sí que us serà útil!

Entrada de jugador molt bàsica

Si volem afegir una funció de salt, podem fer-ho senzillament només amb un poc de codi addicional:

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

Això entra dins del mètode Actualització i diu que "si el jugador fa clic", afegeix velocitat a l'eix y (amb el valor 5). Quan utilitzem if, qualsevol cosa que segueixi entre els claudàtors s’utilitza com una mena de prova veritable o falsa. Si la lògica dins d'aquests claudàtors és certa, s'executarà el codi dels claudàtors següents. En aquest cas, si el jugador fa clic al ratolí, s’afegeix la velocitat.

Android llegeix el clic esquerre del ratolí com a tocat a qualsevol lloc de la pantalla. Així, ara el vostre joc té controls bàsics.

Trobar el peu

Això és bàsicament suficient per fer un clon dels Flappy Birds. Llançar alguns obstacles i aprendre a destruir el jugador quan el toca. Afegiu una puntuació al damunt.

Si ho aconseguiu, cap repte serà massa gran en el futur

Però tenim una mica més de temps perquè puguem ser més ambiciosos i fer un joc de tipus de corredor infinit al seu lloc. L’únic que passa malament amb el que tenim actualment és que el salt de salt saltarà fins i tot quan el jugador no toqui el terra, de manera que pot volar fonamentalment.

Si es torna a fer això, es fa una mica més complex, però és tan difícil com ho fa la Unitat. Si ho aconseguiu, cap repte serà massa gran en el futur.

Afegiu el codi següent al vostre script per sobre del mètode Update ():

public Transform groundCheck; public Transformation startPosition; public float groundCheckRadius; public LayerMask whatIsGround; butxaca privada onGround;

Afegiu aquesta línia al mètode d'actualització a sobre de la sentència if:

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

Finalment, canvieu la línia següent perquè inclogui && onGround:

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

Tot el cas hauria de quedar així:

public class PlayerControls: MonoBehaviour {public Rigidbody2D rb; public Transform groundCheck; public Transformation startPosition; public float groundCheckRadius; public LayerMask whatIsGround; butxaca privada 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 = new Vector2 (rb.velocity.x, 5); }}}

El que fem aquí és crear una nova transformació (una posició a l’espai) i, després, establim el seu radi i ens preguntem si se superposa a una capa anomenada terra. A continuació, canviem el valor del booleà (que pot ser cert o fals) en funció de si és així o no.

Així, onGround és cert si la transformació anomenada groundCheck se solapada al sòl de la capa.

Si feu clic a desar i després tornes a Unity, ara hauríeu de veure que teniu més opcions disponibles al vostre inspector quan seleccioneu el reproductor. Aquestes variables públiques es poden veure des de la pròpia Unity i això vol dir que podem definir-les, però ens agradi.

Feu clic amb el botó dret a la jerarquia a l'esquerra per crear un objecte buit nou i arrossegueu-lo de manera que quedi sota el reproductor a la finestra Escena on voleu detectar el sòl. Canvia el nom de l'objecte "Check Ground" (Terra de comprovació) i, a continuació, converteix-lo en un fill del jugador igual que ho vas fer amb la càmera. Ara hauria de seguir el jugador i comprovar el sòl que hi ha a sota.

Seleccioneu el reproductor de nou i, a l’inspector, arrossegueu el nou objecte Check Ground a l’espai on es diu “groundCheck”. La "transformació" (posició) ara serà igual a la posició del nou objecte. Mentre esteu aquí, introduïu 0.1 on indica el radi.

Finalment, hem de definir la nostra capa de "terra". Per fer-ho, seleccioneu el terreny que vau crear anteriorment i, a continuació, a la part superior dreta de l’inspector, cerqueu on es diu "Capa: Predeterminat". Feu clic a aquest quadre desplegable i seleccioneu "Afegeix capa".

Ara feu clic enrere i seleccioneu "sòl" com a capa de la vostra plataforma (repetiu-la per a qualsevol altra plataforma que floteu). Finalment, si es diu "Què és el sòl" del reproductor, seleccioneu també la capa de terra.

Ara esteu dient que el vostre script de reproductor comprovi si el punt petit de la pantalla se solapada a qualsevol cosa que coincideixi amb la capa. Gràcies a aquesta línia que vam afegir anteriorment, el personatge només saltarà quan sigui així.

I amb això, si toqueu jugar, podeu gaudir d’un joc força bàsic que requereix que feu clic per saltar al moment adequat.

Amb això, si toqueu jugar podeu gaudir d’un joc força bàsic que requereix que feu clic per saltar al moment adequat. Si configureu la vostra unitat correctament amb el SDK d'Android, haureu de ser capaç de crear-la i executar-la i, a continuació, jugar al vostre telèfon intel·ligent tocant la pantalla per saltar-la.

El camí per endavant

Evidentment, hi ha molt més a afegir perquè aquest joc sigui complet. El jugador ha de ser capaç de morir i de nou. Volem afegir nivells addicionals i molt més.

El meu objectiu era mostrar-vos amb quina rapidesa podeu obtenir alguna cosa bàsica en funcionament. Seguint aquestes instruccions, en poc temps hauríeu de ser capaç de crear el vostre corredor infinit simplement deixant que Unity tractés les coses difícils, com la física.

Si sabeu què voleu crear i feu la vostra recerca, no heu de ser assistent de codificació per crear un joc digne.

Normalment Xiaomi, el maquinari età ben contruït, i, a banda del boton que ’aeuen amb el co del telèfon, no podríem trobar gaire coe per que queixar-me aquí. Amb el telèf...

Xiaomi ha llançat el Redmi 8A a l'Índia, un veritable ucceor del Redmi 7A que e va llançar a principi de l'any. Detaquen el telèfon: una bateria de 5000mAh, un port UB-C, u...

Seleccioneu Administració