Современные информационные технологии. 4 курс. Лабораторное занятие №2. AR-объект в среде Unity + Vuforia
Вам нужно создать объект дополненной реальности и разместить его с привязкой к любой поверхности.
Подготовительный этап.
1. Зарегистрируйтесь в Unity, выбрав бесплатный аккаунт Personal: https://store.unity.com/?_ga=2.19475128.1205398640.1600000101-336768448.1599738648#plans-individual
2. Скачайте актуальную версию Unity: https://store.unity.com/download-nuo
3. Установите пакет Unity 2019.4.10 на компьютер с не менее чем 1,5 Гб оперативной памяти. Залогиньтесь в Unity на компьютере.
4. Запустите Unity через Unity Hub. Выберите директории для хранения проектов, не содержащих кириллические символы. Если хоть одна папка в директории или файл в ней будут названы кириллицей ничего не будет работать.
5. Установите в Unity пакет интеграции Android и Java SDK, если вы будете реализовывать проект на Android-смартфоне, или iOS пакет, если вы будете работать с Apple. Установочный пакет доступен по пути: File - Build Settings - Android - Install
или File - Build Settings - iOS - Install
6. Создайте бесплатный аккаунт на AR-платформе Vuforia: https://developer.vuforia.com/
7. Создайте авторизационный ключ, нажав на кнопку Get development key, поставив галку, что согласны с условиями и нажав на кнопку confirm. Cкопируйте авторизационный ключ.
8. Интегрируйте AR-среду Vuforia в Unity. Для этого перейдите в Unity по пути: Window - Package manager и установите Vuforia Engine AR.
9. Загрузите файл цели во вкладке Target manager. Для этого нажмите на кнопку Add Database, укажите имя вашей базы. Когда база будет создана загрузите в нее файл цели, указав его имя и размер. Файл цели - это фото того объекта, к которому вы прикрепите объект дополненной реальности. При загрузке выбирайте тип Single Image, фото загружается по нажатию кнопки browse, в строке width укажите ширину объекта - можно задать в диапазоне от 0.15 до 50. Далее нажмите кнопку Add.
10. Скачайте файл цели в базе, выбрав при загрузке вариант БД для Unity. Запустите файл БД в проекте, дважды кликнув по нему. Файл цели загрузится в Unity и будет отображаться в списке объектов в папке Assets.
11. Найдите 3D-объект, который вы поместите в AR. База бесплатных объектов есть здесь: https://poly.google.com/
Для использования в Unity вам нужен файл .obj и графический файл с цветной оболочкой - он обычно идет в формате .png. Скачайте их.
Теперь перед вами готовая среда разработки Unity:
Что с ней делать?
12. Слева вверху в блоке Hierarchy у вас есть объект main camera - удалите его (правая клавиша мыши на объекте, затем delete).
13. Вместо обычной камеры добавьте AR-камеру (1): GameObject - Vuforia Engine - AR Camera. Теперь камера отображается слева в иерархии. Нажмите на нее и справа у вас появится блок с инспектором объекта. Пролистайте его вниз и нажмите на горизонтальную серую кнопку "Open Vuforia Engine Configuration". В открывшемся блоке найдите поле App License Key и скопируйте туда лицензионный ключ Vuforia. Ключ сохранится сам - ни на какие кнопки здесь больше нажимать не надо.
14. Добавьте блок объекта, который будет привязан к файлу цели - ваша 3D-модель: GameObject - Vuforia Engine - Image. В иерархии у вас появится Image Target (2).
15. Добавьте файлы .obj и .png в проект либо перетащив их мышью в поле (11), либо через путь Assets - Import New Asset.
16. Перетащите мышью сначала файл .obj, а затем и файл .png внутрь Image Target.
17. С помощью мыши в окне проекта, либо с помощью шкал (6,7,8) вращайте объект так, чтобы он стал виден в окне AR-камеры (4). Если AR-камера направлена на ваш объект, значит он будет виден. Сам объект в окне (10) и камеру (9) можно двигать, зажав кнопкой мыши.
(7,8) - положение и вращение объекта
(6) - размер объекта.
Значения у (7,8) могут быть отрицательными.
18. Если вы добились результата как на скриншоте выше, то можете проверить работоспособность AR-проекта. Нажмите на кнопку запуска (5), и если у вас есть подключенная веб-камера, она включится и вы сможете поднести к ней изображение, к которому привязывали объект. Как только вы увидите, что AR-объект появляется, можно сохранять проект. Отключите веб-камеру, снова нажав на кнопку запуска.
19. Сохраните проект по пути: File - Save Project. В качестве директории используйте путь без кириллических папок!
20. Перейдите по пути File - Build Settings и выберите платформу сохранения - если у вас Android, то Android, если iPhone, то iOS. Внизу можно открыть player settings и добавить файл цели в качестве иконки приложения. В окне компоновки (File - Build Settings) поставьте галку напротив параметра development build. Теперь нажмите build.
Если все верно, минут через 5-10 в папке назначения появится файл приложения в формате .apk
21. Загружаете файл в ваш смартфон и запускаете через любой файловый менеджер (одно нажатие по файлу). Далее разрешаете установить этот файл как приложение из неизвестного источника. Когда иконка приложения появится на экране смартфона, запускаете приложение и наводите камеру на ваш файл цели. Как только там появится объект, делаете скриншот. Ссылку на опубликованный скриншот нужно оставить в комментарии к данному посту или скинуть в группу в telegram до 15:00 29 сентября.
Подготовительный этап.
1. Зарегистрируйтесь в Unity, выбрав бесплатный аккаунт Personal: https://store.unity.com/?_ga=2.19475128.1205398640.1600000101-336768448.1599738648#plans-individual
2. Скачайте актуальную версию Unity: https://store.unity.com/download-nuo
3. Установите пакет Unity 2019.4.10 на компьютер с не менее чем 1,5 Гб оперативной памяти. Залогиньтесь в Unity на компьютере.
4. Запустите Unity через Unity Hub. Выберите директории для хранения проектов, не содержащих кириллические символы. Если хоть одна папка в директории или файл в ней будут названы кириллицей ничего не будет работать.
5. Установите в Unity пакет интеграции Android и Java SDK, если вы будете реализовывать проект на Android-смартфоне, или iOS пакет, если вы будете работать с Apple. Установочный пакет доступен по пути: File - Build Settings - Android - Install
или File - Build Settings - iOS - Install
6. Создайте бесплатный аккаунт на AR-платформе Vuforia: https://developer.vuforia.com/
7. Создайте авторизационный ключ, нажав на кнопку Get development key, поставив галку, что согласны с условиями и нажав на кнопку confirm. Cкопируйте авторизационный ключ.
8. Интегрируйте AR-среду Vuforia в Unity. Для этого перейдите в Unity по пути: Window - Package manager и установите Vuforia Engine AR.
9. Загрузите файл цели во вкладке Target manager. Для этого нажмите на кнопку Add Database, укажите имя вашей базы. Когда база будет создана загрузите в нее файл цели, указав его имя и размер. Файл цели - это фото того объекта, к которому вы прикрепите объект дополненной реальности. При загрузке выбирайте тип Single Image, фото загружается по нажатию кнопки browse, в строке width укажите ширину объекта - можно задать в диапазоне от 0.15 до 50. Далее нажмите кнопку Add.
10. Скачайте файл цели в базе, выбрав при загрузке вариант БД для Unity. Запустите файл БД в проекте, дважды кликнув по нему. Файл цели загрузится в Unity и будет отображаться в списке объектов в папке Assets.
11. Найдите 3D-объект, который вы поместите в AR. База бесплатных объектов есть здесь: https://poly.google.com/
Для использования в Unity вам нужен файл .obj и графический файл с цветной оболочкой - он обычно идет в формате .png. Скачайте их.
Теперь перед вами готовая среда разработки Unity:
Что с ней делать?
12. Слева вверху в блоке Hierarchy у вас есть объект main camera - удалите его (правая клавиша мыши на объекте, затем delete).
13. Вместо обычной камеры добавьте AR-камеру (1): GameObject - Vuforia Engine - AR Camera. Теперь камера отображается слева в иерархии. Нажмите на нее и справа у вас появится блок с инспектором объекта. Пролистайте его вниз и нажмите на горизонтальную серую кнопку "Open Vuforia Engine Configuration". В открывшемся блоке найдите поле App License Key и скопируйте туда лицензионный ключ Vuforia. Ключ сохранится сам - ни на какие кнопки здесь больше нажимать не надо.
14. Добавьте блок объекта, который будет привязан к файлу цели - ваша 3D-модель: GameObject - Vuforia Engine - Image. В иерархии у вас появится Image Target (2).
15. Добавьте файлы .obj и .png в проект либо перетащив их мышью в поле (11), либо через путь Assets - Import New Asset.
16. Перетащите мышью сначала файл .obj, а затем и файл .png внутрь Image Target.
17. С помощью мыши в окне проекта, либо с помощью шкал (6,7,8) вращайте объект так, чтобы он стал виден в окне AR-камеры (4). Если AR-камера направлена на ваш объект, значит он будет виден. Сам объект в окне (10) и камеру (9) можно двигать, зажав кнопкой мыши.
(7,8) - положение и вращение объекта
(6) - размер объекта.
Значения у (7,8) могут быть отрицательными.
18. Если вы добились результата как на скриншоте выше, то можете проверить работоспособность AR-проекта. Нажмите на кнопку запуска (5), и если у вас есть подключенная веб-камера, она включится и вы сможете поднести к ней изображение, к которому привязывали объект. Как только вы увидите, что AR-объект появляется, можно сохранять проект. Отключите веб-камеру, снова нажав на кнопку запуска.
19. Сохраните проект по пути: File - Save Project. В качестве директории используйте путь без кириллических папок!
20. Перейдите по пути File - Build Settings и выберите платформу сохранения - если у вас Android, то Android, если iPhone, то iOS. Внизу можно открыть player settings и добавить файл цели в качестве иконки приложения. В окне компоновки (File - Build Settings) поставьте галку напротив параметра development build. Теперь нажмите build.
Если все верно, минут через 5-10 в папке назначения появится файл приложения в формате .apk
21. Загружаете файл в ваш смартфон и запускаете через любой файловый менеджер (одно нажатие по файлу). Далее разрешаете установить этот файл как приложение из неизвестного источника. Когда иконка приложения появится на экране смартфона, запускаете приложение и наводите камеру на ваш файл цели. Как только там появится объект, делаете скриншот. Ссылку на опубликованный скриншот нужно оставить в комментарии к данному посту или скинуть в группу в telegram до 15:00 29 сентября.
Комментарии