Difference between revisions of "Project2S17"

From Immersive Visualization Lab Wiki
Jump to: navigation, search
(Project Description (100 Points))
(Project Description (100 Points))
Line 13: Line 13:
 
Modify the minimal example to render a single cube with [[Media:vr_test_pattern.png | this test image]] on all its faces. The image needs to be right side up on the vertical faces. The cube should be 20cm wide and its closest face should be about 30cm in front of the user.
 
Modify the minimal example to render a single cube with [[Media:vr_test_pattern.png | this test image]] on all its faces. The image needs to be right side up on the vertical faces. The cube should be 20cm wide and its closest face should be about 30cm in front of the user.
  
Stop/start head tracking when the 'A' button is pressed.
+
Cycle between 3D stereo, mono (both eyes see identical view), left only, right only with the 'A' button.
  
Switch between 3D stereo, mono (both eyes see identical view), left only, right only with the 'B' button.
+
Cycle between head tracking modes with the 'B' button: no tracking, orientation only, position only, both.
  
 
Vary the interocular distance (IOD) with the right thumb stick left/right.
 
Vary the interocular distance (IOD) with the right thumb stick left/right.
Line 21: Line 21:
 
Vary the physical size of the cube with the left thumb stick left/right.
 
Vary the physical size of the cube with the left thumb stick left/right.
  
Switch between head tracking modes with the 'X' button: no tracking, orientation only, position only, both.
+
Render a stereo panorama image around the user as a sky box. The trick here is to render different textures on the sky box for each eye, which is necessary to achieve a 3D effect.
 
+
Switch between cube and stereo panorama with the 'X' button.
Render stereo panorama image around the user as sky box.
+
 
+
Switch between cube and stereo panorama with the 'Y' button.
+
  
 
[more details to follow]
 
[more details to follow]

Revision as of 16:00, 25 April 2017

Levels of Immersion

In this project we are going to explore different levels of immersion we can create for the Oculus Rift. Like in project 1, we're going to use the Oculus SDK, OpenGL and C++.

Starter Code

We recommend starting either with your project 1 code, or going back to the Minimal Example you started your project 1 with. It's very compact but yet uses most of the API functions you will need.

Project Description (100 Points)

You need to do the following things:

Modify the minimal example to render a single cube with this test image on all its faces. The image needs to be right side up on the vertical faces. The cube should be 20cm wide and its closest face should be about 30cm in front of the user.

Cycle between 3D stereo, mono (both eyes see identical view), left only, right only with the 'A' button.

Cycle between head tracking modes with the 'B' button: no tracking, orientation only, position only, both.

Vary the interocular distance (IOD) with the right thumb stick left/right.

Vary the physical size of the cube with the left thumb stick left/right.

Render a stereo panorama image around the user as a sky box. The trick here is to render different textures on the sky box for each eye, which is necessary to achieve a 3D effect. Switch between cube and stereo panorama with the 'X' button.

[more details to follow]