El Desafío de la Realidad Aumentada Autónoma
Proyectar un modelo 3D sobre una mesa es un problema resuelto hace años. Sin embargo, desarrollar una entidad virtual que "comprenda" ese entorno, tome decisiones de forma independiente y mantenga conversaciones contextuales de voz exige una arquitectura de sistemas altamente orquestada. Este proyecto une la renderización en tiempo real de Unity con la inteligencia de modelos como Gemini o GPT-4, creando no solo una mascota, sino un agente espacial inteligente.
El Motor de AR: Profundizando en Vuforia Engine
Para que la mascota pueda existir en nuestro mundo, necesitamos un sistema robusto de Visión Computacional. Aquí es donde Vuforia brilla, alejándose de los simples "marcadores" (imágenes QR) para usar un sistema avanzado de SLAM (Simultaneous Localization and Mapping).
En el contexto de este proyecto, la clave técnica de Vuforia reside en su tecnología de Ground Plane Detection.
Mapeo del Entorno en Tiempo Real: Vuforia no solo busca un "piso"; utiliza la cámara y los sensores inerciales del dispositivo (giroscopio y acelerómetro) para identificar Feature Points (puntos de alto contraste) en el entorno físico. A partir de estos puntos, triangula una nube de puntos 3D para entender la profundidad y la geometría del espacio.
Plane Finder y Smart Terrain: En Unity, utilizamos el componente
Plane Finder Behaviourde Vuforia. Este script escanea continuamente los feature points para generar superficies horizontales válidas. Una vez detectadas, se utiliza elGround Plane Stage, que actúa como el ancla (Anchor) espacial. La mascota se instancia como hija de este ancla, asegurando que cuando el usuario mueva el teléfono, el modelo 3D permanezca "pegado" a la malla física calculada, compensando el movimiento de la cámara en milisegundos.El Reto de la Navegación (Pathfinding): El mundo real no tiene un NavMesh estático. Para que la mascota camine sin atravesar paredes físicas, el sistema debe generar colisionadores dinámicos basados en los planos detectados por Vuforia. Se emplean técnicas de Raycasting continuo desde la mascota hacia el entorno de AR; si el rayo no detecta el plano de Vuforia (indicando un borde o una caída), la Máquina de Estados de la mascota interrumpe la animación de caminar y recalcula una nueva ruta segura.
El Cerebro: Máquinas de Estados y LLMs
La autonomía de la mascota se divide en dos capas lógicas:
Autonomía de Bajo Nivel (FSM): Un script en C# gestiona una Máquina de Estados Finitos (FSM). Controla variables internas como "energía" o "aburrimiento". Si el usuario no interactúa, la FSM transiciona al estado Wander (deambular) por el plano de Vuforia, o al estado Sleep (dormir), activando los controladores de animación correspondientes mediante Unity Animator.
Inteligencia de Alto Nivel (LLM): Cuando el usuario le habla a la mascota, el procesamiento se delega a la nube.
Arquitectura de Conexión y Backend
La aplicación de Unity actúa como un cliente ligero. Las credenciales de la API y el procesamiento pesado se aíslan en un backend intermediario construido con Node.js y TypeScript. Este servidor expone una API RESTful, utilizando Express.js o Fastify, y se gestiona mediante pnpm para el control de paquetes.
El ciclo de vida de una interacción (POST /api/v1/interact) se ejecuta en la siguiente tubería:
Captura y Envío: Unity captura el micrófono del usuario y envía un blob de audio multipart/form-data al servidor Node.js.
Speech-to-Text (STT): El backend consume servicios como Whisper API o Google Cloud Speech-to-Text para transcribir el audio a texto.
Procesamiento de Lenguaje Natural: El texto se envía al LLM (Gemini/OpenAI). Aquí es crítico el uso de un System Prompt robusto para inyectar la personalidad de la mascota y mantener el contexto inyectando el historial de la sesión.
Text-to-Speech (TTS): La respuesta del LLM se envía a motores vocales neuronales (como ElevenLabs o Google Cloud TTS) para generar un archivo de audio natural.
Ejecución: El backend devuelve a Unity un JSON con la URL del audio generado y metadatos (ej. emoción). Unity descarga el audio, lo reproduce espacializado en la posición de la mascota, y dispara la animación de hablar.
Despliegue y Escalabilidad
Para asegurar que el entorno de desarrollo sea replicable y el paso a producción sea limpio, toda la arquitectura del backend está preparada para ser contenedorizada con Docker. Esto permite desplegar la API en plataformas de orquestación (como Kubernetes) de forma sencilla, garantizando que el puente entre la magia visual de Vuforia en el dispositivo móvil y la potencia cognitiva de los LLMs en la nube funcione con la menor latencia posible.