Equalizer logo
Collage logo
GPU-SD logo

Anaglyphic Stereo

Author: eilemann@gmail.com
State: Implemented in 0.3.0 alpha

Overview

An anaglyphic stereo rendering
An anaglyphic stereo rendering
Watch a 3D video

This features adds support for anaglyphic stereo rendering. Each eye pass is rendered in a different color, but using the same frame buffer. Colored glasses provide the eye separation when viewing the superimposed images.

Implementation

Extending Channel::applyBuffer to use glColorMask to mask out the correct components for the current eye allow rendering as in quad-buffered stereo. The color mask is applied at the very end of the OpenGL pipeline, and therefore affects all operations, including glClearColor and the pixel operations used for stereo decomposition.

API

    class ColorMask
    {
    public:
        ColorMask() : red( true ), green( true ), blue( true ) {}
        bool red;
        bool green;
        bool blue;
    };

    const ColorMask& Channel::getDrawBufferMask() const;

File Format

    global
    {
        EQ_COMPOUND_IATTR_STEREO_MODE                 QUAD | ANAGLYPH
        EQ_COMPOUND_IATTR_STEREO_ANAGLYPH_LEFT_MASK   [ RED GREEN BLUE ]
        EQ_COMPOUND_IATTR_STEREO_ANAGLYPH_RIGHT_MASK  [ RED GREEN BLUE ]
    }

    compound
    {
        attributes
        {
            stereo_mode                  QUAD | ANAGLYPH    // default quad
            // enable visible color components
            stereo_anaglyph_left_mask    [ RED GREEN BLUE ] // default RED
            stereo_anaglyph_right_mask   [ RED GREEN BLUE ] // dflt GREEN BLUE
        }
    }

Open Issues

None