image-based techniques hierarchical image caching michael chung
Post on 20-Dec-2015
228 views
TRANSCRIPT
![Page 1: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/1.jpg)
Image-Based TechniquesHierarchical Image Caching
Michael Chung
![Page 2: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/2.jpg)
Papers• Hierarchical Image Caching for
Accelerated Walkthroughs of Complex Environments– Jonathan Shade, Dani Lischinski, David H.
Salesin, Tony DeRose, John Snyder (SIGGRAPH, 1996)
• A Three Dimensional Image Cache for Virtual Reality– Gernot Schaufler, Wolfgang Sturzlinger
(EUROGRAPHICS, 1996)
![Page 3: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/3.jpg)
Motivation• Unable to render large and
complex environments at a sufficiently high frame rate.
• Would be nice to be able to. (ex: crowded forests, cities…)
![Page 4: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/4.jpg)
Insights• Dynamically Generated Impostors (Schaufler, 1995)
– Path coherence between frames– No need to render every frame from scratch
![Page 5: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/5.jpg)
Impostor – What is it?• An impostor is a billboard that mimics and
replaces 3d geometry in a scene.
![Page 6: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/6.jpg)
Impostor – Why use it?• Fast to render
• Reusable for objects that are coherent between frames– Especially distant objects
• Essentially, a high quality image at the cost of a very low LOD model (a quad)– But the impostor is short-lived.
![Page 7: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/7.jpg)
Impostor Generation• Face viewpoint towards center of bounding box• Project bounding box into screen space• Generate tight rectangle• Reverse project rectangle into world space• Render impostor texture onto rectangle
![Page 8: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/8.jpg)
Example: Virtual Dublin Project
• Geopostors: A Real-Time Geometry / Impostor Crowd Rendering System
Simon Dobbyn, John Hamill, Keith O’Conor, Carol O’Sullivan
![Page 9: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/9.jpg)
Insights• Dynamically Generated Impostors (Schaufler, 1995)
– Path coherence between frames– No need to render every frame from scratch
![Page 10: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/10.jpg)
Insights• Dynamically Generated Impostors (Schaufler, 1995)
– Path coherence between frames– No need to render every frame from scratch
• New insight:– Further optimize rendering using a
hierarchical cache of impostors• Creating impostors out of smaller impostors saves
time over rendering actual geometry• If possible, draw fewer impostors per frame
![Page 11: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/11.jpg)
Proposed ContributionsShade, Lischinski, Salesin, DeRose, Snyder• “New method for accelerating
walkthroughs of geometrically complex and largely unoccluded static scenes by hierarchically caching images of scene portions.”
• “New simple error metric that provides automatic quality control.”
![Page 12: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/12.jpg)
Proposed ContributionsSchaufler, Sturzlinger
• “New approach to software accelerated rendering which improves and generalizes the concept of impostors”
– Handles intersecting objects
– Handles indoor as well as outdoor scenes
– Deals with primitives, does not rely on organization of scene into object groupings
![Page 13: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/13.jpg)
Proposed ContributionsSchaufler, Sturzlinger
• Indoor intersecting objects problem:
![Page 14: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/14.jpg)
Proposed ContributionsSchaufler, Sturzlinger
• With the 3d image cache:
![Page 15: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/15.jpg)
Method Overview• Partition scene into a tree
(BSP-tree or k-d-tree)
• For each frame:– First traversal of tree
• Cull nodes outside of the view frustum (optional)• Update the cached impostors of nodes
– Second traversal of tree• Render scene into framebuffer, back to front
![Page 16: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/16.jpg)
Algorithm DetailsShade, Lischinski, Salesin, DeRose, Snyder
• Partition scene into BSP-tree– All splitting planes perpendicular to x and z
axes.– Place splitting planes in the “best” gap found.
• Compute a cost for each gap that is a function of: – the number of its active objects– and, the ratio of the number of primitives on either side of
the gap
– Choose best gap such that the longest side of the bounding box is split.
![Page 17: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/17.jpg)
Algorithm DetailsSchaufler, Sturzlinger
• Partition scene into k-d-tree– Recursively subdivide along longest side.– If primitive intersects more than one bounding
box, store primitive in all intersected bounding boxes.
![Page 18: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/18.jpg)
Updating Image CachesShade, Lischinski, Salesin, DeRose, Snyder
UpdateCaches(node, viewpoint)if node is outside the view frustum then
node.status CULL
else if node.cache is valid for viewpoint thennode.status DRAW CACHE
else if node is a leaf thenUpdateNode(node, viewpoint)
elseUpdateCaches(node.back, viewpoint)UpdateCaches(node.front, viewpoint)UpdateNode(node, viewpoint)
![Page 19: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/19.jpg)
Updating Image CachesA Visual Example
![Page 20: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/20.jpg)
Updating Image CachesA Visual Example
![Page 21: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/21.jpg)
Updating Image CachesA Visual Example
![Page 22: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/22.jpg)
Updating Image CachesA Visual Example
![Page 23: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/23.jpg)
Updating Image CachesA Visual Example
![Page 24: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/24.jpg)
Updating Image CachesA Visual Example
![Page 25: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/25.jpg)
Updating Image CachesA Visual Example
![Page 26: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/26.jpg)
Updating Image CachesA Visual Example
![Page 27: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/27.jpg)
Updating Image CachesA Visual Example
![Page 28: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/28.jpg)
Updating Image CachesA Visual Example
![Page 29: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/29.jpg)
Updating Image CachesA Visual Example
![Page 30: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/30.jpg)
Updating Image CachesShade, Lischinski, Salesin, DeRose, Snyder
UpdateCaches(node, viewpoint)
if node is outside the view frustum then
node.status CULL
else if node.cache is valid for viewpoint then DETERMINE VALIDITY?
node.status DRAW CACHE
else if node is a leaf then
UpdateNode(node, viewpoint)
else
UpdateCaches(node.back, viewpoint)
UpdateCaches(node.front, viewpoint)
UpdateNode(node, viewpoint)
![Page 31: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/31.jpg)
Determining Impostor ValidityShade, Lischinski, Salesin, DeRose, Snyder
• Error metric
• In practice, only consider the eight corners of a node’s bounding box when computing error.
![Page 32: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/32.jpg)
Determining Impostor Validity• Error threshold
• Impostor can be used if…– – AND, imposter is not too close to the viewpoint
• Too close if tex >= screen (Schaufler, Sturzlinger)• OR, too close if viewpoint is in the same node (Shade et al)
![Page 33: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/33.jpg)
Updating Image CachesShade, Lischinski, Salesin, DeRose, Snyder
UpdateCaches(node, viewpoint)if node is outside the view frustum then
node.status CULL
else if node.cache is valid for viewpoint thennode.status DRAW CACHE
else if node is a leaf thenUpdateNode(node, viewpoint)
elseUpdateCaches(node.back, viewpoint)UpdateCaches(node.front, viewpoint)UpdateNode(node, viewpoint) CACHE NEW IMAGE OR NOT?
![Page 34: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/34.jpg)
Updating NodesShade, Lischinski, Salesin, DeRose, Snyder
UpdateNode(node, viewpoint)if viewpoint is inside node then
if node is a leaf thennode.status DRAW GEOMETRY
elsenode.status RECURSE
returnk EstimateCacheLifeSpan(node, viewpoint)amortizedCost (cost to create cache) / k + (cost to draw cache)if (amortizedCost < (cost to draw contents) then
CreateCache(node, viewpoint)node.status DRAW CACHEnode.drawingCost (cost to draw cache)
elseif node is a leaf then
node.status DRAW GEOMETRYnode.drawingCost (cost to draw geometry)
elsenode.status RECURSEnode.drawingCost node.back.drawingCost + node.front.drawingCost
![Page 35: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/35.jpg)
Updating NodesShade, Lischinski, Salesin, DeRose, Snyder
UpdateNode(node, viewpoint)if viewpoint is inside node then
if node is a leaf thennode.status DRAW GEOMETRY
elsenode.status RECURSE
returnk EstimateCacheLifeSpan(node, viewpoint) HOW TO ESTIMATE LIFE
SPAN?amortizedCost (cost to create cache) / k + (cost to draw cache)if (amortizedCost < (cost to draw contents) then
CreateCache(node, viewpoint)node.status DRAW CACHEnode.drawingCost (cost to draw cache)
elseif node is a leaf then
node.status DRAW GEOMETRYnode.drawingCost (cost to draw geometry)
elsenode.status RECURSEnode.drawingCost node.back.drawingCost + node.front.drawingCost
![Page 36: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/36.jpg)
Estimating Impostor Life SpanShade, Lischinski, Salesin, DeRose, Snyder
• Approximate the safety zone around current viewpoint.
![Page 37: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/37.jpg)
Estimating Impostor Life SpanShade, Lischinski, Salesin, DeRose, Snyder
• Approximating safety zone for a leaf node– Evaluate d for each corner of node’s bounding
volume.– Let r be the smallest such d.– Set the safety zone to be the axis-aligned
cube inscribed inside a sphere of radius r around current viewpoint.
![Page 38: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/38.jpg)
Estimating Impostor Life SpanShade, Lischinski, Salesin, DeRose, Snyder
• Approximating safety zone for an interior node.– Compute safety zone Z using the bounding
box of the node.– Intersect Z with the safety zones of the node’s
children
![Page 39: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/39.jpg)
Main Algorithm Differences
• Shade et al.– View frustum culling– Cost-benefit analysis for cache update
• Schaufler, Sturzlinger– No view frustum culling– No cost-benefit analysis for cache update
• Replace invalid impostors with new ones no matter what
![Page 40: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/40.jpg)
Questions so far?Method Overview
• Partition scene into a tree(BSP-tree or k-d-tree)
• For each frame:– First traversal of tree
• Cull nodes outside of the view frustum (optional)• Update the cached impostors of visible nodes
– Second traversal of tree• Render scene into framebuffer, back to front
![Page 41: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/41.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
• Silicon Graphics Indigo2 workstation– 250 MHz R4400 processor– 320 MB RAM– Maximum Impact graphics board with 4 MB
texture memory
• Outdoor Scene (island forest)– 1117 willow trees– 40,599,982 triangles
![Page 42: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/42.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
![Page 43: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/43.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
![Page 44: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/44.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
![Page 45: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/45.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
• BSP-tree Preprocessing– 46 seconds construction time– No splitting of trees, only terrain is split– 13 levels, 1072 leaf nodes– 150 MB storage space
• Walkthroughs– 640 x 480 frame resolution– 2 pixel error threshold
![Page 46: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/46.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
Actual geometry Image cache 2 pixel error threshold
![Page 47: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/47.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
Actual geometry Image cache 8 pixel error threshold
![Page 48: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/48.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
Actual geometry Image cache 2 pixel error threshold
![Page 49: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/49.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
Actual geometry Image cache 8 pixel error threshold
![Page 50: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/50.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
![Page 51: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/51.jpg)
Tests and Analysis of ResultsShade, Lischinski, Salesin, DeRose, Snyder
![Page 52: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/52.jpg)
Tests and Analysis of ResultsSchaufler, Sturzlinger
• INDIGO R3000– 39k triangles per second– No hardware support for texture mapping
• One cache update visualization
• Two performance tests
![Page 53: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/53.jpg)
Tests and Analysis of ResultsSchaufler, Sturzlinger
Cache update visualization• Diagonal walkthrough of some complex scene
• k-d-tree preprocessing– 341 bounding boxes
• 256 x 256 maximum texture resolution
• Impostor updates for every 6th frame of 120 frames shown…
![Page 54: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/54.jpg)
Tests and Analysis of ResultsSchaufler, Sturzlinger
Cache update visualization
![Page 55: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/55.jpg)
Tests and Analysis of ResultsSchaufler, Sturzlinger
![Page 56: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/56.jpg)
Tests and Analysis of ResultsSchaufler, Sturzlinger
• Two performance tests– Make up for hardware insufficiencies
• 1st test: Render at a small screen resolution• 2nd test: Replace each textured polygon with two
gouraud shaded polygons
– Sideward translation in front of forest (100 frames)
– Zoom from one corner of forest towards its center (100 frames)
– 1 pixel threshold
![Page 57: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/57.jpg)
Tests and Analysis of ResultsSchaufler, Sturzlinger
• Procedurally generated forest scene– 100 trees– Approximately 105000 polygons
• k-d-tree preprocessing– Max depth of 4– 585 bounding boxes
![Page 58: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/58.jpg)
Tests and Analysis of ResultsSchaufler, Sturzlinger
![Page 59: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/59.jpg)
Tests and Analysis of ResultsSchaufler, Sturzlinger
![Page 60: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/60.jpg)
Comments on Papers• Shade et al.
– Relatively thorough explanation of proposed method
– No justification of formulas for calculating cached image life expectancy.
• Schaufler, Sturzlinger– Insufficient explanation of testing procedure– Confusing graphs
![Page 61: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/61.jpg)
Summary
![Page 62: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/62.jpg)
Summary• Hierarchical image caching
– Impostors are cheap mimics of complex 3d geometry.• Take advantage of path coherence
– Caching impostors hierarchically further saves rendering time• Allows generation of impostors from children impostors
– Scene partitions are disjoint and does not rely on object groupings• Able to handle intersecting objects
• Automatic cache update control using error metric based on angular discrepancy
• Improved frame rates for large, complex static scenes
• Following work impacted by the insight that large and complex geometry can be efficiently rendered by hierarchically caching cheap representations
![Page 63: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/63.jpg)
Summary• Hierarchical image caching
– Impostors are cheap mimics of complex 3d geometry.• Take advantage of path coherence
– Caching impostors hierarchically further saves rendering time• Allows generation of impostors from children impostors
– Scene partitions are disjoint and does not rely on object groupings• Able to handle intersecting objects
• Automatic cache update control using error metric based on angular discrepancy
• Improved frame rates for large, complex static scenes
• Following work impacted by the insight that large and complex geometry can be efficiently rendered by hierarchically caching cheap representations
![Page 64: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/64.jpg)
Summary• Hierarchical image caching
– Impostors are cheap mimics of complex 3d geometry.• Take advantage of path coherence
– Caching impostors hierarchically further saves rendering time• Allows generation of impostors from children impostors
– Scene partitions are disjoint and does not rely on object groupings• Able to handle intersecting objects
• Automatic cache update control using error metric based on angular discrepancy
• Improved frame rates for large, complex static scenes
• Following work impacted by the insight that large and complex geometry can be efficiently rendered by hierarchically caching cheap representations
![Page 65: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/65.jpg)
Summary• Hierarchical image caching
– Impostors are cheap mimics of complex 3d geometry.• Take advantage of path coherence
– Caching impostors hierarchically further saves rendering time• Allows generation of impostors from children impostors
– Scene partitions are disjoint and does not rely on object groupings• Able to handle intersecting objects
• Automatic cache update control using error metric based on angular discrepancy
• Improved frame rates for large, complex static scenes
• Following work impacted by the insight that large and complex geometry can be efficiently rendered by hierarchically caching cheap representations
![Page 66: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/66.jpg)
Summary• Hierarchical image caching
– Impostors are cheap mimics of complex 3d geometry.• Take advantage of path coherence
– Caching impostors hierarchically further saves rendering time• Allows generation of impostors from children impostors
– Scene partitions are disjoint and does not rely on object groupings• Able to handle intersecting objects
• Automatic cache update control using error metric based on angular discrepancy
• Improved frame rates for large, complex static scenes
• Following work impacted by the insight that large and complex geometry can be efficiently rendered by hierarchically caching cheap representations
![Page 67: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/67.jpg)
Summary• Hierarchical image caching
– Impostors are cheap mimics of complex 3d geometry.• Take advantage of path coherence
– Caching impostors hierarchically further saves rendering time• Allows generation of impostors from children impostors
– Scene partitions are disjoint and does not rely on object groupings• Able to handle intersecting objects
• Automatic cache update control using error metric based on angular discrepancy
• Improved frame rates for large, complex static scenes
• Following work impacted by the insight that large and complex geometry can be efficiently rendered by hierarchically caching cheap representations
![Page 68: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/68.jpg)
Summary• Hierarchical image caching
– Impostors are cheap mimics of complex 3d geometry.• Take advantage of path coherence
– Caching impostors hierarchically further saves rendering time• Allows generation of impostors from children impostors
– Scene partitions are disjoint and does not rely on object groupings• Able to handle intersecting objects
• Automatic cache update control using error metric based on angular discrepancy
• Improved frame rates for large, complex static scenes
• Following work impacted by the insight that large and complex geometry can be efficiently rendered by hierarchically caching cheap representations
![Page 69: Image-Based Techniques Hierarchical Image Caching Michael Chung](https://reader036.vdocuments.mx/reader036/viewer/2022062320/56649d535503460f94a2efce/html5/thumbnails/69.jpg)
Questions?