Oculus Unity

De FFAWiki

Un Jugador

Importar Paquets

  • Posar el Package Manager amb mode prova:
  • Package Manager -> Icona de configuració -> Advanced Project Settings -> enable Preview Packages
PackageManagerProva.png
  • Entrar a Package Manager, filtrar per Unity Registry:
  1. XR Interaction Toolit
  2. XR Plug-in Management
  3. Instal·lar SDK Oculus per Unity
  4. Prefab de les mans (entre altres)

Activar Suport de oculus

  1. Edit -> Project Settings -> XR Plug-in Management
    1. Anar a la pestanya d'Android i habilitar Oculus
    2. ActivarSuportAndroid.png
  2. Edit -> Project Settings -> XR Plug-in Management -> Oculus
    1. Editar preferències segons necessitats.
    2. ActivarSuportAndroidOculus.png

Afegir l'esquelet (l'entorn VR)

  1. Eliminar la càmera per defecte de l'escena a la finestra Hierarchy
  2. A la finestra de Project, anar a:
    1. Assets -> Oculus -> VR -> Prefab -> OVRCameraRig
    2. Arrossegar OVRCameraRig a l'escena (Hierarchy).
  3. Al objecte OVRCameraRig -> Inspector -> OVR Manager (Script)
    1. Al paràmetre Quest Features el posem en mode General.
    2. L'opció Render Model Suport la canviem a Enabled.
      1. RenderModelAndroid.png
  4. Afegir el controlador de les mans:
    1. A Project anar a: Assets -> Oculus -> VR -> Prefabs -> OVRRuntimeControllerPrefab
    2. Arrossegar OVRRuntimeControllerPrefab a LeftControllerAnchor i a RightControllerAnchor
    3. Tant a LeftControllerAnchor com a RightControllerAnchor assignar a l'script (ja afegit), OVR Runtime Controller i posar el paràmetre Controller L Touch/ R Touch respectivament.
      1. ControladorMansOculus.png
    4. Afegir el prefab de les mans respectivament:
      1. En la finestra de project i anar a: Assets -> Prefabs
      2. Arrossegar Left Hand Presence a LeftControllerAnchor i el mateix amb Right Hand Presence però a RightControllerAnchor
      3. PrefabMansOculus.png

Crear Objectes interactius

  • Farem un entorn de prova, després cadascú pot utilitzar l'exemple com a base.
  1. Creem un terra, un quadrat que farà de taula i un altre quadrat que farà d'objecte interactiu:
    1. Creem una carpeta a Assets anomenada Materials on guardarem els materials
      1. Crearem els materials Vermell i Negre.
    2. A l'escena (Hierarchy) fem clic dret -> 3D Object -> Plane
      1. Li assignem el material negre.
    3. A l'escena (Hierarchy) fem clic dret -> 3D Object -> Cube i posicionar-lo al gust.
    4. A l'escena (Hierarchy) fem clic dret -> 3D Object -> Cube, el fem més petit i el posicionem sobre el cub creat anteriorment.
      1. Li afegim un Box Colider (si no el te ja), un Rigidbody, i l'script OVRGrabbable
    5. Assignem a les mans (LeftHandAnchor i RightHandAnchor) un Sphere Collider:
      1. Posar Radius a 0.05.
    6. Assignem a les mans (LeftHandAnchor i RightHandAnchor) l'script OVRGrabber:
      1. Activar Parent Held Object
      2. Assignar RightControllerAnchor a Grip Transform i repetir el procés amb l'altra mà.
      3. Afegir el Sphere Collider del mateix objecte com a nou element de Grap Volumes.
      4. Seleccionar L Tocuh/R Touch respectivament (la ma dreta i l'esquerra) en el paràmetre Controller.
      5. ObjecteInteractuaOculus.png

Multi Jugador

Importar Paquets

Configurar Photon (WEB)

  • T'has de crear un compte a Photon
  • Crearem una nova app (Create a new app):
  1. Posem tipus PUN en la primera opció
  2. Posem un nom
  3. Li donem a CREATE
  4. CrearPun.png
  5. Anem al Dashboard i ens situem a les nostres app
  6. Copiem el APP id de l'app que acabem de crear
  7. APPidPun.png

Configurar Photon (UNITY)

  • Posarem l'id de l'APP a unity
  1. Window -> Photon Unity networking -> Highlight Server Settings
  2. Posar la id anteriorment copiada a App Id PUN
  3. APPidPunUnity.png

Configurar/Crear NetworkManager

  1. Creem un Empty a l'escena anomenat NetworkManager
  2. Creem i assignem a l'objecte anterior l'script NetworkManager
    1. ScriptNetworkManager.png
  3. Creem i assignem a l'objecte anterior l'script NetworkPlayerSpawner
    1. ScriptNetworkPlayerSpawner.png

Crear el Prefab del player dels clients de la xarxa

  1. Creem un Empty anomenat Network Player.
    1. Li assignem l'script Photon View
    2. Posem a dins un Empty que es dirà Head i li assignem l'script Photon Transform View amb els paràmetres que es mostren a la captura:
      1. PhotonTransformView.png
    3. A dins el Head Posem una Sphere amb Scale x0.17 y0.17 z0.17 i Position tot a 0
    4. Dins el Network Player posem dos empty mes amb els noms LeftHand/RightHand
    5. A LeftHand/RightHand li assignem l'script Photon Transform View amb els paràmetres que es mostren a la captura anterior
    6. A la finestra Project anem a Assets -> Models -> prefabs i assignem "Custom Left Hand Model/Custom Right Hand Model" a "LeftHand/RightHand" respectivament
      1. NetworkPlayerPrefab.png
    7. Tan a Custom Left Hand Model com a Custom Right Hand Model li assignem l'script Photon Animator View amb les característiques que es mostren a la captura:
      1. PhotonAnimatorView.png
  2. Creem una carpeta a Assets que es digui Resources (si no està ja creada).