| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| informatica:realidad_virtual:unity [2023/01/30 23:07] – jose | informatica:realidad_virtual:unity [2023/02/05 23:35] (current) – jose |
|---|
| {{:informatica:realidad_virtual:oculus_03.png|}} | {{:informatica:realidad_virtual:oculus_03.png|}} |
| |
| Ahora instalamos el plugin de XR. "Edit > Project Settings" luego "XR Plugin Management" y "Install XR Plugin Management" | Ahora instalamos el plugin de XR. "Edit > Project Settings" luego "XR Plugin Management" y "Install XR Plugin Management". También lo podemos instalar desde "Window > PAckage Manager" |
| |
| {{:informatica:realidad_virtual:oculus_04.png|}} | {{:informatica:realidad_virtual:oculus_04.png|}} |
| {{:informatica:realidad_virtual:oculus_11.png|}} | {{:informatica:realidad_virtual:oculus_11.png|}} |
| |
| Seleccionamos "XRI Default Left Controller" y pulsamos a la derecha: "Add to ActionBaseController default"\\ | Seleccionamos los siguientes Assets: |
| Lo mismo para "XRI Default Right Controller" | XRI Default Left Controller |
| | XRI Default Left Grab Move |
| | XRI Default Right Controller |
| | XRI Default Right Grab Move |
| | |
| | y pulsamos a la derecha: "Add to ActionBaseController default"\\ |
| |
| {{:informatica:realidad_virtual:oculus_12.png|}} | |
| |
| Ponemos un nombre por defecto. Vamos a "Edit > Project Settings" y en "Preset Manager" ponemos "Left" y Right" | |
| |
| {{:informatica:realidad_virtual:oculus_13.png|}} | {{:informatica:realidad_virtual:oculus_13.png|}} |
| | |
| | Ahora vamos a "Edit > Project Settings" y en "Preset Manager" y ponemos "Left" y Right" |
| | |
| | {{:informatica:realidad_virtual:oculus_12.png|}} |
| |
| |
| {{:informatica:realidad_virtual:oculus_14.png|}} | {{:informatica:realidad_virtual:oculus_14.png|}} |
| |
| Bajamos el suelo un poco para que quede por debajo del jugador | Si queremos bajamos el suelo un poco para que quede por debajo del jugador |
| | |
| Tenemos que hacer que detecte los input assets. Seleccionamos "XR Origin" y en la derecha seleccionamos "Add Component" | |
| | |
| {{:informatica:realidad_virtual:oculus_15.png|}} | |
| | |
| Buscamos "Input Action Manager" y lo seleccionamos | |
| | |
| {{:informatica:realidad_virtual:oculus_16.png|}} | |
| | |
| Abrimos "Action Assets". Tiene seleccionado el único que tenemos que viene por default. | |
| |
| {{:informatica:realidad_virtual:oculus_17.png|}} | Nos fijamos que XR Origin tenga el componente "Input Action Manager" y que en "Action Assets" tenga "XRI Default Input Actions" |
| |
| ====== Coger un objeto a distancia ====== | ====== Coger un objeto a distancia ====== |
| {{:informatica:realidad_virtual:oculus_41.png|}} | {{:informatica:realidad_virtual:oculus_41.png|}} |
| |
| Será el punto en el que lo cojamos | Será el punto en el que lo cojamos. Ponemos Rotation: -90, 0, 180 |
| |
| {{:informatica:realidad_virtual:oculus_28.png|}} | {{:informatica:realidad_virtual:oculus_28.png|}} |
| |
| Al jugador (XR Origin) le añadimos con "Add Component": | Al jugador (XR Origin) le añadimos con "Add Component": |
| -Continous Move provider | -Continuous Move provider |
| -Continous Turn provider | -Continuous Turn provider |
| |
| Seleccionamos la mano derecha para girar. Pulsamos en "Continous Turn Provider", marcamos el check de "Use Reference" y en "Reference" ponemos "XRI RightHand Locomotion Turn" | Seleccionamos la mano derecha para girar. Pulsamos en "Continuous Turn Provider", marcamos el check de "Use Reference" y en "Reference" ponemos "XRI RightHand Locomotion Turn" |
| |
| {{:informatica:realidad_virtual:oculus_42.png|}} | {{:informatica:realidad_virtual:oculus_42.png|}} |
| |
| Ahora tenemos que añadir que haga colisión con los objetos. Añadimos a "XR Origin" el componente "Character Controller" y "Character Controller Driver". En "Character Controller Driver" ponemos "Min Height" 1 y "Max Height" 2 que sería altura entre 1 metro y 2 metros. | Ahora tenemos que añadir que haga colisión con los objetos. Añadimos a "XR Origin" el componente "Character Controller" y "Character Controller Driver". En "Character Controller Driver" ponemos "Min Height" 1 y "Max Height" 2 que sería altura entre 1 metro y 2 metros. |
| | |
| | {{:informatica:realidad_virtual:oculus_46.png|}} |
| |
| Hay un problema que hace colisión con un objeto cogido y empiezas a volar | Hay un problema que hace colisión con un objeto cogido y empiezas a volar |
| https://forum.unity.com/threads/grabbed-rigidbody-is-moving-my-xr-rig.1087481/ | https://forum.unity.com/threads/grabbed-rigidbody-is-moving-my-xr-rig.1087481/ |
| |
| Lo he solucionado de momento en el objeto poniendo que al pulsar select (anular) le quite la propiedad boxcollider y al soltarlo se la vuelva a añadir. | Lo he solucionado de momento poniendo los objetos en diferentes layers que el cuerpo. Para crear una layer en las propiedades del objeto dentro de layers: |
| |
| {{:informatica:realidad_virtual:oculus_38.png|}} | |
| | {{:informatica:realidad_virtual:oculus_51.png|}} |
| |
| | Ponemos el XR Origin (pero sin los children) en un layer, por ejemplo que se llame "jugador" y los objetos en otra layer que se llame objetos. Al cambiar "XR Origin" a la layer Jugador, le tenemos que decir que no cambie los children, porque sinó, también cambiaría las manos y no podríamos coger los onjetos. |
| |
| | {{:informatica:realidad_virtual:oculus_52.png|}} |
| | |
| | Ahora en la matriz de colisiones decimos que esas dos layers no colisionen. Vamos a "Edit > Project Settings" y en "Physics" quitamos el check en el que coinciden las dos layers |
| | |
| | {{:informatica:realidad_virtual:oculus_53.png|}} |
| |
| ====== Teleport ====== | ====== Teleport ====== |
| |
| https://www.youtube.com/watch?v=ukZWzDqtcCQ | https://www.youtube.com/watch?v=ukZWzDqtcCQ |
| |
| ====== Puzzle ====== | |
| https://www.youtube.com/watch?v=iSYfs6NXZck | |
| |
| 16:15 - Scripts | |
| |
| Se crean las cartas. La caja del puzzle es "XR > Socket Interactor" | |
| |
| {{:informatica:realidad_virtual:oculus_39.png|}} | |
| |
| ====== URP Universal Render Pipeline ====== | |
| No sé para que sirve del todo, pero lo uso para dar luz a los materiales. | |
| |
| Instalación:\\ | |
| https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@7.1/manual/InstallURPIntoAProject.html | |
| |
| |
| |
| ====== Luces ====== | |
| https://www.youtube.com/watch?v=2PBgCl-zIZQ | |
| |