1 / 30

Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting

Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting. Romain Pacanowski and M. Raynaud X. Granier P. Reuter C. Schlick P. Poulin. INRIA Bordeaux University. Motivation. Global illumination for remote visualization systems.

vance-giles
Download Presentation

Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting RomainPacanowski and M. Raynaud X. Granier P. Reuter C. Schlick P. Poulin INRIA Bordeaux University

  2. Motivation Global illumination for remote visualization systems Global illumination (indirect lighting) • Increases realism of synthetic images • Very long to compute unless using interactive/real-time techniques

  3. Motivation Client approach All lighting computations done on client • Low data transfer requirements  • Rendering speed depends on scene geometric complexity 

  4. Motivation Server approach • Pre/compute indirect illumination • Stream the indirect illumination to the client BUT: How to avoid an overhead transfer time proportional to the size of the geometry ? Need for an illumination representation not correlated to the geometry

  5. Previous Work Interactive/Real time global illumination • Stochastic methods [Purcell03,Gautron05,…] • Fast but not real time  • Depend on geometry  • Radiosity methods [Keller97, Segovia07] • [Dachsbacher07]: scene depth dependent  • [Laine07]: • Real time  • Visual quality depends on geometric accuracy  Not suited for streaming context

  6. Previous Work Precomputed radiance transfer approaches Concept: encode light transport effects in a structure • [Sloan02,Wang04,Pan07] • Real time even with dynamic scenes  • Huge data size  • Direct-to-indirect transfer [Pellacini07] • Data size is dependent on geometry complexity

  7. Previous Work Irradiance Volumes [Greger97] • Most closely related to our work • 3D regular grid [Mitchell06] • Irradiance values at vertices • Geometric dependency of irradiance  Storage cost increases

  8. Our Method Overview • New structure for indirect illumination • Geometry independent • GPUfriendly • Streaming technique for our lighting structure • Client/Server visualization system • Independent streaming of geometry and lighting • Direct illumination on the client side

  9. Indirect Lighting Representation Overview Regular 3D grid • 6 irradiance vectors at each vertex • Directional interpolation To reconstruct irradiance for any normal • Spatial interpolation • Easily compressed • GPU friendly

  10. Indirect Lighting Representation Irradiance vector Materials Reflected Radiance Irradiance

  11. Indirect Lighting Representation Irradiance vector directional interpolation

  12. Indirect Lighting Representation GPU : Irradiance vector compression • Colored irradiance vector for direction : 3x3 matrix • Compression: • Direction + Color • If : no artefacts are introduced

  13. Indirect Lighting Representation GPU : Irradiance vector quantization • Color 32 bits • R9_G9_B9_E5 GPU compatible format • RGBE [Ward91] • Direction • XYZ: 24 bits (3x8 bits) • (θ,ϕ): 2x8 bits ([Jensen96]) Quantization used to reduce the transfer size

  14. Indirect Lighting Representation GPU issues • Regular grid 12x3D Textures • 6 for direction • 6 for color • Format GL_RGB16F_ARB • 6 texture fetches per pixel • Native trilinear interpolation

  15. Our Remote Visualization System Overview • Client • CPU processes: • Geometry • Lighting (Push-Pull) Server • Precomputes and stores • Illumination grids • LOD for 3D objects • Stores : • Materials • Planar Surfaces Streaming DirectTransfer

  16. Our Remote Visualization System Streaming strategies • Geometry, and then Lighting • Lighting, and then Geometry • Interleave Geometry and Lighting

  17. Our Remote Visualization System Irradiance vector grid streaming • Initialization: 8 corners • Each client request: N samples per slice • Not yet received data vertices Holes in data = black spots

  18. Our Remote Visualization System Push-Pull : filling holes in the grid 1. 3D Hierarchy construction (PULL) • For each completed level • => Pyramidal Filter 2. 3D Hierarchical hole filling (PUSH)

  19. Our Remote Visualization System Push-Pull : Results With Push-Pull and Filtering Without Push-Pull

  20. Our Remote Visualization System Geometry streaming Adaptation of [Melax98,Gueziec99]techniques • Vertex split to get a multiresolution mesh • Streaming : • Vertices • Vertex Indices • Vertex lookup tables • Mesh is globally updated

  21. Results Independence of geometry and lighting Our remote system: • Server: Intel Q6600 with 4GB RAM • Client: Nvidia 8800GTX • Network: Wifi 802.11g

  22. Results Streaming geometry with constant illumination

  23. Results Streaming illumination with constant geometry

  24. Results Interleave streaming of geometry and illumination

  25. Results Transfer time for indirect illumination

  26. Results Transfer time for indirect illumination

  27. Results Transfer time for geometry

  28. Conclusion Summary New structure to represent indirect lighting: • 3D regular grid with irradiance vectors at vertices • GPU friendly • Small memory footprint and short transfer time overhead • Independent of geometric complexity • Easily integrated with geometry streaming

  29. Future Work • Server side • Precomputation to fit cluster architectures • On-line precomputation • Fast update mechanism for dynamic 3D scenes • Local recomputation in regions of important changes • Client side: reducing the process time New push-pull process (GPU)

  30. Questions ? Thankyou for your attention

More Related