Съдържание:

Приложение за разширена реалност за начинаещи: 8 стъпки
Приложение за разширена реалност за начинаещи: 8 стъпки

Видео: Приложение за разширена реалност за начинаещи: 8 стъпки

Видео: Приложение за разширена реалност за начинаещи: 8 стъпки
Видео: Кин-дза-дза! (FullHD, комедия, реж. Георгий Данелия, 1986 г.) 2024, Ноември
Anonim
Приложение за разширена реалност за начинаещи
Приложение за разширена реалност за начинаещи
Приложение за разширена реалност за начинаещи
Приложение за разширена реалност за начинаещи

Този урок ще ви покаже как да направите приложение за разширена реалност за начинаещи. Ще използваме Unity3D и откриването на земната равнина на Vuforia, за да направим AR приложение без маркери за Android или IOS. Ще преминем през добавяне на 3D модел към Unity и ще го преместваме с мобилен джойстик. Този метод ще работи и с всеки друг безплатен 3D модел, който можете да намерите.

Стъпка 1: Ще работи ли това на вашия телефон?

Ще работи ли това на вашия телефон?
Ще работи ли това на вашия телефон?

Първо трябва да се уверим, че телефонът ви поддържа откриването на наземната равнина на Vuforia, така че телефонът ви да е в списъка с поддържани устройства.

library.vuforia.com/articles/Solution/Vufo…

Единственото нещо, от което се нуждаете, що се отнася до софтуера, е безплатната версия на Unity. Ако все още нямате, отидете на Unity3d.com и щракнете върху вземете Unity. Сега използвам версия 2018.2.0, ако тази версия вече не е налична, отидете на по -стари версии на Unity и изтеглете 2018.2.0.

По време на инсталационния процес не забравяйте да инсталирате пакетите за IOS или Android в зависимост от типа телефон, който имате, и не забравяйте да инсталирате поддръжката на Vuforia.

Стъпка 2: Стартирайте нов проект Unity

Стартирайте нов проект за единство
Стартирайте нов проект за единство

Стартирайте нов проект на Unity и изтрийте основната камера. В горната лента на менюто отидете на игралния обект, vuforia и добавете „ARCamera“.

Преди всичко да работи, трябва да активираме Vuforia, така че отидете на настройките за изграждане на файлове, превключете платформата, настройките на XR и активирайте поддръжката на разширената реалност на Vuforia.

Щракнете върху игралния обект "ARCamera" и в инспектора щракнете върху конфигурацията на Vuforia. В долната част активирайте проследяването на устройството и променете режима на проследяване на позиционен.

Добавете сцена на наземна равнина и самолетен търсач от същото меню на Vuforia, от което сте получили камерата.

На самолетотърсача променете падащото меню на интерактивно, премахнете отметката от дублиращ се етап и плъзнете обекта на заземената равнина в празния слот за котва на самолета.

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

В новодобавената папка със стандартни активи отидете на сглобяеми и плъзнете сглобяемата мобилна сглобяема контролна панел в сцената.

Изтрийте бутона за скок. Щракнете с десния бутон в йерархията и добавете потребителски интерфейс, система за събития.

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

Стъпка 3: Създайте превключвател

Създайте превключвател
Създайте превключвател

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

Щракнете с десния бутон върху джойстика и създайте потребителски интерфейс, превключете. Разширете всичко и променете цветовете или текста, ако искате.

В секцията за превключване на променената стойност на превключвателя добавете самолета и го настройте да активира игралния обект въз основа на стойността на превключвателя. Сега, след като обектът е поставен в света, вероятно трябва да изключим превключвателя, така че преминете към поведението на позициониране на съдържанието и плъзнете превключвателя до включеното съдържание, включено дори и задайте превключвателя на изключен.

Стъпка 4: Чудовище

ЧУДОВИЩЕ!
ЧУДОВИЩЕ!

Отидете на прозорец, общо и добавете прозорец на магазин за активи.

Потърсете „чудовище от герои“и сортирайте безплатно, вземете първия резултат и импортирайте този.

Плъзнете сглобяемото чудовище под сцената на земната равнина, като го направите дете. Задайте позицията и въртенето на нула. Задайте нейната скала x y и z на.1.

