Inspiration - VR technology is getting a lot of buzz lately, especially considering CES and Oculus's success and imminent public release of their own VR headset. As computer engineers with only 24 hours and no prior Oculus coding experience, we wanted to build a small project in Unity to showcase the technology.
What it does - We have created a 3D game level with different rooms and interactive objects. Players can move around with the keyboard and look/aim by moving their head. Players can also shoot "bullets" that make a punching sound when they hit the wall. Players can interact with objects in the environment by running into them or shooting them with the bullets. Targets are placed throughout the map to practice targeting.
How we built it - The project was made in Unity 5. Unity comes with Oculus Rift support, making it simple to bind the Oculus screen and movement to the in game camera in order to give the game an immersive feel. Blender was used to create the 3D objects that compose the level.
Challenges we ran into - Initially, we received the Rift thinking any computer with decent graphics hardware could drive it. Running into problems using a mobile graphics card in a laptop, we resorted to using a desktop gaming setup for our project. Having the mouse and Oculus Rift both bound to the camera view caused problems when orienting the shooting direction and as such, mouse movement had to be disabled resulting in slightly harder controls but a more consistent shot.
Accomplishments that we're proud of - Creating synchronization between the player view camera, the shooter's orientation, and the Oculus Rift orientation allows the player to simply look where they want to shoot. Despite relatively basic graphics, the Oculus integration with Unity allowed us to create an engaging VR environment.
What we learned - Creating 3D objects in blender is easier than Unity, allowing us to spread the workload out among teammates. The Oculus Rift is very picky with compatibility, not only the graphical horsepower of the driving system but the graphics adapter configuration, operating system, display driver version, and day of the week.
Going forward – There are plenty of improvements that could be made to this basic demo such as buttons that open doors, pressure plates, and more sound ques. The wonderful thing about the software used here is that there are limitless possibilities to show off what the oculus rift can do.