Author: eilemann@gmail.com
State: Implemented in 0.3.0 alpha
Overview
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