Welcome to the Immersive Virtual Reality Kiosk project, a Unity-based VR application designed for the Meta Quest headset and keyboard/mouse navigation. This interactive experience simulates a virtual kiosk that allows users to explore, interact with, and purchase items in an immersive environment. With intuitive controls and an engaging 3D world, the application redefines how users interact with virtual kiosks.
- Dual Control Modes: Use VR controllers or keyboard/mouse for navigation and interactions.
- Interactive Environment: Explore a fully interactive VR world.
- Grabbable and Usable Items: Interact with kiosk items in a realistic way.
- Optimized for VR: Designed for smooth performance on the Meta Quest.
- Customizable Layout: Modify the kiosk’s items and layout to suit your needs.
- Keyboard Controls:
- Use
W
to move forward. - Use
S
to move backward. - Use
A
to move left. - Use
D
to move right.
- Use
- Press
2
to select the left hand or3
to select the right hand. - Use the
W
,S
,A
,D
keys to position the selected hand/controller. - Mouse Interaction:
- Click the mouse button to press on an item.
- If you are done using the hands/controllers, press
1
to deactivate them.
- Install Unity version 2022.3.16f1.
- Install VRTK version VRTK v4.
- Clone the repository:
git clone https://github.com/Sengeki1/Immersive_VR_Kiosk.git cd Immersive_VR_Kiosk
- Open the project in Unity.
- Set the target platform to Android (for Meta Quest) or Windows (for desktop testing). If target platform is for Meta Quest, ensure that
UnityXRPluginFramework
is enabled andCameraRigs.SpatialSimulator
is disabled. One can do this by clicking Toggle Active State. - Build and deploy using Unity’s build tools.
Below is a list of assets used in this project that were not created in-house:
-
Models:
- Electronic Game - Source: https://poly.pizza/m/QIJoiNqjrk
- Desk - Source: https://poly.pizza/m/ISpMh81QGq
- Desk2 - Source: https://poly.pizza/m/V86Go2rlnq
- Computer - Source: https://poly.pizza/m/2EHvZLax4Y3
- Gaming Computer - Source: https://poly.pizza/m/5cN7W4ufoII
- Nintendo - Source: https://poly.pizza/m/7djOS0WspSC
- Xbox Controller - Source: https://poly.pizza/m/6365MG_Pr_f
- Gameboy - Souce: https://poly.pizza/m/deWDBf0K9-d
- Sword: - Source: https://poly.pizza/m/94l5DEVQPM2
- Super Mario - Source: https://poly.pizza/m/9F626rbfYOH
- Animated Platformer Character - Source: https://poly.pizza/m/kKtL4zvS3n
- Nintendo Switch - Source: https://poly.pizza/m/47Rdi4mHQjJ
- Computer - Source: https://poly.pizza/m/2EHvZLax4Y3
- Arcade - Source: https://poly.pizza/m/1LiCc_g8Lmk
- Cockpit - Source: https://poly.pizza/m/hy6WkRIuEh
- Cockpit_2 - Source: https://poly.pizza/m/ccQg0nHGSA9
- Go Kart - Source: https://poly.pizza/m/MkByxZCSMA
- Kart - Source: https://poly.pizza/m/bKDlM4mH7rg
-
Sounds/Music:
- Super Duper - Source: https://artlist.io/royalty-free-music/song/super-duper/4989
Below are some screenshots showcasing the application running in both VR and desktop modes:
- The application consistently maintained a locked frame rate of 60 FPS, even during high object interaction or physics simulations.
https://www.youtube.com/watch?v=hI1ajP7XgXc
The experience of interacting with the application in a VR simulator compared to the actual headset is vastly different.
- Allows quick testing of functionality without requiring the headset.
- Mouse and keyboard controls enable precise debugging.
- Lacks full immersion due to the absence of head and hand tracking.
- Provides full immersion, leveraging the Quest’s capabilities.
- Interaction feels natural, with precise hand-tracking and spatial awareness.
- Visual and audio fidelity are optimized for the user, creating a more engaging experience.
The portfolio value of this project is immense, showcasing a range of technical and creative skills highly relevant in the modern software and gaming industries. It highlights your ability to design and develop interactive virtual environments that cater to both VR headset users and traditional keyboard/mouse users, demonstrating flexibility in user experience design.