Stereoscopic Vision

Each eye gets a slightly different view of the world

The brain fuses the two views to get depth information






Artificial Stereoscopy

Create two distinct images - one for each eye

Used since early 1800s





































Stereo Viewing

    

Present each image separately to each eye

e.g. stereoscope, HMD






Stereo Viewing

With a projection screen, images must overlap

Glasses filter images - each eye sees only one

Crosstalk becomes a concern






Active Stereo

    





Active Stereo

Problems:






Passive Stereo

   

Uses polarization to separate images

Two projectors - one for each eye

Each eye's image is polarized differently






Linear Polarization







Linear Polarization

Problems:






Circular Polarization


Linear polarizer + quarter-wave retarder = circular polarization

Polarization is left-handed or right-handed
(clockwise or counter-clockwise)

Immune to head-tilt problem






Circular Polarization







VR Screen






Circular Polarization

Problems:






Anaglyphic Stereo

   

Uses colored filters

One image is red, other is blue/green/cyan

Only requires one projector (any type)
















Autostereo

Glasses-free

Different eye-views are interleaved vertical strips

Barrier screen blocks all but one image from any viewpoint
or lenticular lenses direct a different image to each eye






Stereo in OpenGL

Display

Active stereo
Quad-buffering: glDrawBuffer() etc + special hardware

Polarized stereo
One display: Quad-buffering + polarizing modulator
Two projectors: glViewport()

Anaglyph
glColorMask()

Perspective



Creative Commons License
This document is by Dave Pape, and is released under a Creative Commons License.