LOD Unresolved Problems The LOD algorithms discussed previously do not perform well with large amounts of visible objects Consider a large number of tress.

Slides:



Advertisements
Similar presentations
Christian Lauterbach COMP 770, 2/16/2009. Overview  Acceleration structures  Spatial hierarchies  Object hierarchies  Interactive Ray Tracing techniques.
Advertisements

Collisions and Intersections When objects move, test for collision. When projecting surfaces, check for intersections. (Many slides adapted from Amitabh.
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
03/12/02 (c) 2002 University of Wisconsin, CS559 Last Time Some Visibility (Hidden Surface Removal) algorithms –Painter’s Draw in some order Things drawn.
Two Methods for Fast Ray-Cast Ambient Occlusion Samuli Laine and Tero Karras NVIDIA Research.
Occlusion Culling Fall 2003 Ref: GamasutraGamasutra.
CAP4730: Computational Structures in Computer Graphics Visible Surface Determination.
Multi-Layered Impostors for Accelerated Rendering Xavier Decoret, iMAGIS This is joint work with Gernot Schaufler and Julie Dorsey at MIT and François.
Visibility Culling using Hierarchical Occlusion Maps Hansong Zhang, Dinesh Manocha, Tom Hudson, Kenneth E. Hoff III Presented by: Chris Wassenius.
1 Dr. Scott Schaefer Hidden Surfaces. 2/62 Hidden Surfaces.
Tomas Mőller © 2000 Speeding up your game The scene graph Culling techniques Level-of-detail rendering (LODs) Collision detection Resources and pointers.
18.1 Si31_2001 SI31 Advanced Computer Graphics AGR Lecture 18 Image-based Rendering Light Maps What We Did Not Cover Learning More...
1 Image-Based Visual Hulls Paper by Wojciech Matusik, Chris Buehler, Ramesh Raskar, Steven J. Gortler and Leonard McMillan [
Image-Based Techniques Hierarchical Image Caching Michael Chung.
Background Caches for Large Outdoor Scenes Bill Hess.
Copyright  Philipp Slusallek IBR: View Interpolation Philipp Slusallek.
Realistic Reflections and Refractions on Graphics Hardware with Hybrid Rendering and Layered Environment Maps Ziyad S. Hakura John M. Snyder Ziyad S. Hakura.
1 Advanced Scene Management System. 2 A tree-based or graph-based representation is good for 3D data management A tree-based or graph-based representation.
CSCE 641: Computer Graphics Image-based Rendering Jinxiang Chai.
Part I: Basics of Computer Graphics Rendering Polygonal Objects (Read Chapter 1 of Advanced Animation and Rendering Techniques) Chapter
David Luebke Modeling and Rendering Architecture from Photographs A hybrid geometry- and image-based approach Debevec, Taylor, and Malik SIGGRAPH.
10/11/2001CS 638, Fall 2001 Today Kd-trees BSP Trees.
Introduction to 3D Graphics John E. Laird. Basic Issues u Given a internal model of a 3D world, with textures and light sources how do you project it.
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology Beyond Meshes Spring 2012.
Computer Graphics Shadows
09/18/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Bump Mapping Multi-pass algorithms.
9/20/2001CS 638, Fall 2001 Today Finishing Up Reflections More Multi-Pass Algorithms Shadows.
Hidden Surface Removal
1 Occlusion Culling ©Yiorgos Chrysanthou, , Anthony Steed, 2004.
Week 1 - Friday.  What did we talk about last time?  C#  SharpDX.
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
10/29/02 (c) 2002 University of Wisconsin, CS559 Today Hidden Surface Removal Exact Visibility.
The Visibility Problem In many environments, most of the primitives (triangles) are not visible most of the time –Architectural walkthroughs, Urban environments.
10/16/2001CS 638, Fall 2001 Today Visibility –Overview –Cell-to-Cell –Cell-to-Region –Eye-To-Region –Occlusion Culling (maybe)
NDVI-based Vegetation Rendering CGIM ‘07 Stefan Roettger, University of Erlangen
-Global Illumination Techniques
09/09/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Event management Lag Group assignment has happened, like it or not.
CS 376 Introduction to Computer Graphics 04 / 16 / 2007 Instructor: Michael Eckmann.
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
Real-Time Rendering SPEEDING UP RENDERING Lecture 04 Marina Gavrilova.
Emerging Technologies for Games Alpha Sorting and “Soft” Particles CO3303 Week 15.
CS 638, Fall 2001 Multi-Pass Rendering The pipeline takes one triangle at a time, so only local information, and pre-computed maps, are available Multi-Pass.
Image-based Rendering. © 2002 James K. Hahn2 Image-based Rendering Usually based on 2-D imagesUsually based on 2-D images Pre-calculationPre-calculation.
Occlusion Query. Content Occlusion culling Collision detection (convex) Etc. Fall
Real-time Graphics for VR Chapter 23. What is it about? In this part of the course we will look at how to render images given the constrains of VR: –we.
09/16/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Environment mapping Light mapping Project Goals for Stage 1.
CSCE 552 Spring D Models By Jijun Tang. Triangles Fundamental primitive of pipelines  Everything else constructed from them  (except lines and.
03/31/03© 2003 University of Wisconsin Last Time Image-Based Rendering for Architecture and Faces.
Coherent Hierarchical Culling: Hardware Occlusion Queries Made Useful Jiri Bittner 1, Michael Wimmer 1, Harald Piringer 2, Werner Purgathofer 1 1 Vienna.
Representation and modelling 3 – landscape specialisations 4.1 Introduction 4.2 Simple height field landscapes 4.3 Procedural modeling of landscapes- fractals.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 7. Speed-up Techniques Presented by SooKyun Kim.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
Where We Stand At this point we know how to: –Convert points from local to window coordinates –Clip polygons and lines to the view volume –Determine which.
Image-based Rendering Ref: RTRv2. 2 Introduction Sprite, billboard, overview.
Painterly Rendering for Animation Introduction speaks of focus and detail –Small brush strokes focus and provide detail –Large strokes are abstract and.
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
CS559: Computer Graphics Lecture 12: Antialiasing & Visibility Li Zhang Spring 2008.
Rendering Large Models (in real time)
01/28/09Dinesh Manocha, COMP770 Visibility Computations Visible Surface Determination Visibility Culling.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
09/23/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Reflections Shadows Part 1 Stage 1 is in.
CHC ++: Coherent Hierarchical Culling Revisited Oliver Mattausch, Jiří Bittner, Michael Wimmer Institute of Computer Graphics and Algorithms Vienna University.
Visible-Surface Detection Methods. To identify those parts of a scene that are visible from a chosen viewing position. Surfaces which are obscured by.
Processing Images and Video for An Impressionist Effect Automatic production of “painterly” animations from video clips. Extending existing algorithms.
Presented by 翁丞世  View Interpolation  Layered Depth Images  Light Fields and Lumigraphs  Environment Mattes  Video-Based.
Real-Time Soft Shadows with Adaptive Light Source Sampling
CS475 3D Game Development Level Of Detail Nodes (LOD)
© University of Wisconsin, CS559 Fall 2004
CSCE 441: Computer Graphics Hidden Surface Removal
Presentation transcript:

LOD Unresolved Problems The LOD algorithms discussed previously do not perform well with large amounts of visible objects Consider a large number of tress on a landscape –The terrain LOD algorithms work well because of the highly structured terrain mesh, and the basic 2D nature of the problem –Per-object simplification performs poorly because it must still render something for every tree –Global simplification algorithms perform badly because the “spike” of each individual tree must still appear Recall appearance based simplification: use texture maps to capture fine detail while the geometry is simplified

Image-Based Rendering Revisited Image-based rendering may be applied to the problem of rendering large databases –Primary advantage: Rendering cost depends mostly on the number of pixels in the images, not the number of objects those pixels represent –Disadvantage: Have to allow a wide range of viewer motion, which exacerbates typical IBR problems (cracks, stretching…) Basic idea: Replace geometry with a few texture mapped polygons –Polygons and texture maps can be generated in a pre-process, or as required at run-time Environment maps are an instance of this approach

Textured Clusters (Maciel and Shirley, 1995) Provide a range of representations for each object, and a benefit associated with each representation –Texture-mapped box is one representation, as is an average color box –Benefit may be view dependent – only texture one face Use an octree to group objects into clusters –Representations for a cluster are a textured and average color box –Benefit is derived from benefit of children (maximum of children) Deciding what to draw at run time is a bin-packing variation –Solve approximately First pass computes cost, benefit and visibility, and sets initial model Second pass starts at root, expands nodes in order of decreasing benefit –Not very scalable – looks at every representation of every object on each frame

Textured Clusters Discussion Coined the term “impostor” Benefit does not add: The benefit of two objects together may be much greater than their sum (eg a man and a gun) Data-requirements may be very large –The appearance of a cluster can change greatly with viewing position Shading highlights will change rapidly Bigger clusters near the root contain many objects that may show significant disparity –Solution: Generate the necessary textures at run-time The problem is easier for special cases…

Urban Scenery (Sillion, Drettakis and Bodelet, 1997) Dense cities have two useful properties when viewed from the ground: –The view location is highly constrained to be on streets –When standing on a street, the only distant views are through the ends of the street Place an impostor at the ends of each street –Each impostor is a textured 3D mesh At run-time, render the local model (the street and its buildings) and an impostor (showing everything else) Additional space cost is linear in the number of streets Rendering is much faster, because a relatively constant, small number of polygons are drawn for each frame

Urban Impostors Details Impostors are generated in a pre-processing stage –Render the view from the center of each street out each end –Take the depth map, and triangulate it while attempting to preserve major discontinuities –Use the image as a texture for the triangle mesh Remaining problems: –Transitions at intersections are problematic At an intersection, the relevant impostors are most incorrect –3D mesh impostors stretch over what should be holes –More impostors per street are required for accurate occlusion effects

Multi-Layered Impostors (Decoret, Schaufler, Sillion and Dorsey, 1999) Extend urban impostors to use multiple impostors per street Objects visible through the end of the street are grouped into layers –Grouping uses the maximum visible distance between two points to identify candidates for each group (nearby objects are grouped) At run-time, try to exploit free time by re-rendering the layers from the current viewpoint –Produces much better images if the viewer stays still –Allows for poorer (and cheaper) basic impostors, because the viewer won’t see them for long

Coherent Layers (Lengyel and Snyder, 1997) Hand animators use layers to reduce the number of cells to draw –One layer for background, one for middle ground, one for character,… –Background layers need to be changed less frequently than foreground, slow moving less frequently than fast moving,… –Layers are composited as a final step Coherent layers was designed to work with hardware that supports fast compositing and layer warping Approach: –Break scene into layers by hand –At run-time, warp some layers, re-render others –Composite the layers into the frame buffer (back to front)

Layered Depth Images (Shade, Gortler, He and Szeliski, 1998) Store more than one color value, with depths, at each pixel Several ways to generate layered image –Standard ray tracer sampling different rays and combining results –Modified ray tracer returning multiple hits per pixel –Vision techniques from multiple views Rendering uses a splatting operation to push pixels onto the image plane –Render pixels in a specific order (McMillan and Bishop, 1995) –Project depth forward then back to determine the splat size Restricted viewing range for each image –Must combine several images to cover a large area (not done in paper)

Image Caching (1) (Schaufler and Sturzlinger, 1996) Hierarchically subdivide world into boxes (kd-tree) Replace boxes with a textured rectangles at run-time –Given current view, render the box contents onto the rectangle –If not a leaf, render child boxes and use impostors to render parent Textures are warped in subsequent frames –Estimate error in warped image by considering maximum disparity between points in the box –Efficiency depends on the viewer rate of motion Hardware issues: –Assumes hardware clipping planes – not unusual –Reading frame buffer is not typically fast (some machines put the frame buffer in main memory – faster) –Cannot be multi-threaded (everyone needs the frame buffer)

Image Caching (2) (Shade, Lischinski, Salesin, DeRose, Snyder, 1996) Same idea as previous paper, but superior implementation Build BSP hierarchy (actually a kd-tree in this paper) –Look for cuts that produce balanced trees –Look for cuts that produce near-square boxes –Look for cuts that don’t split objects (prevents cracking) –Grow each box by 10%-20% to avoid cracks Use a predictive approach to decide whether it is worth producing a texture map –Viewer’s motion is assumed bounded (not unreasonable) –Uses an off-line estimation of the costs of rendering the geometry and creating the texture maps

Open Problems in LOD Dynamic LOD! Design an LOD algorithm that is efficient for scenes that change –Some of the terrain rendering algorithms can handle changing terrain, but not very efficiently –None of the other algorithms manage deforming objects –Image based approaches cannot handle moving objects in the background More work on appearance preserving simplification –Current methods cannot cluster objects