One More Cup of Coffee

Project 2

Introduction

This project is focused on immersive Virtual Reality at room scale built using Unity and VRTK v4. The project features a kiosk in the new CS building in UIC in which we are allowed to sell anything and I have chosen to sell sport equipments. Most of the models in the kiosk are interactable/grabbable and some will even play some sound when interacted with. For example, the cash register will create a new receipt or the bat will play a sound of a bat hitting a ball when they are interacted with. You can run this project on both your computer using the simulator or using a Quest headset for a more immersive experience.

Video

How to install the project

Project Link
  1. Download the project from the link.
  2. Sign up and download Unity Hub.
  3. On Unity Hub, go to install and click "Install Editor"
    Select version 2021.3.6f1. If it is not there, select "Archive" and download it from the Unity download archive.
  4. Add VRTK v4 Tilia Package Importer from Unity Asset Store.
  5. Go back to Unity Hub, click open and select the folder containing the project.
  6. Now, you should be able to run the project with the simulator by clicking the button on the top.
  7. If you want to run the project on a Quest headset, you need to:
    • Enable CameraRigs.UnityXRPluginFramework
    • Disable CameraRigs.SpatialSimulator
  8. Click on "Build Settings..."(CTRL+SHIFT+B) from the File tab.
  9. Select "Android" and select your Quest headset under "Run Device."
  10. Then click "Build and Run"
  11. Now it should show up on the headset and you can run it from there.

Screenshots

Models created

Name Image
Hockey Stick
Golf Club
Baseball Bat
Dumbbell
Jersey
(Shirt + pants)
Me
(made with MakeHuman and Mixamo)

Assets

Name Source link Image
Models
Football Helmet Free low-poly 3D model
by romanejaquez
https://www.cgtrader.com/free-3d-models/sports/equipment/
football-helmet-2ac3769e-6aed-4577-b5d1-b7df46f33e81
new balance 996 Free 3D model
by powwow1
https://www.cgtrader.com/free-3d-models/interior/
house-interior/new-balance-996
Baseball Free 3D model
by Thruxton900
https://www.cgtrader.com/free-3d-models/sports/equipment/
baseball-f364a1d9e81d39cf8b39ef670d193e86
White Badminton Racket Free low-poly 3D model
by richardhind
https://www.cgtrader.com/free-3d-models/sports/equipment/
white-badminton-racket
Low Polygon Soccer Ball
by Ahmet Gencoglu
https://assetstore.unity.com/packages/3d/
low-polygon-soccer-ball-84382
Free Basketball ball Free 3D model
by lucasbenicio
(Color lost after importing, so I added my own material)
https://www.cgtrader.com/free-3d-models/sports/
equipment/free-basketball-ball
Free Tennis Ball Free 3D model
by alef-itd
https://www.cgtrader.com/free-3d-models/sports/toy/
free-tennis-ball-951923a83597e7db3def99b660cf0fa3
Low Poly Boxing Glove Free low-poly 3D model
by Banism
(left and right used as individual models)
https://www.cgtrader.com/free-3d-models/character/
clothing/low-poly-boxing-glove
Baseball Hat Free 3D model
by romanejaquez
(Color lost after importing, so I added my own material)
https://www.cgtrader.com/free-3d-models/sports/equipment/
baseball-hat-9f6cc8cf-ddb3-48be-8eb8-fe4e3b5e5e04
Low-Poly Table Tennis Set
by NaDe
(Paddle and ball used as individual models)
https://assetstore.unity.com/packages/3d/props/
low-poly-table-tennis-set-181749
Tv
by Algirdas Lalys
https://sketchfab.com/3d-models/tv-928c4eb3c875463bbde6fda85b7d8b3a
Cash Register
by wasabicats
https://sketchfab.com/3d-models/cash-register-87562962d47e48b28cc1b874fa46a47f
Maneki-Neko
by OctaDC
https://sketchfab.com/3d-models/maneki-neko-118f19a1e9a1479285a3141c0d1f9b3f
Mannequin
by Emmanuel Okafor
(Download link in description)
(There was a shirt included with the blender file but I only used the mannequin)
https://www.youtube.com/watch?v=GcM9nZrG6NY
Sounds
Stadium Crowd
by stomachache
https://freesound.org/people/stomachache/sounds/274516/
CTCollab SFX by Liam Gilchrist ยป Baseball Bat Hit 1
by CTCollab
https://freesound.org/people/CTCollab/sounds/223609/
Badminton.wav
by 13FPanska_Marval_Lukas
https://freesound.org/people/
13FPanska_Marval_Lukas/sounds/379325/
Golf - Golfswing with 3WD [1].wav
by robbera
https://freesound.org/people/robbera/sounds/14598/
Welcome - High quality!
by kathid
https://freesound.org/people/kathid/sounds/184478/
Wii Music Background Music Sound Effect
by DJ LUNATIQUE
https://djlunatique.com/
wii-music-background-music-sound-effect/

Credits

Simulator vs Headset

Obviously, one of the biggest difference in viewing and interacting with this virtual world I created is how immersive it is. The main factor that contributes to the difference would defintely be the field of view. With the simulator, our field of view is limited to what can be shown through a flat screen and we do not feel as if we are really in this world, but as if we are looking at someone else in this world from a third point of view. The headset, however, it envelops our whole field of vision and we are experiencing the virtual world as if we exist there with the view changing as we turn our heads.

One problem that I encountered a lot when testing the project locally was with the controllers in the simulator. The controller was moving too quickly and it was very difficult to control the direction you wanted to move it to, which resulted in it being "lost" most of the time. It was also very difficult to simulate picking up items with both hands, or swapping it to the other hand if one hand is already holding the item, because we cannot control both controllers at the same time on the simulator. This problem does not occur when using the headset because the controllers track the speed of our hands when we are holding it and it will always follow the position of where your hand is currently. Futhermore, there would be no problem interacting with the models using both hands at the same time. On the other hand, there was not much difference when it came to sound although this may be because I was using earphones when testing it. It certainly will not be as immersive and the effect of the sound from the TV becoming louder or softer based on our distance would have been less apparent.

The simulator is best for development and testing as it allows us to stop and rerun the project from the beginnig easily. With the headset, you would need to rebuild and reupload in order to see the changes reflected, which is not very efficient especially if you are only making small changes. Overall, the headset would definitely provide a more immersive experience and it will certainly be better for interaction.