1 / 17

Normal Mapping for Surfel-Based Rendering

Normal Mapping for Surfel-Based Rendering. Mathias Holst Heidrun Schuman. WSCG‘07. Plzen • Czech Republic. University of Rostock. Outline. Introduction Related Work Shaping and Splatting Surfels Texturing Surfels Normal Map Estimation Silhouette Refined Rendering

Download Presentation

Normal Mapping for Surfel-Based Rendering

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. Normal Mapping for Surfel-Based Rendering Mathias Holst Heidrun Schuman WSCG‘07 Plzen • Czech Republic University of Rostock

  2. Outline • Introduction • Related Work • Shaping and Splatting Surfels • Texturing Surfels • Normal Map Estimation • Silhouette Refined Rendering • Conclusion and Outlook

  3. IntroductionSurfel Rendering • Surfels (from surface element) are points parametrized with a normal and a radius • describe circular discs in 3D (≈ellipse in image space) • set of surfels can be used to approximate 3D surface

  4. IntroductionSurfel Rendering (2) • LOD using point trees • easy to obtain using subdivision schemes (nearest neighbor, octree)

  5. IntroductionSurfel Rendering (3) Benefits: • effective description of all static 3D surfaces • easy to create various LOD using simplification schemes Drawbacks: • only efficient for objects with many features • not efficient for low tesselated models Our approach: • Increase benefit of large surfels using normal mapping • result: surface approximation with much fewer surfels • important: surfel size approximation for image space as accurate as possible to prevent unrealistic texture scaling

  6. Surfel SplattingSizing • Surfels are rendered as view-plane aligned squares • Sizing by ellipse approximation:

  7. Surfel SplattingShaping • Shaping by using alpha mask • Graphics card computes texture coordinate (tx, ty)  [1,-1]2 for each pixel/fragment • Use eye-space normal and texture coordiante to get z-offset of pixel: • if ||t|| > 1, pixel do not belong to surfel ellipse area • ||t|| can be used to calculate alpha value using Gaussian: α = G(||t||)

  8. Normal Mapping • t not sufficiant for texturing • Need additional parameter: • rotation around normal to orient texture • texture position and size in texture atlas • Additional orientation vectors:

  9. Normal MappingSurfel Space Texture Coordiante • S=(o1 o2 n) maps point from surfel space to object space • S' = MS defines mapping from surfel space to eye-space • transform t back to surfel-space by t'=S'-1t • t'[1,-1]2 • Map t' to texture atlas:

  10. Normal MappingExample

  11. Normal Map Estimation • Raycasting Approach 1. rasterize surfel using ist texture size 2. shoot ray aligned with normal for each texel 3. get leaf surfels that ray intersects (consider only leaf surfels which bounding spheres intersect BS of rasterized surfel 4. get weighted average to get texel normal (weight according gaussian alpha value)

  12. Normal Map EstimationExample

  13. Silhouette Refinement • Problem of normal mapping: coarse silhouette • Solution: silhouette refinement • exact global silhouette slow to compute • use contour estimation using normal cones instead

  14. Rendering • use radii limitation for silhouette (rsil) and non-silhouette surfels (rinner) • extension of QSplat algorithm • rinner =ws • Igea example (rsil =2px) * can be fastened using sequential point trees

  15. Demo start video

  16. Conclusion • normal mapping can be used to increase efficiency of surfel-based surface approximations • should be combined with silhouette refinement to increase image quality • can easily be integrated in existing point splatting frameworks • Future Work: • Decrease texture memory 1. find similar textures 2. find textures that can be tiled

  17. Thank you for your attention! Questions?

More Related