Създайте първата си основна Android игра само за 7 минути (с Unity)

Автор: Lewis Jackson
Дата На Създаване: 11 Може 2021
Дата На Актуализиране: 1 Юли 2024
Anonim
Създайте първата си основна Android игра само за 7 минути (с Unity) - Новини
Създайте първата си основна Android игра само за 7 минути (с Unity) - Новини

Съдържание


Изработката на напълно работеща игра за Android е много по-лесно, отколкото може би си мислите. Ключът към успешната разработка на Android - или какъвто и да е вид развитие - е да знаете какво искате да постигнете и да намерите необходимите инструменти и умения за това. Вървете по пътя на най-малко съпротива и имайте ясна цел в ума.

Що се отнася до създаването на игри, най-добрият инструмент според мен е Unity. Да, можете да направите игра в Android Studio, но ако не сте опитни с Java и Android SDK, това ще бъде трудна борба. Ще трябва да разберете какво правят класовете. Ще трябва да използвате персонализирани изгледи. Ще разчитате на някои допълнителни библиотеки. Списъкът продължава.

Unity е високопрофесионален инструмент, който захранва огромното мнозинство от най-продаваните заглавия в Play Store.

Единството от друга страна върши по-голямата част от работата за вас. Това е игра на двигателя, което означава, че за цялата физика и много от другите функции, които може да искате да използвате, вече са се погрижили. Това е крос платформа и е проектирана да бъде много удобна за начинаещи за любители и разработчици на инди.


В същото време Unity е високопрофесионален инструмент, който разполага с огромното мнозинство от най-големите заглавия в Play Store. Тук няма ограничения и няма основателна причина да затруднявате живота си. Освен това е безплатно!

За да демонстрирам колко лесно е развитието на играта с Unity, ще ви покажа как да направите първата си игра за Android само за 7 минути.

Не - няма да го правя обяснявам как да го направите за 7 минути Аз ще направи го след 7 минути. Ако следвате и вие, ще можете да направите точно същото!

Опровержение: преди да започнем, просто искам да отбележа, че леко изневерявам. Докато процесът на създаване на играта ще отнеме 7 минути, това предполага, че вече сте инсталирали Unity и сте получили всичко, което е настроено. Но няма да ви оставя да висите: можете да намерите пълен урок за това как да направите това на.


Добавяне на спрайтове и физика

Започнете, като щракнете два пъти върху Unity, за да го стартирате. Дори и най-дългото пътуване започва с една стъпка.

Сега създайте нов проект и се уверете, че сте избрали „2D“. След като влезете, ще бъдете посрещнати с няколко различни прозорци. Това правят неща. Нямаме време да обясняваме, така че просто следвайте инструкциите ми и ще го вземете, докато вървим.

Първото нещо, което ще искате да направите, е да създадете спрайт, който да бъде вашият герой. Най-лесният начин да направите това е да нарисувате квадрат. Ще го разгледаме няколко очи. Ако искате да бъдете още по-бързи, можете просто да вземете спрайт, който харесвате отнякъде.

Запазете този спрайт и след това просто го плъзнете и пуснете в „сцената“, като го поставите в най-големия прозорец. Ще забележите, че се появява и отляво в „йерархията“.

Сега искаме да създадем няколко платформи. Отново ще направим просто квадрат и ще можем да променим размера на тази свободна ръка, за да направим стени, платформи и какво имате.

Там отиваме, красиво. Пуснете го по същия начин, както току-що направихте.

Вече имаме нещо, което прилича на „игра“. Кликнете върху „Играй“ и засега трябва да видите статична сцена.

Можем да променим това, като кликнем върху спрайта на нашия плейър и погледнем вдясно към прозореца, наречен „инспектор“. Тук променяме свойствата за нашите GameObjects.

Изберете „Добавяне на компонент“ и след това изберете „Физика 2D> RigidBody2D“. Току-що добавихте физика към плейъра си! Това би ни било невероятно трудно да направим самостоятелно и наистина подчертава полезността на Единството.

Ние също така искаме да поправим ориентацията си, за да предотвратим въртенето и свободното движение на героя. Намерете „ограничения“ в инспектора с избрания играч и поставете отметка в квадратчето, за да замразите въртенето Z. Сега кликнете отново за игра и трябва да намерите играча, който сега пада от небето до безкрайната му обреченост.

