2019 Project 1 - You Can't Judge a Book by Its Cover

Alpha Due Saturday 9/14 at 8:59pm Chicago time
Application Due Saturday 9/21 at 8:59pm Chicago time
Documentation Due Monday 9/23 at 8:59pm Chicago time

Project 1 is focused on Augmented Reality. In the future when everyone is wearing their AR enabled eye-wear most of the time, what kind of future will it be? We are going to explore this a bit by looking into what the future of how physical books might become augmented. How can books survive in an AR world? How can they 'advertise' themselves? This project will give you some experience writing an Augmented Reality application using Unity3D and Vuforia, and let you experience what interacting with this kind of augmented world will be like. It will also give you some experience with creating and modifying 3D models for use in these kinds of worlds.

For example, from the week 2 demos, I can take a copy of Thor Heyerdahl's paperback on Rapa Nui / Easter Island and augment it with a 3D moai from 3D Warehouse (https://3dwarehouse.sketchup.com/model/d784e09f-71ce-4020-a40e-be49a6f87e2e/Moai)

In the future people may be wearing lightweight trendy glasses, or contact lenses, or ocular implants, but for now we are going to use a webcam attached to a computer to simulate this AR eyewear. Make sure you have regular access to a modern webcam that you can plug into your development computer. There will be a webcam available on the classroom computer for testing, which also gives a common platform for evaluating your work. There are also several apps out there that let you use your smartphone as a webcam, so you may also want to try those (e.g. DroidCam) while developing.

You can work on this project alone, or in groups of two or three.  The amount of work scales linearly with the number of people in your group. Note that the entire project is graded as a single whole, not as a collection of components from different people - group members must make sure their individual work combines together well.

To start with you (or your group) should pick a classic book, play, or short story, fiction or non-fiction. You should have a physical copy of this book / play as you will augment the physical copy as part of the project, and you will need to turn in this book for a few weeks during grading. Note that books with 'noisy' covers will work better for AR than simple ones for AR purposes.



Implementing the Project

You will be implementing the project in Unity 2019.2 and Vuforia to run on the classroom PC.

75% of the points on the project (C level functionality) are for:
25% of the points on the project are for:

Graduate students in the class also need to translate the augmentations into one additional unique language per graduate student. This language could be a real language or Klingon or Swedish Chef, or High Valerian, etc. The user should be able to choose the language via an AR control on either cover and see all of the text and hear all the spoken language shift to that language.

Note that each group needs to pick a unique book or story and have it approved by Andy. The first email that reaches Andy claims that book. You can only try to claim one book at a time (no lists) so think it over with your team and look at what free models are available that you could make use of. Please tell me the names of the members of your group when choosing the book. The definition of 'classic' is up to Andy ... feel free to try and convince me something is a classic. The book and the scenes you create from it should be rated G or PG and not be overtly violent or offensive. While there are many classic books that are important and offensive, and important because they are offensive, this project is not the place to have in depth contextualized discussions of them.

You should create a GitHub page for your project. You can integrate Unity with git so that it will track all your changes, or just regularly push files to git. The final project will need to be turned in via git so we know the timestamp on the files, but it can be also helpful to have regular commits to resolve any potential group conflicts. Initially this repository should be private to your group, and then you can make it public for turning it in.

Note that there is a very big difference between getting something working and getting it working well. The first is not that hard. The second takes much more time. You are expected to have things working well, so be sure to test on the actual hardware regularly. The projects are going to be graded based on how they run on the classroom PC. Make sure that your scene updates at a decent frame rate, at least 30 frames per second, so make sure the models you pick don't have too many polygons.



Turning in the Project

There are three due dates for the project.

The alpha is due first. At this point you should have all the basic C level functionality working. Add the TA as a collaborator to your GitHub repository so she can have access to your work, and email a link to the repository to her. Make sure the repository contains an image of the front cover of your book suitable as an image target. You should also create a short 1 minute YouTube video showing all of the basic C level functionality of your application running on the classroom PC or a computer of your choice, probably captured through a screen capture program. Send a link to the video to Andy and the TA by the alpha deadline.

The unity source and application is due next. This will be turned in via GitHub by making your repository public. Make sure the repository contains images of the front and back covers of your book suitable as image targets.  Be sure to email the location of your repository to Andy and the TA before the deadline. You will need to turn in your physical book in class.

The third deadline is for the documentation.

