real time rendering n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Real-Time Rendering PowerPoint Presentation
Download Presentation
Real-Time Rendering

Loading in 2 Seconds...

  share
play fullscreen
1 / 27
dafydd

Real-Time Rendering - PowerPoint PPT Presentation

129 Views
Download Presentation
Real-Time 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. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Real-Time Rendering POLYGONAL TECHNIQUES Lecture 05 Marina Gavrilova

  2. Brief Outline • Surface Geometry • Tessellation • Shading Problem • Edge Crack • Consolidation • Mesh Simplification

  3. Geometric Representation • 3D objects are usually represented as geometric simplices (i.e. Triangles) • Set of vertices (0-simplices) • Set of Edges (1-simplices) • Set of Triangles (2-simplices) • Surface normal for each triangle • Texture component and associated UV coordinate • Shading and lighting parameters • Object surface properties

  4. Object representation 3D

  5. Tessellation • The process of splitting a polygon into smaller pieces (usually triangles) • Types: • Regular tessellation • Convex tessallation • Triangle fan tessalation • Regular triangle tessallation

  6. Correct Incorrect Quad Smooth Shading Problem • Occur during triangulation • Choice of diagonal can effect shading • Fixed diagonal division creates visual artifact • Triangulation may create incorrect texture Visual Artifact Correct

  7. Solution to Smooth Shading Problem • Carefully choose diagonal • Choose shortest diagonal • Lit-quads: choose shortest color difference diagonal • Terrain models: Maximize minimum angle • Texture problem: • Further tessellate the object • Use different Texture Coordinate interpolation

  8. Edge Cracking and Repair • Occurs in NURBS, Multiple LOD • When SPLINE surfaces meet, border mismatch and cracks are apparent • ROAM and PM with multiple LOD: • Occurs between primitives of different LOD • T-vertices creates cracks • Solution: Edge-stitching  add aditional edges • Potential side-effect: Thin triangles (visual artifact) • Solution: Use more sophisticated split and crack repair scheme Repairing cracks

  9. Consolidation • Processed after the tessellation phase • Consolidation: Finding and adjusting links between tessellated objects • Form a polygonal mesh (i.e. triangle mesh) • Perform triangle stripping • Solid objects or manifolds can facilitate culling techniques • Face Orientation and normal  adjust all face-vertex order to either of CW or CCW, Normal in the right direction

  10. General Approach to Consolidation • Form Vertex-edge-face for all polygons and sort them • Compute intersection and seam and determine solidity • Correct orientation (direction of normal) of each face • Normal must point Outward direction for a solid object • Find smoothing groups and compute vertex normal • Find boundaries • Create Polygonal meshes

  11. Mesh Simplification • Use less number of triangles to render an object • Mesh simplification • Multiple LOD • Progressive meshes: • Error metric or Energy function • Two operations: vertex split or edge collapse • Apply refinements to minimize energy function

  12. View-Dependent Refinementof Progressive Meshes Hugues Hoppe Microsoft Research SIGGRAPH 97

  13. View-dependent LOD 29,400 faces different LOD’s coexistover surface

  14. vertex split vu vl vl vr vr vs vt edge collapse Review of progressive meshes 150 152 500 13,546 M0 M1 … M175 … Mn base mesh original mesh

  15. 152 500 13,546 150 Mn M1 M175 Mn … vspli … vspl0 vspln-1 M0 M0 vspl0 … vspli … vspln-1 progressive mesh (PM) representation M0 Mn Mi The PM representation

  16. vspl0 vspl1 vspl2 vspl3 vspl4 vspl5 M0 v1 v2 v3 v10 v10 v11 v4 v5 v5 v8 v9 v12 v13 v6 v6 v7 Mn v14 v15 Vertex hierarchy M0 vspl0 vspl1 vspl2 vspl3 vspl4 vspl5 PM: M0 v1 v2 v3 [Xia & Varshney 96]

  17. ICCSA 2004 GTVIS: Fast and Efficient Rendering System for Real-Time Terrain Visualization Russel A. Apu, Marina L. Gavrilova Department of Computer Science University of Calgary

  18. Understanding Height FieldsDEM: Digital Elevation Model • Contains only relative Height • Regular interval • Pixel color determine height • Discrete resolution X Kluanne National Park Y

  19. ROAM: Real-time Optimally Adapting Mesh Developed by Mark Duchaineau, Lawrence Livermore National Laboratory Quad Tree Triangle BIN Tree • No cracks • Reversible • Efficient • Adaptive

  20. Improvements over Original ROAM Scheme • Preprocessing DEM image • Smoothing Techniques • Texturing • Amortized refinement • Very efficient • Higher Frame Rate (45FPS) • Continuity: Geo-morph sequence • Less variation in frame rate

  21. Proposed Priority Function for Split Queue • Determines Refinement • Distribute LOD to preferred area • Can be changed • f=face, C=Camera • U=Uniformity • F=Frustum priority • D=Curvature priority • P=Distance priority • DET=Curvature (preprocessed) • Lev(f)=Subdivision level of face f

  22. Speeding up the processAmortizing refinement • Updating the Split queue over multiple frames • Allow split queue (heap) to degenerate • Refine integrity using error threshold test • Re-generate queue after constant number of frames • Dramatic gain in speed

  23. Maintaining Degenerated S-Queue

  24. Understanding Geo-Morph • Smooth interpolation of vertex over subdivision • Requires maintenance of one additional queue (G-queue)

  25. Smoothing • Compute face normal • Compute vertex normal • Local computation of normal during refinement (Geo-Morph) • Apply vertex normal when rendering • Advanced shading: Linear combination of face and vertex normal (Hybrid)

  26. Result with Texturing

  27. End of Lecture 05 Questions?