Отделете малко време за размисъл колко лесно е това: просто като прилагаме този скрипт, наречен „RigidBody2D“, ние имаме напълно функционална физика. Ако приложихме един и същ скрипт към кръгла форма, той също щеше да се търкаля и дори да отскочи. Представете си, че сами кодирате това и колко ще бъде това участие!

За да спрете нашия герой да пада през пода, ще трябва да добавите коллайдер. Това е основно твърдият контур на формата. За да приложите това, изберете вашия плейър, щракнете върху „Добавяне на компонент“ и този път изберете „Physics 2D> BoxCollider2D“.

Отделете малко време за размисъл колко лесно е това: просто като прилагаме този скрипт, наречен „RigidBody2D“, ние имаме напълно функционална физика.

Направете точно същото с платформата, щракнете върху игра и след това вашият герой трябва да падне върху здравата основа. Лесно!

И още нещо: за да сме сигурни, че камерата следва плейъра ни независимо дали пада или се движи, искаме да плъзнем обекта на камерата, който е на сцената (това е създадено при стартирането на новия проект) върху плейъра. Сега в йерархията (списъкът на GameObjects отляво) ще плъзнете камерата така, че да бъде вдлъбната под плейъра. Камерата вече е "дете" на Player GameObject, което означава, че когато плейърът се движи, също и камерата.

Вашият първи сценарий

Ще направим основен безкраен бегач и това означава, че нашият герой трябва да се движи направо през екрана, докато не удари пречка. За това ни е необходим сценарий. Така че кликнете с десния бутон на мишката в папката „Активи“ в долната част и създайте нова папка, наречена „Сценарии“. Сега отново кликнете с десния бутон и изберете „Създаване> C # Script“. Наречете го „PlayerControls“.

В по-голямата си част създадените от нас скриптове ще дефинират специфични поведения за нашите GameObjects.

Сега кликнете два пъти върху новия си скрипт и той ще се отвори в Visual Studio, ако настроите всичко правилно.

Тук вече има някакъв код, който е „код на плочата на котела“. Това означава, че това е код, който ще трябва да използвате в почти всеки скрипт, така че да е готов за вас, за да спестите време. Сега ще добавим нов обект с този ред над void Start ():

обществен Rigidbody2D rb;

След това поставете този следващ ред код в метода Start (), за да намерите твърдото тяло. Това основно казва на Unity да намери физиката, прикачена към GameObject, с който този скрипт ще бъде свързан (нашият играч разбира се). Start () е метод, който се изпълнява веднага след създаването на нов обект или скрипт. Намерете физическия обект:

rb = GetComponent();

Добавете това вътре Update ():

rb.velocity = нов Vector2 (3, rb.velocity.y);

Update () се опреснява многократно и така всеки код тук ще се изпълнява отново и отново, докато обектът не бъде унищожен. Всичко това говори, че искаме нашето твърдо тяло да има нов вектор със същата скорост по оста y (rb.velocity.y), но със скоростта на „3“ по хоризонталната ос. Докато напредвате, вероятно ще използвате „FixedUpdate ()“ в бъдеще.

Запазете това и се върнете към Unity. Щракнете върху характера на вашия плейър и след това в инспектора изберете Добавяне на компонент> Сценарии и след това новия си скрипт. Кликни, пусни и бум! Вашият герой сега трябва да се движи към ръба на перваза като леминг.

Забележка: Ако нещо от това ви звучи объркващо, просто гледайте видеоклипа, за да видите, че всичко е готово - ще помогне!

Много основна информация за играча

Ако искаме да добавим функция за скок, можем да направим това много просто само с един допълнителен бит код:

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

Това е вътре в метода на Update и се казва, че „ако играчът кликне“, тогава добавете скорост по оста y (със стойността 5). Когато използваме if, всичко, което следва вътре в скобите, се използва като вид истински или фалшив тест. Ако логиката във въпросните скоби е вярна, тогава кодът в следващите къдрави скоби ще се изпълни. В този случай, ако играчът кликне на мишката, скоростта се добавя.

Android чете левия бутон на мишката като докосване навсякъде на екрана! Така че сега вашата игра има основни контроли за докосване.

Намиране на основата

Това е в общи линии достатъчно, за да се направи клонинг на птици Flappy Birds. Хвърлете някои препятствия и научете как да унищожите играча, когато той ги докосне. Добавете резултат отгоре.

Ако намалите това, никое предизвикателство няма да бъде твърде голямо в бъдеще