Отидете при аниматора и изтрийте всичко, освен записа. Плъзнете анимациите за ходене и празен ход от папката с анимации на чудовището.

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

Щракнете върху всяка анимация и добавете преход към другата.

Щракнете върху всеки преход и добавете условие, включете се за първия и бездействайте за второто. Премахнете отметката за време за излизане и плъзнете всички плъзгачи до 0 на всеки от тях.

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

Стъпка 5: Контролиране на нашия характер

Контролиране на нашия характер
Контролиране на нашия характер

Щракнете с десния бутон в папката с активи и създайте C# скрипт, наречен "CharacterController" и добавете това:

използване на System. Collections;

използване на System. Collections. Generic; използване на UnityEngine; използване на UnityStandardAssets. CrossPlatformInput; публичен клас CharacterController: MonoBehaviour {private const float speed =.1f; частен Animator anim; // Използвайте това за инициализация void Start () {anim = GetComponent (); } // Актуализацията се извиква веднъж на кадър void Update () {// преместване на знак от джойстика въвеждане float x = CrossPlatformInputManager. GetAxis ("Хоризонтално"); float y = CrossPlatformInputManager. GetAxis ("Вертикално"); if (! x. Equals (0) &&! y. Equals (0)) {transform.eulerAngles = нов Vector3 (transform.eulerAngles.x, Mathf. Atan2 (x, y) * Mathf. Rad2Deg, transform.eulerAngles.z); } if (! x. Equals (0) ||! y. Equals (0)) {transform.position += transform.forward * Time.deltaTime * скорост; anim. SetTrigger ("разходка"); } else {anim. SetTrigger ("неактивен"); }} public void PlaceCharacter () {transform.localPosition = Vector3.zero; }}

Стъпка 6: Позволете ми да обясня

Нека обясня
Нека обясня

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

Този скрипт ще бъде добавен към нашето чудовище, за да можем да направим нещо като "GetComponent ()", за да получим препратка към този Animals Animals (по този начин можем да възпроизвеждаме анимациите от кода).

След това получаваме движението x и y на джойстика от мениджъра за въвеждане на различни платформи и ги запазваме всеки в променлива.

След това използваме тези две променливи, за да завъртим и преместим чудовището според входа на джойстика.

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

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

Стъпка 7: Довършителни щрихи

Довършителни щрихи!
Довършителни щрихи!

Накрая просто трябва да добавим нашия CharacterController.cs към нашето чудовище. Така че отидете на коренната трансформация на сглобяемия обект в йерархията и кликнете върху него. Това ще го издърпа върху инспектора вдясно. Щракнете върху добавяне на компонент и потърсете скрипта на контролера на символи. Добавете това.

Трябва също така да се уверим, че нашата функция PlaceCharacter действително ще бъде извикана, така че отидете до игралния обект на самолетотърсача и кликнете върху него.

В инспектора трябва да има разширена секция, която можете да щракнете, за да я разгънете. Там има събитие на Unity, наречено „OnContentPlaced“. Добавете функция към това, като щракнете върху бутона плюс. Плъзнете чудовището в празния слот там, изберете скрипта на контролера на знаци и накрая изберете функцията "PlaceCharacter".

Стъпка 8: Нека го вземем на вашия телефон

Нека го вземем на вашия телефон
Нека го вземем на вашия телефон

Ако използвате файл за щракване с Android или IOS, създайте настройки и отидете на настройките на плейъра за съответната платформа. И в двата случая поставете нещо за идентификатора на пакета (под формата „com. YourName. YourAppName“). Също така се уверете, че имате някакво съобщение в полето за описание на използването на камерата.

Ако сте на Android, премахнете отметката от съвместимостта с Android TV и променете минималната си цел за изграждане на Nougat.

Или натиснете build and run или натиснете build and install the.apk с ADB или Android Studio.

Ако сте на IOS, натиснете build и след това отворете получената папка в XCode. Регистрирайте се за безплатен акаунт за разработчици на Apple (ако още нямаме такъв) изберете вашия екип и натиснете бутона за възпроизвеждане, за да го получите на телефона си!

Кажете ми в коментарите, ако имате въпроси!

Препоръчано: