230 likes | 737 Views
CMU Object Space EWA Surface Splatting: A Hardware Accelerated Approach to High Quality Point Rendering Liu Ren Hanspeter Pfister Matthias Zwicker Motivation Point-based graphics needs high quality texture filtering High quality point rendering lacks hardware support
E N D
CMU Object Space EWA Surface Splatting: A Hardware Accelerated Approach to High Quality Point Rendering Liu Ren Hanspeter Pfister Matthias Zwicker
Motivation • Point-based graphics needs high quality texture filtering • High quality point rendering lacks hardware support • GPU performance outpaces CPU [Wolfman Geforce 4 demo] Pure Hardware Accelerated + High Quality? Yes!
Related Work Object Space EWA Splatting EG 02
Surface Element (Surfel) normal y surfel tangent plane z x • No connectivity • No texture maps, no normal maps, etc 2D reconstruction filter Point-based Surface Representation
warp screen space object space surfel reconstruction filter y x aliasing warped reconstruction filter y z x Surfel Rendering: Splatting
warp screen space object space warped reconstructionfilter screen space resampling filter low-pass filter Surfel Rendering: Screen Space EWA Filtering reconstruction filter • Elliptical Weighted Average (EWA) filtering • EWA Splat = low-pass filter warped reconstruction filter • Screen space EWA splatting not supported by graphics hardware.
warp screen space object space warped low-pass filter reconstruction filter tangent spaceresampling filter low-pass filter Surfel Rendering: Object Space EWA Filtering • Tangent space resampling filter = warped low-pass filter reconstruction filter • View dependent filter
normal surfel tangent plane Textured polygons Tangent space resampling filters Texture mapping EWA splats in frame buffer Additive alpha blending Warped surface texture reconstruction Hardware Accelerated Point-based Rendering
Correct visibility in hardware ? • No holes, hidden surface splats removal • Lack of A-buffer support ? EWA resampling filter • View dependent • Texture or polygon not fixed Challenges
1. Visibility splatting • Disable frame buffer updates • Render opaque quad for each surfel • Generate depth image with a small offset 2. Resampling filter splatting • Disable Z-buffer updates • Render textured polygons with additive alpha blending Two Pass Algorithm Overview
surface surface occlusion artifacts depth image depth image QSplat z z camera space camera space Object Space EWA First Pass: Visibility Splatting Schemes
elliptical gaussian (tangent space resampling filter) texture (unit gaussian) (0,1) (1,1) match (0,0) (1,0) texturemapping surfel polygon with unknown geometry tangent space quad with known geometry vertex computation textured quad Second Pass: Handle View Dependent EWA Resampling filter
Per-pixel normalization: • Read back data from frame buffer • Post-processing scheme • Bad for hardware acceleration Per-surfel normalization: • Pre-compute the surfel normalization weight • Pre-processing scheme • Good for hardware acceleration without normalization with normalization no artifacts varying brightness Normalization Issues
Splatting No Filtering V.S. Object Space EWA Filtering Object Space EWA / Points V.S. Anisotropic Texture Filtering + Accuview /Triangle Mesh Demo: Checkerboard on Geforce 4 Ti 4600 :
Salamander 103K Surfels Demo: Surfel Models on ATI Radeon 9700
Demo: Surfel Models on ATI Radeon 9700 Chameleon 102K Surfels
Demo: Surfel Models on ATI Radeon 9700 Wasp 273K Surfels
Demo: Surfel Models on ATI Radeon 9700 Fiesta 352K Surfels
Conclusion • New object space formulation of EWA surface splatting • Completely hardware accelerated approach with negligible CPU involvement • Benefits from GPU performance improvements
Future Work • Semitransparent point models • View dependent BRDF shading • Animated point models • Optimization with upcoming hardware features
CMU Acknowledgments Jessica Hodgins, Paul Heckbert Micheal Doggett, Evan Hart, Jeff Royle Henry Moreton Jennifer Pfister, Wei Li, Wei Chen Http://www.cs.cmu.edu/~liuren/research.htm