Tabla de contenido:

Aplicación de realidad aumentada para principiantes: 8 pasos
Aplicación de realidad aumentada para principiantes: 8 pasos

Video: Aplicación de realidad aumentada para principiantes: 8 pasos

Video: Aplicación de realidad aumentada para principiantes: 8 pasos
Video: Crea app de Realidad Aumentada con Vuforia Image Target | Unity Tutorial 2024, Noviembre
Anonim
Aplicación de realidad aumentada para principiantes
Aplicación de realidad aumentada para principiantes
Aplicación de realidad aumentada para principiantes
Aplicación de realidad aumentada para principiantes

Este tutorial le mostrará cómo hacer una aplicación de realidad aumentada para principiantes. Usaremos Unity3D y la detección del plano de tierra de Vuforia para crear una aplicación AR sin marcadores para Android o IOS. Pasaremos por agregar un modelo 3D a Unity y moverlo con un joystick móvil. Este método también funcionará con cualquier otro modelo 3D gratuito que pueda encontrar.

Paso 1: ¿Funcionará esto en tu teléfono?

¿Funcionará esto en tu teléfono?
¿Funcionará esto en tu teléfono?

En primer lugar, debemos asegurarnos de que su teléfono sea compatible con la detección de plano de tierra de Vuforia, así que asegúrese de que su teléfono esté en la lista de dispositivos compatibles.

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

Lo único que necesitará en cuanto a software es la versión gratuita de Unity. Si aún no lo tiene, vaya a Unity3d.com y haga clic en obtener Unity. Ahora estoy usando la versión 2018.2.0, si esta versión ya no está disponible, vaya a versiones anteriores de Unity y descargue 2018.2.0.

Durante el proceso de instalación, asegúrese de instalar los paquetes para IOS o Android según el tipo de teléfono que tenga y asegúrese de instalar el soporte de Vuforia.

Paso 2: Inicie un nuevo proyecto de Unity

Inicie un nuevo proyecto de Unity
Inicie un nuevo proyecto de Unity

Inicie un nuevo proyecto de Unity y elimine la cámara principal. En la barra de menú superior, vaya al objeto del juego, vuforia y agregue una "ARCamera".

Antes de que nada pueda funcionar, debemos habilitar Vuforia, así que vaya a la configuración de creación de archivos, cambie la plataforma, la configuración de XR y habilite el soporte de realidad aumentada de Vuforia.

Haz clic en el objeto del juego "ARCamera" y en el inspector haz clic en Configuración de Vuforia. En la parte inferior, habilite el seguimiento del dispositivo y cambie el modo de seguimiento a posicional.

Agregue un escenario de plano de tierra y un buscador de avión del mismo menú de Vuforia del que obtuvo la cámara.

En el buscador de aviones, cambie el menú desplegable a interactivo, desmarque el escenario duplicado y arrastre el objeto del escenario del plano del suelo a la ranura de escenario de ancla vacía en el buscador de aviones.

Ahora necesitamos agregar nuestro joystick para que en el menú superior vaya a activos, paquete de importación, entrada multiplataforma.

En la carpeta de activos estándar recién agregada, vaya a prefabricados y arrastre el prefabricado de control de un solo stick móvil a la escena.

Elimina el botón de salto. Haga clic derecho en la jerarquía y agregue una interfaz de usuario, sistema de eventos.

Por último, en el objeto del juego raíz del joystick, haga clic para agregar un componente y agregar un escalador de lienzo. Cambie su menú desplegable para escalar con el tamaño de la pantalla. En el script de Joystick, cambie el rango de movimiento a 25.

Paso 3: crea una palanca

Crea una palanca
Crea una palanca

Ahora, el comportamiento predeterminado del comportamiento de posicionamiento del contenido es que cada vez que hacemos clic en la pantalla, la etapa del plano del suelo se reposiciona. Esto incluye cuando hacemos clic en objetos de la interfaz de usuario como botones o joysticks, por lo que no es lo que queremos. Dado que Vuforia actualmente no permite editar el comportamiento de posicionamiento del contenido para corregir este problema, podríamos escribir el nuestro desde cero o, por el bien de este tutorial, solo vamos a crear un interruptor que active o desactive esta funcionalidad.

Haga clic derecho en el joystick y cree una interfaz de usuario, alternar. Expanda todo y cambie los colores o el texto si lo desea.

En la sección de cambio de valor activado de la palanca, agregue el buscador de aviones y haga que active el objeto del juego en función del valor de la palanca. Ahora, una vez que el objeto se coloca en el mundo, probablemente deberíamos apagar el interruptor, así que vaya al comportamiento de posicionamiento del contenido y arrastre el interruptor al contenido activado colocado uniformemente y desactive el interruptor.

Paso 4: ¡MONSTRUO

¡MONSTRUO!
¡MONSTRUO!

Vaya a la ventana, general y agregue una ventana de la tienda de activos.

Busque "personaje monstruo" y ordene por gratis, tome el primer resultado e importe ese.