Но имаме малко повече време, за да можем да станем по-амбициозни и вместо това да направим безкрайна игра тип бегач. Единственото, което не е наред с това, което имаме в момента, е, че скокът при натискане ще скочи дори когато играчът не докосне пода, така че по същество може да лети.

Решаването на това става малко по-сложно, но това е толкова трудно, колкото получава Unity. Ако намалите това, никое предизвикателство няма да бъде твърде голямо в бъдеще.

Добавете следния код към скрипта си над метода Update ():

обществена трансформация на земята обществена трансформация startPosition; обществена поплавкова земяCheckRadius; обществен слой LaserMask whatIsGround; частен bool onGround;

Добавете този ред към метода за актуализиране над оператора if:

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

Накрая променете следния ред, така че да включва && onGround:

ако (Input.GetMouseButtonDown (0) && onGround) {

Цялото нещо трябва да изглежда така:

публичен клас PlayerControls: MonoBehaviour {public Rigidbody2D rb; обществена трансформация groundCheck обществена трансформация startPosition; обществена поплавкова земяCheckRadius; обществен слой LaserMask whatIsGround; частен 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 = new Vector2 (rb.velocity.x, 5); }}}

Това, което правим тук, е да създадем нова трансформация - позиция в пространството - след това задаваме нейния радиус и питаме дали припокрива слой, наречен земя. След това променяме стойността на Булевата (която може да бъде вярна или невярна) в зависимост от това дали е така или не.

Така че, onGround е вярно, ако трансформацията, наречена groundCheck, припокрива слоя земята.

Ако щракнете върху запазване и след това се върнете към Unity, сега трябва да видите, че имате повече опции в инспектора си, когато изберете плейъра. Тези публични променливи могат да се видят от самото Unity и това означава, че можем да ги зададем, колкото и да ни хареса.

Щракнете с десния бутон върху йерархията отляво, за да създадете нов празен обект, след което го плъзнете така, че да е точно под плейъра в прозореца на сцена, където искате да откриете пода. Преименувайте обекта „Check Ground“ и след това го направете дете на плейъра, точно както сте направили с камерата. Сега той трябва да следва играча, като проверява пода отдолу, както го прави.

Изберете плейъра отново и в инспектора плъзнете новия обект Check Ground в пространството, където пише „groundCheck“. „Трансформацията“ (позиция) сега ще бъде равна на позицията на новия обект. Докато сте тук, въведете 0,1, където пише радиус.

И накрая, ние трябва да определим нашия "земята" слой. За целта изберете терена, който сте създали по-рано, след това горе вдясно в инспектора, намерете къде пише „Слой: По подразбиране“. Щракнете върху това падащо поле и изберете „Добавяне на слой“.

Сега щракнете обратно и този път изберете „земята“ като слой за вашата платформа (повторете това за всички други платформи, около които сте плаващи). И накрая, където пише „Какво е Ground“ на вашия плейър, изберете и основния слой.

Сега казвате на скрипта си на плейъра да провери дали малката точка на екрана се припокрива с нещо, което съответства на този слой. Благодарение на този ред, който добавихме по-рано, героят вече ще скочи само когато това е така.

И с това, ако натиснете играта, можете да се насладите на доста основна игра, която изисква да кликнете, за да скочите в точното време.

С това, ако натиснете играта, можете да се насладите на доста основна игра, която изисква да кликнете, за да скочите в подходящия момент. Ако настроите Unity правилно с Android SDK, тогава трябва да можете да изградите и стартирате това и след това да играете на вашия смартфон, като докоснете екрана, за да скочите.

Пътят напред

Очевидно има още какво да добавим, за да превърнем това в пълна игра. Играчът трябва да може да умре и да се размножи. Бихме искали да добавим допълнителни нива и още.

Целта ми тук беше да ви покажа колко бързо можете да стартирате нещо основно. Следвайки тези инструкции, трябваше да можете да изградите своя безкраен бегач за нула време, просто като оставите Unity да се справя с твърдите неща, като физиката.

Ако знаете какво искате да изградите и правите своите изследвания, не е нужно да сте съветник за кодиране, за да създадете прилична игра!

UB-C батерията на AlterPlu е a мощна преносима станция за зареждане можете да използвате за зареждане на всичките си UB и UB-C устройства. Точно сега можете вземете един за над 40% отстъпка....

Серията Galaxy 10 на amung изглежда като значително надграждане в гамата на Galaxy 9, като предлага множество камери, чист чипсет и обратно безжично зареждане. Имаме и изцяло нов модел в Galaxy 10e и ...

Нашият Избор