This project is developed using Unity 2021.3.6f1, and VRTK v4 to help build a Virtual Reality application. The application was developed for the Oculus/Meta Quest platforms, to be tested with the Quest 1 headset.
This project is a continuation of project 2 where we were provided with a starter kiosk model placed in a very simplified model of the atrium of the CDRLC building at the University of Illinois at Chicago. This time, we were tasked with adding more 2D/3D models, sounds, lights, and interactives to the entire building in addition to our project 2 version of the kiosk, which we could modify too.
After adding models and modifying several things, I created an old and isolated bus stop at nighttime on the side of a road inside the building. There also is a somewhat creepy guy a bit down the road who you could poke at and get a response from. This project was supposed to be more flushed out, but ended in an unfinished state due to time constraints during the final few weeks of the semester.
To use the application, it is as simple as loading up the project files in Unity first, which has Android Build Support module installed alongside VRTK v4 Tilia Packages imported to the project.
If you want to run the application through the simulator on Unity, make sure to have CameraRigs.SpatialSimulator enabled, and CameraRigs.UnityXRPluginFramework disabled in the scene hierachy. Then press play button and the simulator would be running.
If you want to run the application on a Quest headset, connect the headset to your computer via a data USB cable, put on the headset and accept the PC connection. If there are no popups, the developer mode might not be turned on, so follow the instructions here to turn it on. Afterwards, make sure to have CameraRigs.SpatialSimulator disabled, and CameraRigs.UnityXRPluginFramework enabled in the scene hierachy. Then go into the Unity Build Settings to make sure you are building for Andriod and make sure your headset shows up in the Run Device list. If it doesn't show up, you may want to reconnect your headset and accept the PC connection in the headset again. You might want to save the project and restart Unity to re-configure itself properly. After that, you can click on Build and Run, and the application will be loaded onto the headset and open itself. You are then set to explore the kiosk in VR.
The project files can be dowloaded here.
List of 3D Assets Created by me using ProBuilder for the Project:
Coin
Flashlight
Payphone Tray
Clock Handles
List of 3D Assets and Textures Used for the Project:
Dirty Water Bottle - https://sketchfab.com/3d-models/dirty-water-bottle-game-ready-200eb008ebd340dca70ae7582fd765e8
Old Vending Machine - https://sketchfab.com/3d-models/vending-machne-458e54a470fb49aa8cc1887e50aefe6b
Bus Stop - https://sketchfab.com/3d-models/old-soviet-bus-stop-fe4d132434c24e1c8447a6d1190e8c6d
Light Poles - https://sketchfab.com/3d-models/light-poles-low-poly-prop-set-19d09422871a4c43ad2fdcb058833a0e
Industrial Light - https://sketchfab.com/3d-models/industrial-light-97ffca8508bf43d09a10dcb17e986dbb
Rubble - https://sketchfab.com/3d-models/rubble-pile-game-ready-2k-pbr-0e6f85da3433468db226866bd43a43e7
Concrete Barricade 1 - https://sketchfab.com/3d-models/low-poly-concrete-barricade-game-ready-f1e7368b46b14c2ebe1b1475aa947c1b
Concrete Barricade 2 - https://sketchfab.com/3d-models/low-poly-barricade-game-ready-ii-89a79068de614a478aeaea49371cfef8
Wooden Barricade - https://sketchfab.com/3d-models/wooden-barricade-4de45fef6da2497c828ef76d195e9f7f
Payphone - https://sketchfab.com/3d-models/payphone-7823190220bf43c5a4a9ee28e07b19f1
Human Model created using MakeHuman: http://www.makehumancommunity.org
Human Model "Laying Idle" animation using Mixamo: https://www.mixamo.com
List of 2D Assets and Particle Used for the Project:
Road - https://sketchfab.com/3d-models/road-free-d42c4932221747a9af29ad20bf85a490
Stone Floor - https://sketchfab.com/3d-models/stone-floor-acc42ce6dc6f41c1a34521c9a7daed06#download
Clock Background - https://openclipart.org/detail/232705/clock-background
Sparks - https://assetstore.unity.com/packages/essentials/asset-packs/unity-particle-pack-5-x-73777
List of Audio Assets and Songs Used for the Project:
Nighttime Sound - https://soundbible.com/951-Nightime.html
Dying Light Bulb - https://soundbible.com/1295-Dying-Light-Bulb.html
Robot Machine - https://soundbible.com/1193-Robot-Machine.html
Dialing Phone - https://soundbible.com/418-Dialing-Phone-Number.html
Phone Ringing - https://soundbible.com/1869-Phone-Ringing-8x.html
Busy Signal - https://soundbible.com/1072-Busy-Signal.html
Coin Drop - https://soundbible.com/2081-Coin-Drop.html
PC I Love You - https://soundbible.com/2045-Pc-Says-I-Love-You.html
3D Models that have physics and colliders to be grabbable, droppable, and tossable, and collide with other parts of the map:
Coin (Created by me)
Flashlight (Created by me)
Dirty Water Bottle - https://sketchfab.com/3d-models/dirty-water-bottle-game-ready-200eb008ebd340dca70ae7582fd765e8
Industrial Light - https://sketchfab.com/3d-models/industrial-light-97ffca8508bf43d09a10dcb17e986dbb
Wooden Barricade - https://sketchfab.com/3d-models/wooden-barricade-4de45fef6da2497c828ef76d195e9f7f
Models that produce new objects through interaction:
Old Vending Machine - https://sketchfab.com/3d-models/vending-machne-458e54a470fb49aa8cc1887e50aefe6b
Produces Dirty Water Bottle - https://sketchfab.com/3d-models/dirty-water-bottle-game-ready-200eb008ebd340dca70ae7582fd765e8
Payphone - https://sketchfab.com/3d-models/payphone-7823190220bf43c5a4a9ee28e07b19f1
Produces Coin (Created by me)
Models that are animated or moving some of their parts:
Clock Handles (Created by me)
Hour and Minute hands keep spinning on clock banner/image
The frame rates stayed pretty consistent, running above 60 fps for most of the time no matter where I was in the world as the kiosk is tightly packed together in an area. However, as I was recording the demo, there were a few dips in the frame rates, but it just might have been caused by the headset heating up as it had been running for a while, and also it being low on battery. Overall, I would say the frame rates are decent and would not make someone motion sick (unless they just get motion sick from simply being in VR).
As of now, we all know that there are AR/VR experiences where we can view the scanned models of already built, or currently existing buildings and places, be it Google Street View or some apps created by real estate agencies. However, those applications are simply for viewing scanned images or models, and do not have too many details nor interactable elements. For example, you can’t figure out how the lights would work inside a specific room, how adding certain structures would really look like, and everything is static so you can’t really try putting things in the building/room, or move things around at all.
This is where the 3D buildings and maps as we’ve just developed in Unity comes in. First, we can import the designed 3D models of the building into Unity, which would have already been created by an architect and might not be built yet unlike the scanned alternatives. We would also be able to change the textures on the building to see how different walls, floors, etc… might look like on the building. We could also simulate lighting, be it external such as the sun or the moon, or internal such as light bulbs to see how well lit the rooms in the building would be, and change things on the go. And we could also import 3D models of certain furniture to see how everything would fit well inside the building and the room before the building starts and before even buying those furniture. Last, we can make things dynamic and interactable, as if it is a VR experience unlike the static scanned 3D/VR experiences.
Due to these qualities and advantages of the VR experience, I believe this would be very useful for architects who could help showcase the building model to the clients and the building contractors. It will give a better understanding and perspective to them as they are viewing the building model almost as if they are in person, and not viewing it through a screen or a floor plan. And if anyone requests, the architects could import 3D models of certain stuff into the building too, such as if the building contractor wants to know if they could fit some construction materials through the building, and if the clients want to know how their current furniture or what they are planning to buy would fit into their rooms.
I don’t think I have ever seen anyone use the VR experience for architecture as of now, but I can’t say for sure as I am just a CS student who has nothing to do with architecture and construction as of now. However, with VR becoming more easily accessible, I believe it will become more widespread sometime in the near future, with not only the architects using it for buildings that have not been built, but also regular people who just want to play around or are curious using existing building models too if they are available.