Night at the Museum Project for Udacity VR Nanodgree
What is Night at the Museum?
Night at the Museum is fifth project for the Udacity Nanodegree for Virtual Reality course. The goal of this project was to create an interactive museum VR application for Google Cardboard with Unity, where the users can explore some findings (videos, audios, images and text, etc) of the specific industry, technologies and companies impacted by VR.
In my case, I researches several industries including VR in education, military and medicine, and looked into several companies that focus on the VR collaborations. At the time I worked on the project, Facebook released their new Oculus Go VR equipment, I also put relevant findings about this topic in the museum.
Project scope
The project should meet the following objectives:
- Easy to control
The game mechanic itself is simple enough to be understood by the game player with minimal guidance. It should be clear for player which parts can be clicked, and the corresponding reaction feedback should be given(color or material changes and the related sound when click on the objects)
2. Clear indication with good visual/audio feedback
All the indications should be clear, like where is the entry point to start, how to play the video and audio, how to move forward in the museum.
3. No fast movement
The comfortable user experience without making user sick and dizzy is the basic requirement for this VR application, the movement should be steady without shaking.
Design
Potential end user
The app is aimed at the users with minimal or no VR experience on the mobile. Those group of potential users are interested in VR and wants to explore.
Sketches
First I created some sketches for:
1. museum building architecture and building ground plan
2. how information stations should organized
3. way points routing layout


Development
Build the museum building
To build the museum according to the above sketches, I used an asset from the unity asset store. The theme for this museum looks like in an old castle with a mystery atmosphere. I used the models/prefabs from the downloaded asset to the building.
General there are two separated rooms for exhibiting/display the information.

Movement Mechanics and Interaction
For the waypoints I used cube and sphere viewpoints
Spheres viewpoint: Users can move continuously and slowly when they click blue cube, usually it’s helpful when user want to change the position in front of one station.
Cube viewpoint: Users can change their position directly to the new position where show the green cube when they click on that. In this way, user can avoid long time slowly moving if they want to move a long distance.
Starting instruction
When the app starts, an instruction will be displayed as a user guidance. When user click the Enter button on the control panel, they will move forward to the museum steadily.

When the users enter the museum, they can click the green cube to move forward


Video and audio controlling
There are some videos on the quad in the stations, in order to use the GVR audio spatializer instead of using the video’s direct audio output, I use the convert tool to extract the audio track from each video files, and control the audio and video playing in the gamelogic file. In this way, users can experience a REAL surrounding feeling like in the museum.
If user plays a video in one station and move to the next station without stop that video playing, and play another video, it might cause the audio disturbance. I simply stop all the playing audios and videos when user click the blue sphere to move forward or backward to eliminate this problem.
User testing and feedback
After demo the prototype to the my family and friends, some points are raised:
“I feel like I move too fast when I click the Enter button”
I adjust the time period a little longer to have my testers feel comfortable.
“The text on the blackboard are hard to see very clearly!”
I changed the text font size much bigger and increase the board size to have user to see them clearly, and I record the related audio, that helps them to see the information on the board as well.
“Why is the room so dark?”
When I show the app to my 5 years daughter, she asked why it’s so dark and the video is not bright enough to watch clearly either. I added some more spot/point lights and after baking the light, it got much more brighter.
“what? I can pass though the pillar?”
When user click the some view points, it seems user can pass through the pillars and that made the inexperienced tester nervous. I adjust the viewpoints position to avoid such pillar-crossing-route.
Beside fixing most of above issues, I tweaks a lot on the audio issue on the iOS build finally it was fixed by the patch
Summary
This project is absolutely very exciting for me and it is the most complex one to create in all the previous ones of the VR Nanodegree. I went through the full development cycle including design, tasks splitting, user testing feedback and went to the next iteration with the improvements. It was also a good opportunity for me the do some research for VR in specific industries and fields.
I plan to take the project to another level by creating more interactive stations and improve the existing stations:
- The videos and audios, even the spot lights should be turn on automatically when user move close enough the specific position
- When user move to other positions in the same station, I should have some distance calculations, if this distance is long enough, the playing videos and audios then should be stopped/paused, and the spot light should be turned off, instead of turn off everything in force
- Improve the video player’s playing experience, let user easily control the play/pause actions
When the experience is complete, I plan to upload this app to the iOS app store.
Using Unity3d to build the VR app for mobile platform is amazing, it’s possible to build quite complex useful VR app for different domain and fields.
About Me
Feel free to connect with me in Linkedin