Como creamos con éxito nuestro primer proyecto de Unity dirigido al dispositivo Quest 2 en la publicación anterior, ahora obtendremos información sobre uno de los conjuntos de capacidades más potentes proporcionados por Meta a través de Presence Platform.
La plataforma de presencia está diseñada para crear una sensación de presencia compartida e interacción en entornos de realidad virtual. Permite que las personas se conecten, interactúen y se comprometan entre sí en espacios virtuales inmersivos utilizando auriculares VR.
Las características y capacidades de la plataforma de presencia de Meta incluyen:
Como puede ver, Presence Platform es un conjunto integral de subsistemas/características, y cubriré cada uno de ellos en detalle, pero para comenzar, comencemos con el seguimiento de manos como uno de los requisitos básicos para el desarrollo de juegos de realidad virtual: configuraremos , crea y lanza un juego de seguimiento de manos como experiencia.
Un punto de partida perfecto es la experiencia de Unity-FirstHand proporcionada por oculus-samples repo .
Nuevamente, consulte la publicación anterior sobre la configuración del entorno de desarrollo y asegúrese de que se hayan instalado varias dependencias.
Asegúrese de tener Git LFS instalado, ejecute este comando:
git lfs install
Luego, clone el repositorio usando el "Código", abriéndolo en el escritorio de Github y ejecutando el siguiente comando:
git clone https://github.com/oculus-samples/Unity-FirstHand.git
Todos los archivos del proyecto real están en Activos → Proyecto. Esta carpeta incluye todos los scripts y activos para ejecutar la muestra, excepto Interaction SDK. El proyecto incluye v41 de Oculus SDK, incluido Interaction SDK. Puede encontrar Interaction SDK en [Activos/Oculus/Interacción]{Activos/Oculus/Interacción).
Después de instalar todas las dependencias requeridas y configurar la compilación para que se ejecute en el dispositivo Quest, obtendrá algo similar a lo anterior en su editor.
Vaya a Archivo → Configuración de compilación si está usando Mac.
Si siguió las instrucciones de mi publicación anterior y conectó su dispositivo, a continuación se muestra lo que debería ver en Configuración de compilación.
Haga clic en Build and Run, espere unos minutos para que Unity cree y espere los mensajes que su aplicación está implementando en el dispositivo Quest conectado.
Le sugiero enfáticamente que juegue con este ejemplo e intente personalizar componentes y scripts para aprender cómo funciona internamente, para poder hacerlo, diríjase a la sección Proyecto de su editor de Unity y expanda la jerarquía de directorios del proyecto.
Personalizaremos LazerProjectile:
public class LazerProjectile : ActiveStateObserver { [SerializeField] Transform _target; [SerializeField] GameObject _effect; [SerializeField] float _rayCastDelay = 0.5f; [SerializeField] float _fadeOutTime = 0.1f; [SerializeField] float _delayBetweenShots = 0.5f; [SerializeField] AudioTrigger _chargeUp; [SerializeField, Optional] AudioTrigger _chargeUpComplete; protected override void Update() { base.Update(); Vector3 endPos = Vector3.Lerp(_target.position, transform.position + transform.forward * 20, 5 * Time.deltaTime); _target.position = endPos; } //...... }
Aumentemos el retraso de Ray Cast y probemos la aplicación en los auriculares reemplazando
float _rayCastDelay = 0.1f;
a
float _rayCastDelay = 0.5f;
¡Así es como funciona!
Pruébelo usted mismo y hágame saber lo que quiere construir usando el seguimiento manual.