Accelerated Stereoscopic Rendering using GPU François de Sorbier - Université Paris-Est France February 2008 WSCG'2008
WSCG' February 2008 Problematic 2 Introduction Two-pass rendering Computational time doubled
WSCG' February 2008 Shared attributes on vertices –Colour –Geometry –etc Use graphical processor Duplicate the geometry Transformations according to the viewpoint Geometry Shaders Hypothesis 3 Introduction
WSCG' February 2008 Geometry shaders Our algorithm Results Conclusions Outline 4
WSCG' February 2008 Geometry Shader 5 Geometry shaders RASTERIZATION FRAMEBUFFER FRAGMENT SHADER VERTEX SHADER GEOMETRY SHADER
WSCG' February 2008 Example 6 Geometry shaders Input primitive Output primitives
WSCG' February 2008 Our method overview 7 Our Algorithm View 1 View 2 Geometry Shader
WSCG' February 2008 Images generation 8 Our Algorithm Fragment shaders processing Fragment's origin Rendering buffer selection (Multiple Render Targets) Standard operations Rendering into two textures Using FrameBuffer Object MRT + FBO involve constraints
WSCG' February 2008 Constraints 9 Our Algorithm No separated depth buffer Use painter algorithm on objects Back Face Culling Have to render a fragment into the two buffers Colour and alpha set to 0 Mix function for blending
WSCG' February Our Algorithm
WSCG' February 2008 Improvement hypothesis 11 Our Algorithm ?
WSCG' February 2008 Algorithm 12 Our Algorithm Get depth map Transmit vertices' position with duplicated geometry (GS) Apply our own depth test (FS) Get correct position in the depth map Comparison with current fragment depth
WSCG' February Our Algorithm
WSCG' February 2008 Results 14 Results nVidia GeForce 8800 GTX triangles
WSCG' February 2008 Conclusions 15 Conclusion Limitations “home made” depth test Advantages Only one rendering pass Reduces computational time First release of geometry shader
WSCG' February 2008 Extensions 16 Conclusion Depth test enhancement –Separated depth buffers? –Algorithm? Autostereoscopic screens –Up to 8 views (first results)
WSCG' February Thank you!