Homework Assignment 4: Final Project
For this assignment you can obtain 100 points, plus up to 10 points for extra credit.
This homework assignment is due on Thursday, March 21st at 3:00pm. Note that as part of the grade you also have to post two blog entries (for deadlines see below).
The project is designed to be a team project for two people.
The goal of this project is to create a 3D VR application for the Oculus Rift with either the Touch controllers or the Leap Motion. The following rules apply:
- The application cannot be based on any of the previous homework projects.
- The application cannot use input devices other than Touch or Leap. Specifically, it cannot use keyboard or mouse.
- Important: your application is not allowed to use:
- the A/B/X/Y buttons on the Touch controllers.
- the joysticks on the Touch controllers for the movement of the user/player.
- Each team (regardless of number of members) has to implement at least 6 skill points worth of technical features, based on the list below.
Technical Features and Skill Points:
- Selection: 1 skill point (+1 for non-standard methods, i.e., NOT ray-casting or virtual hand)
- Manipulation: 1 skill point
- Wayfinding: 1 skill point
- Travel: 1 skill point (+1 for non-standard methods, i.e., NOT teleport, steering by head/controller direction, etc.)
- System Control (e.g., menu): 1 skill point (need to have at least 2 different types of widgets, such as action/toggle button, dial/slider, choice list, sub-menu, etc.)
- Symbolic Input (e.g., text or number input) with at least 10 symbols: 1 skill point (+1 if done with voice recognition - needs to have 80% recognition rate or better)
- Interactive Tutorial, i.e., in-app training: 1 skill point
- Spatial Audio: 1 skill point (all spatialized sounds need to have a visual representation)
- Multi-User: 2 skill points. Link up two computers to allow two users to collaborate in VR. Each user needs to be visible in VR for the other user as an avatar (minimum: head and hands).
We may extend this list throughout the duration of the project.
We may allow skill points for other things on a case by case basis with prior instructor approval.
You are allowed to use Unity, Unreal, Lumberyard, OpenGL/C++ for the implementation. While the use of asset stores is allowed for textures and 3D models, any other use of assets from the asset store requires permission from an instructor.
You are welcome to use the TA/tutors' office hours to brainstorm ideas with them, as well as for help during your work on the project, like for the other homework projects.
Here is last year's Youtube playlist of the final projects, to serve as inspiration.
Your final project score consists of three parts:
- Documentation (10 points)
- Presentation (90 points)
- Extra Credit (10 points)
Documentation (10 Points)
You need to create a blog to report on the progress you're making on your project. You need to make at least two blog entries to get the full score. The first is due on Monday, March 11th at 11:59pm, the second is due on Monday, March 18th at 11:59pm. You also need to make a short video clip of your application, and reference it in your blog, as well as add it to the final presentations Youtube play list (for which the link will be on Piazza) by 3pm on presentation day.
The first blog entry needs to contain (at a minimum) the following pieces of information:
- The name of your project.
- The names of your team members.
- A short description of the project.
- Which technical features you are planning on implementing.
- What you are planning on spending your creative efforts on.
- One or more screen shots of your application, or photos of hand drawn sketches. No pictures from the internet allowed.
In week 2 you need to write about the progress you made, and mention any changes you have made to your project or team. You also need to post at least one new screen shot (this time it has to be an actual screen shot of your application).
The video is due on presentation day and should be no longer than 2 minutes. You don't need to use editing software, but you should use software to capture your screen to a video file. Screen recording software, such as the Open Broadcaster Software, is available free of charge for Windows and Mac, on the Mac you can use QuickTime. Audio is optional. Embed or link to the video from your blog.
You are free to create the blog on any web based blog site, such as Blogger or WordPress. You should use the same blog each time and just add new blog entries. You are free to add more entries than the required ones.
The points are distributed like this:
- Blog entry #1: 3 points
- Blog entry #2: 3 points
- Video: 4 points
The Application (90 Points)
The final project has to be presented during our final exam slot. The agenda for presentation day will be:
- 3-4pm: video screening in room 1242
- 4-5pm: group A science-fair style demos in B210
- 5-6pm: group B science-fair style demos in B210
Your application grade will be based on your video and your demonstration. It will consist of the following components:
- Technical quality: 60% (10% per skill point)
- Usability: 25%
- Creativity: 15%
Extra Credit (10 Points)
We will award extra credit in multiple categories, listed below. Your project gets 5 points of extra credit for each category it wins. It is possible for multiple teams to tie in a category, in which case each team gets 5 extra credit points.
The award categories are:
- Most intuitive controls (in-app training can help)
- Best user interaction concept
- Best aesthetics
- Most technically challenging app
- Best use of audio