CS 491 - Project 2 // Every Day is Halloween


Introduction

Project 2, Every Day is Halloween, is a full blown virtual reality project that uses a variety of models, sounds and interactions between those elements all inside of a 3x3 meter area. Group members Steve Stranczek and Chris Janowski took the theme of a spooky, haunted old mansion and placed the user inside of it with the goal being to escape! The dimly lit two room mansion gives the user a taste of what could have been a real nightmare if either of us were graduate students, having to create another two rooms. The user begins in the center of the Piano Room and is attempting to find a way out of the first room but quickly realizes that the passageway to the other room is unaccessible. So, the user must face his/her fear of ghosts and spiders and search among the dusty, cob-web ridden book shelfs and other pieces of furniture for a way out. The user has a candlere in their hand to help navigate the rooms along with the lights from nearby candles in the both of the rooms.



Room 1 // Piano Room

In the first scene, the piano room, we immediately become aware of the ominous tick-tock noise from the grandfather clock. Upon approaching it to further inspect it, a ghoul comes out and walk right through us, across the room, and out of the wall! How spooky! Next, we find a piano that takes up most of this room. We approach and interact with it as well. We didn’t even touch the piano keys, but we hear a piano noise! A ghost comes out of the wall and begins playing! We panic and want to leave, so we look for something to guide our way. A flashlight on the floor! We pick it up and try to turn it on, but we hear an electrical fizz, indicating it is burnt out. We attempt to leave the room but are blocked… We don’t know how to get out. So we find a book in the corner and read it. Now we are able to get out and go into the next scene…

Room 2 // Skull and Spider Room

After touching the pentagram in the hallway, we make our way into the other room. We hear the sound of critters crawling around… How gross! We move the wood block out of our way and see a room filled with skulls, bugs, and a grindstone. We touch the grindstone and hear the noise of a chisel being used on it. We pick up the skull under the chair and hear the sound of a bones clunking. Next, we’re tired off all this craziness and try to take a seat on the bed, but a huge spider comes out of nowhere and begins hissing at us! When will this nightmare end?!

Discussion

In order to create a full scale project, there needs to be an project outline illustrating the components of the project, a time frame for each component, and what is necessary to create each component. It seems that the priority for AR/VR games today is the seamlessness of the game. In other words, the user needs to feel that they have in fact been placed in a different reality. In order to make all of this happen, a team would roughly need to include and prioritize the following (but not limited to) in their plan:

1.) designing and/or purchasing models to be used throughout the various rooms
2.) calibrating and scaling the scene and models within the scene to the user
3.) reusability of an area (i.e. generate scenes within a 3x3 meter range)
4.) minimize feelings of sickness
5.) seamless generation of rooms
6.) maintaining high frame rate

Assuming an infinite budget, purchasing models or paying someone to create them for you is a breeze. It is important that models stick to a particular theme, as was outlined in both projects 1 and 2. This gives the user a real sense of being inside of a virtual reality. The real challenge begins when we try to incorporate these models into a scene, needing to create a rigid body for each of them, followed by creating and/or applying the physics for each of them with respect to the user and their actions. Luckily for Unity and Unreal Engine developers, a lot of physics and collider packages are readily available. Another huge aspect to AV/VR games is the reusability of a space. In the Unseen Diplomacy video linked on the Project 2 page, we see an example of how a commercial team seamlessly generated spaces based on the user’s location within a scene. At one point in the video, the user says out loud, “I’m so disoriented as to where I’m standing in the actual room” (2:09). Note that this doesn’t mean he feels queasy, but rather he has literally no idea as to where he is inside of a space that is familiar to him otherwise. This can be taken as both a good and bad thing, the former meaning that the user is completely immersed in the virtual reality and the latter meaning that unless the developers successfully encoded the generation of scenes to within a particular area, he could get hurt. Fortunately, throughout the entire video, he never leaves what looks to be like a 3x3 meter area, which is commendable by the game’s developers. Reusability of an area and seamless generation of new scenes goes hand in hand. Referencing the Unseen Diplomacy video again, as the user prepares to enter a new scene while still in the previous one via a door, the user is able to peek inside of the new scene, viewing various models. I wonder if there is an interactive button in the new scene and the user is inside of the old one, if they would be able to interact with it. It appears that with the use of a script denoting the distance of the user to the distance of some reference point, the new scene is generated in the space where the old scene once was. Taking all of points under consideration and trying to maintain a minimum frame rate of at least 30 fps can be a challenge. It assumes that all of the models within all of the scenes interact with the user and other models (almost) flawlessly. If the user were to try and pick up a keycard to unlock a door, the action of picking up the keycard, including the distance of the user’s arm to the keycard itself, must all feel natural for the product to be successful. Lastly, and a bit of a more subtle point, depending on the game’s genre, it has to be “fun” and challenging. Nobody will play a trivial game for an extended period of time.

Running the project

YouTube Video

In order to run this project on your computer, you need to download and/or install the following software/files:
1.) Install Unity - Link
2.) Download VRTK - Link
3.) Download SteamVR v. 1.2.3 - Link
4.) Download zip and open project (see below)


For links to files used in our project, see below.
1.) Models and sounds
2.) Zip of entire project