Arrastre el monstruo prefabricado debajo del escenario del plano de tierra para convertirlo en un niño. Establezca su posición y rotación a cero. Establezca su escala xy y z en.1.

Vaya al animador y elimine todo menos la entrada. Arrastre las animaciones de caminar e inactivo desde la carpeta de animaciones del monstruo.

En la sección de parámetros, haga clic en el botón más y agregue dos activadores "caminar" e "inactivo".

Haga clic en cada animación y agregue una transición a la otra.

Haga clic en cada transición y agregue una condición, ponga en marcha para la primera e inactivo para la segunda. Desmarque tiene tiempo de salida y arrastre todos los controles deslizantes a 0 en cada uno.

Ahora queremos que cada animación se repita, así que haga clic en cada animación y navegue hasta su clip. Haga clic en editar en cada uno y verifique el tiempo de ciclo.

Paso 5: Controlar nuestro carácter

Controlando nuestro carácter
Controlando nuestro carácter

Haga clic derecho en la carpeta de activos y cree un script de C # llamado "CharacterController" y agregue esto:

usando System. Collections;

usando System. Collections. Generic; usando UnityEngine; utilizando UnityStandardAssets. CrossPlatformInput; CharacterController de clase pública: MonoBehaviour {velocidad de flotación constante privada =.1f; animador privado; // Use esto para la inicialización void Start () {anim = GetComponent (); } // La actualización se llama una vez por cuadro void Update () {// mueve el carácter desde el joystick input float x = CrossPlatformInputManager. GetAxis ("Horizontal"); float y = CrossPlatformInputManager. GetAxis ("Vertical"); if (! x. Equals (0) &&! y. Equals (0)) {transform.eulerAngles = new 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 * speed; anim. SetTrigger ("caminar"); } else {anim. SetTrigger ("inactivo"); }} public void PlaceCharacter () {transform.localPosition = Vector3.zero; }}

Paso 6: Déjame explicarte

Dejame explicar
Dejame explicar

En primer lugar, tenemos un flotador constante definido en la parte superior, así que si quieres que tu monstruo se mueva más rápido o más lento, cambia ese valor.

Este script se agregará a nuestro monstruo para que podamos hacer algo como "GetComponent ()" para obtener una referencia a este animador de monstruos (de esa manera podemos reproducir las animaciones desde el código).

Luego obtenemos el movimiento xey del joystick del administrador de entrada multiplataforma y los guardamos en una variable.

Luego usamos esas dos variables para girar y mover el monstruo de acuerdo con la entrada del joystick.

Si el monstruo se está moviendo, jugaremos la animación de caminar y si no se está moviendo jugamos la animación inactiva.

La última función que tenemos es la de volver a poner la posición local de los monstruos en cero cada vez que se reposiciona el plano del suelo. Entonces, con la forma en que nuestra aplicación está configurada ahora, Vuforia reposicionará la etapa del plano de tierra cada vez que hagamos clic en la pantalla. Nuestro monstruo puede moverse por el escenario, por lo que debemos volver a poner su posición en cero, en relación con el escenario, cada vez que se reposiciona.

Paso 7: ¡Toques finales

¡Últimos retoques!
¡Últimos retoques!

Finalmente solo necesitamos agregar nuestro CharacterController.cs a nuestro monstruo. Así que vaya a la transformación raíz del monstruo prefabricado en la jerarquía y haga clic en él. Esto lo levantará hacia el inspector a la derecha. Haga clic en agregar componente y busque la secuencia de comandos del controlador de caracteres. Agregue eso.

También debemos asegurarnos de que se llame a nuestra función PlaceCharacter, así que ve al objeto del juego del buscador de aviones y haz clic en él.

En el inspector debe haber una sección avanzada en la que puede hacer clic para expandir. Hay un evento de Unity llamado "OnContentPlaced". Agregue una función a eso haciendo clic en el botón más. Arrastra al monstruo a la ranura vacía allí, elige la secuencia de comandos del controlador de personaje y finalmente elige la función "Colocar personaje".

Paso 8: Consigámoslo en su teléfono

Consigámoslo en tu teléfono
Consigámoslo en tu teléfono

Si está en Android o IOS, haga clic en el archivo, cree la configuración y vaya a la configuración del reproductor para su plataforma respectiva. En ambos casos, asegúrese de incluir algo para el identificador del paquete (en el formato "com. YourName. YourAppName"). También asegúrese de tener algún mensaje en el campo de descripción del uso de la cámara.

Si está en Android, desmarque la compatibilidad con Android TV y cambió su objetivo de compilación mínimo a Nougat.

Presione compilar y ejecutar, o compilar e instalar el.apk con ADB o Android Studio.

Si está en IOS, presione compilar y luego abra la carpeta resultante en XCode. Regístrese para obtener una cuenta de desarrollador de Apple gratuita (si aún no la tenemos) elija su equipo y presione el botón de reproducción para obtenerlo en su teléfono.

¡Háganme saber en los comentarios si tienen alguna pregunta!

Recomendado: