Augmented Reality (Fall 2022)

Assignment 2: Visual Coherence

This assignment is to develop a Unity application using Vuforia that shows coherent rendering of virtual and real objects. Here are the requirements:

  • Have the top of a table or desk in the scene.
  • Use at least one real object and at least two virtual objects. The virtual objects should be non-trivial 3D models (namely, models that you create with a modeling program or import from the Unity asset store or other site).
  • Show occlusions between the real and virtual objects (namely, show examples of real occluding virtual, and virtual occluding real). Grading will be based on how accurate the occlusions look.
    • There will always be imperfections, discuss the failure cases of occlusions in your application and at least two methods covered in class that may remove the imperfections.
  • Show casting of shadows on the real and virtual objects (namely, show examples of virtual shadowing real, and real shadowing virtual). Shadows should also be cast on the desk or tabletop. Grading will be based on how accurate, realistic, clearly visible the shadows are. By the way, I suggest making the light source a child of an image target, so that its position is predictable.
  • Additionally, show shadows direction changes by tracking an artificial light source target.

The video below (with a Halloween theme!) meets the requirements:

Submission

Upload the video, and make sure that you:

  • Move the camera to change the viewpoint.
  • Change the relative locations of the real and virtual objects.
  • Change the relative locations of the artificial light source.

Write a description of the application, including:

  • The architecture of your application; i.e., what are the main GameObjects and scripts, and what do the scripts do.
  • How you created the image targets.
  • How you created the virtual objects (or, where you imported them from).
  • How your application meets the requirements above.

    Failure case discussion and methods for improvement

    Export a “package” from Unity containing all your files. To do this, in the Unity “Project” window, select all files and folders in the “Assets” folder. Go up to the Assets menu and select Export Package.

    Submit on Canvas:

    1. The video
    2. The description and discussion
    3. Your Unity package
    4. All scripts

    Rubric

    • (10 pts) Unity package submission
    • (10 pts) Scripts
    • (15 pts) Application description
    • (15 pts) Failure case discussion and methods for improvement
    • (15 pts) Real objects and virtual objects show accurate occlusions with each other.
    • (15 pts) Real objects and virtual objects show accurate and realistic shadows with each other and the table.
    • (15 pts) Artificial light source changes shadow direction.
    • (10 pts) Video shows moving the camera, the relative locations of the real and virtual objects, and shadow direction changes.