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)

779

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
779
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "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>

×