You should create a set of public web pages (visible to anyone for at least the duration of the course) that describe your work on the project. You can host your web pages at UIC (http://people.uic.edu), GitHub, or the provider of your choice, as long as they remain publicly available to all. You can use any publicly available templates as long as you cite them, or create your own.

These pages should include:

all of which should have plenty of screenshots with meaningful captions. Web pages like this can be very helpful later on in helping you build up a portfolio of your work when you start looking for a job so please put some effort into it.

You should also create a 2-3 minute YouTube video showing the use of your application including narration with decent audio quality. That video should be in a very obvious place on your main project web page. The easiest way to do this is to capture video from your webcam while interacting with the virtual book. You can try to narrate while interacting but you will most likely find its useful to do some editing afterwards to tighten the video up. 

The web page including screen snapshots and video need to be done by the deadline so be sure to leave enough time to get that work done. Once you have your webpage done, send the URL to Andy and the TA before the deadline. We will respond to this email as your 'receipt'. We will be linking your web page to the course notes so please send me a nice representative jpg or png image of your application for the web. This should be named p1.<your_last_name>.pg or p1.<your_last_name>.png and be roughly 1024 x 768 in size.

When the project is done, each person in a group should also send Andy a private email with no one else CC'd ranking your coworkers and yourself on the project on a scale from 1 (low) to 5 (high) in terms of how good a coworker they were on the project. If you never want to work with them again, give them a 1. If this person would be a first choice for a partner on a future project then give them a 5. If they did what was expected but nothing particularly good or bad then give them a 3. By default your score should be 3 unless you have a particular reason to increase or decrease the number. Please confine your responses to 1, 2, 3, 4, 5 and no 1/3ds or .5s please.



Presenting the Project

An important part of creating AR applications is getting feedback and using it to improve your design. 

We will be spending time in class for each person/group to show off their work. Given the number of groups, each group will have 5 minutes to present their project.

The classroom VIVE PC will have a folder on the desktop named 428 Fall 19 Project 1. You should put a copy of your executable and its associated data folder into a folder named after you, and then put that folder into the 428 Fall 19 Project 1 folder. Be sure to test and make sure your project runs well with the webcam on that PC as that is where they will be shown in class and officially graded.



Groups

1
Mansur Shawabkeh
Michael Lederer
The Great Gatsby
website
2
Brian De Villa
Nathan He
Yushen Li
All Quiet on the Western Front
website
3
Nicole Laczny
Curious George
website
4
Conrad Ptasznik
Holes
website
5
FranK Buttafuoco
Mark Chen
Justin Donayre
Rurouni Kenshin
website
6
Tim Czepizak
Martin Bragiel
Bedtime Bible Story Book
website
7
Jake Terhark
Fahrenheit 451
website
8
Aastha Saraf
Marco Beccarini
Harry Potter and the Prisoner of Azkaban
website
p1.BeccariniSaraf.png
9
Brent Yurek
Where the Sidewalk Ends
website
10
Zoheb Mohammed
A Clash of Kings
website
11
Michael Ybarra
The Jungle Book
website
12
Shiva Reddy KJ
Krunal Bhatt
Suhan Nath
Charlie and the Chocolate Factory
website
13
Vivek Ganesan
The Trumpet of the Swan
website
14
Simran Jumani
Alice's Adventures in Wonderland
website
15
Juan Moraza
The Little Prince
website
16
Elizabeth Villanueva
My Side of the Mountain
website
17
Zain Zahran
Death of a Salesman
website
18
Gregory Schamberger
Katherine Misyutina
Lord of the Flies
website
19
Divay Pandey
101 Dalmatians
website
20
Saumaun Vahedipour
The Catcher in the Rye
website
21
James Trinh
Omar Al-Khatib
Animal Farm
website

22
Lucas Cepiel
Gods and Heroes of Ancient Greece
website

23
Joshua Peterson
An-Chi He
Starting Point
website
25
Iqra Memon
Alex Lopez
1984
website
26
Amit Panthi
V for Vendetta
website
27
Edward Reyes
Jonel Alcasid
The Hobbit
website



last update:
9/26/19 - added in final websites and images
9/13/19 -  adding groups and books
9/8/19 - added text that GitHub repositories should include images of the front and back covers of your book
9/1/19 - clarified the video review requirements
8/29/2019 - clarified that I wanted the names of your group members when you ask to claim your book title