Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Interactive Stereo Rendering For Non-Planar Projections of 3D Virtual Environments Matthias Trapp , Haik Lorenz, Jürgen Dö...
Motivation <ul><li>Immersive Digital Environments: </li></ul><ul><ul><li>… </li></ul></ul><ul><ul><li>Real-time rendering ...
Anaglyph Results  Cylindrical Projection
Anaglyph Results Spherical Projection
Rendering Non-Planar Projections <ul><li>Geometry-based Approach (GBA)  [Lorenz and Döllner 2008] </li></ul><ul><ul><li>Pr...
Previous Work: Image-based Approach <ul><li>Projection function computes cubemap sampling normal: </li></ul><ul><li>Exampl...
Stereoscopy for Non-Planar Projections <ul><li>Stereo    Image pair    Angle & depth disparity: </li></ul><ul><ul><li>Pl...
Single-Pass Render to Dual-Cubemap
Layered Rendering – Geometry Shader
Layer Sampling <ul><li>Problem: </li></ul><ul><ul><li>In: Normal Vector </li></ul></ul><ul><ul><li>Out: 2D texture coordin...
Stereo Rendering <ul><li>Applied as post-processing pass(es) </li></ul><ul><li>Active Stereo Rendering (shutter glasses): ...
IBA Performance Evaluation (Anaglyph) 0.45 0.11 2 3,210,162 4.13 0.39 1 8.95 0.84 1 29.23 6.37 1 0.60 0.09 1 3.57 0.57 2 5...
GBA-IBA Comparison – Rendering Performance 4.14 0.93 2.83 0.41 3210162 9.11 3.49 9.4 2.58 540655 35.77 12.42 24.51 6.04 23...
GBA-IBA Comparison – Image Quality  <ul><li>GBA is superior over IBA: </li></ul><ul><ul><li>Cause: cubemap sampling artifa...
GBA-IBA Comparison – Memory Footprint <ul><li>GBA - View-dependent: </li></ul><ul><ul><li>t  – input triangles </li></ul><...
GBA-IBA Comparison – Binary Wrap Up   Overall Rating       Implementation Complexity   Memory Footprint   Renderin...
Conclusions  &  Future Work <ul><li>Summary: </li></ul><ul><ul><li>Interactive stereoscopic rendering for non-planar proje...
<ul><li>Thank You! Questions? </li></ul><ul><li>Contact </li></ul><ul><ul><ul><li>Matthias Trapp </li></ul></ul></ul><ul><...
Upcoming SlideShare
Loading in …5
×

Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)

1,424 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)

  1. 1. Interactive Stereo Rendering For Non-Planar Projections of 3D Virtual Environments Matthias Trapp , Haik Lorenz, Jürgen Döllner Hasso-Plattner-Institute, University of Potsdam, Germany GRAPP 2009 International Conference on Computer Graphics Theory and Applications Lisboa, Portugal
  2. 2. Motivation <ul><li>Immersive Digital Environments: </li></ul><ul><ul><li>… </li></ul></ul><ul><ul><li>Real-time rendering </li></ul></ul><ul><ul><li>High field-of-view </li></ul></ul><ul><ul><li>Stereoscopy </li></ul></ul><ul><ul><li>… </li></ul></ul><ul><li>Non-planar projections: </li></ul><ul><ul><li>Not supported by rendering hardware </li></ul></ul><ul><ul><li>Single-center of projection only </li></ul></ul><ul><li>Contribution: </li></ul><ul><ul><li>Feasibility study for stereoscopy of non-planar projections </li></ul></ul><ul><ul><li>Compare image-based & geometry-based approaches </li></ul></ul>
  3. 3. Anaglyph Results Cylindrical Projection
  4. 4. Anaglyph Results Spherical Projection
  5. 5. Rendering Non-Planar Projections <ul><li>Geometry-based Approach (GBA) [Lorenz and Döllner 2008] </li></ul><ul><ul><li>Projection computed on a per-vertex basis </li></ul></ul><ul><ul><li>Dynamic mesh refinement to ensure sufficient on-screen vertex density </li></ul></ul><ul><ul><li>Requires DX 10 hardware </li></ul></ul><ul><li>Image-based Approach (IBA) [Trapp and Döllner 2008] </li></ul><ul><ul><li>Normal based image warping </li></ul></ul><ul><ul><li>Dynamic cube map + screen-aligned quad </li></ul></ul><ul><ul><li>Fragment shader functionality (DX 9a) </li></ul></ul><ul><li>GBA & IBA fully hardware accelerated </li></ul>
  6. 6. Previous Work: Image-based Approach <ul><li>Projection function computes cubemap sampling normal: </li></ul><ul><li>Example – horizontal cylindrical projection: </li></ul><ul><li>3-Phase rendering process: </li></ul><ul><ul><li>Create/update dynamic cubemap </li></ul></ul><ul><ul><li>Setup projection shader </li></ul></ul><ul><ul><li>Render screen-aligned quad </li></ul></ul>
  7. 7. Stereoscopy for Non-Planar Projections <ul><li>Stereo  Image pair  Angle & depth disparity: </li></ul><ul><ul><li>Planar projections: render two images using two virtual cameras </li></ul></ul><ul><li>Basic idea for image-based non-planar projections: </li></ul><ul><ul><li>Render two cubemaps (left & right eye) </li></ul></ul><ul><ul><li>Derive projection image pair </li></ul></ul><ul><li>Implementation problem: </li></ul><ul><ul><li>Optimal: Single-Pass Render to Dual-Cubemap </li></ul></ul><ul><ul><li>Not supported by current hardware generation </li></ul></ul><ul><ul><li>Cannot bind two cubemap textures to a single active framebuffer object </li></ul></ul><ul><ul><li>Work around: layered rendering using geometry shader </li></ul></ul>
  8. 8. Single-Pass Render to Dual-Cubemap
  9. 9. Layered Rendering – Geometry Shader
  10. 10. Layer Sampling <ul><li>Problem: </li></ul><ul><ul><li>In: Normal Vector </li></ul></ul><ul><ul><li>Out: 2D texture coordinates + layer ID </li></ul></ul><ul><li>Reference Sampling (RSA) </li></ul><ul><ul><li>Using Reference Cube-Map </li></ul></ul><ul><ul><li>Additional memory consumptions </li></ul></ul><ul><ul><li>Sampling artifacts on texture border </li></ul></ul><ul><li>Analytic Sampling (ASA) </li></ul><ul><ul><li>Re-implement OpenGL fixed-function </li></ul></ul><ul><ul><li>54 shader instructions </li></ul></ul>
  11. 11. Stereo Rendering <ul><li>Applied as post-processing pass(es) </li></ul><ul><li>Active Stereo Rendering (shutter glasses): </li></ul><ul><ul><li>Frame sequential </li></ul></ul><ul><ul><li>Using OpenGL quad buffer </li></ul></ul><ul><ul><li>Two full-screen passes (left and right eye), multiplexed in time </li></ul></ul><ul><li>Passive stereo rendering (anaglyph): </li></ul><ul><ul><li>Single full-screen pass </li></ul></ul><ul><ul><li>Sampling two cubemaps and mix samples </li></ul></ul><ul><ul><li>Apply color correction matrix [Zhang 2006] </li></ul></ul>
  12. 12. IBA Performance Evaluation (Anaglyph) 0.45 0.11 2 3,210,162 4.13 0.39 1 8.95 0.84 1 29.23 6.37 1 0.60 0.09 1 3.57 0.57 2 549,665 7.82 0.80 2 236,276 20.93 6.01 2 34,596 FPS GTX 280 FPS 8800GTS Cubemap Passes #Triangles
  13. 13. GBA-IBA Comparison – Rendering Performance 4.14 0.93 2.83 0.41 3210162 9.11 3.49 9.4 2.58 540655 35.77 12.42 24.51 6.04 236276 52.15 31.32 42.55 20.66 34596 GBA-GTX GBA-GTS IBA-GTX IBA-GTS Triangles
  14. 14. GBA-IBA Comparison – Image Quality <ul><li>GBA is superior over IBA: </li></ul><ul><ul><li>Cause: cubemap sampling artifacts </li></ul></ul><ul><ul><li>Problematic for wireframe-rendering or hatching techniques (NPR) </li></ul></ul>GBA IBA
  15. 15. GBA-IBA Comparison – Memory Footprint <ul><li>GBA - View-dependent: </li></ul><ul><ul><li>t – input triangles </li></ul></ul><ul><ul><li>r – average rate of primitive amplification </li></ul></ul><ul><ul><li>i – intermediate data ( i= 16 ) </li></ul></ul><ul><li>IBA – Static footprint: </li></ul><ul><ul><li>l – number of texture layers </li></ul></ul><ul><ul><li>b – precision per color channel </li></ul></ul><ul><ul><li>s – texture resolution </li></ul></ul><ul><ul><li>c – number of color channels </li></ul></ul><ul><li>Example: 180° cylindrical projection: </li></ul><ul><ul><li>O GBA = ~ 69 MB ≈ l = 4, b = 4 (32bit), s = 1024, c = 4 </li></ul></ul><ul><ul><li>For higher FOV: O IBA < O GBA </li></ul></ul>
  16. 16. GBA-IBA Comparison – Binary Wrap Up   Overall Rating   Implementation Complexity   Memory Footprint   Rendering Performance   Image Quality   Stereo Functionality IBA GBA Comparison Criteria
  17. 17. Conclusions & Future Work <ul><li>Summary: </li></ul><ul><ul><li>Interactive stereoscopic rendering for non-planar projections </li></ul></ul><ul><ul><li>Common upper bound = medium scene complexity (~500,000 triangles) </li></ul></ul><ul><ul><li>GBA outperforms IBA </li></ul></ul><ul><ul><li>IBA much easier to implement/use </li></ul></ul><ul><li>Future Work: </li></ul><ul><ul><li>Increase IBA rendering performance by re-using information </li></ul></ul><ul><ul><li>IBA Image quality </li></ul></ul><ul><ul><li>Derive omni-directional stereo projections </li></ul></ul>
  18. 18. <ul><li>Thank You! Questions? </li></ul><ul><li>Contact </li></ul><ul><ul><ul><li>Matthias Trapp </li></ul></ul></ul><ul><ul><ul><li>[email_address] </li></ul></ul></ul><ul><ul><ul><li>Haik Lorenz </li></ul></ul></ul><ul><ul><ul><li>[email_address] </li></ul></ul></ul><ul><ul><ul><li>Jürgen Döllner </li></ul></ul></ul><ul><ul><ul><li>[email_address] </li></ul></ul></ul><ul><li>Computer Graphics Systems Group www.hpi.uni-potsdam.de/3d </li></ul><ul><li>Researchgroup 3D-Geoinformation www.3dgi.de </li></ul>

×