04/23/03© 2003 University of Wisconsin Where We’ve Been Photo-realistic rendering –Accurate modeling and rendering of light transport and surface reflectance.

Slides:



Advertisements
Similar presentations
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Advertisements

Graphics Pipeline.
Direct Volume Rendering. What is volume rendering? Accumulate information along 1 dimension line through volume.
Week 7 - Monday.  What did we talk about last time?  Specular shading  Aliasing and antialiasing.
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
3D Graphics Rendering and Terrain Modeling
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.
Occlusion Culling Fall 2003 Ref: GamasutraGamasutra.
CAP4730: Computational Structures in Computer Graphics Visible Surface Determination.
Computer Graphics Visible Surface Determination. Goal of Visible Surface Determination To draw only the surfaces (triangles) that are visible, given a.
Part I: Basics of Computer Graphics
Visibility Culling. Back face culling View-frustrum culling Detail culling Occlusion culling.
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Object-Order vs. Screen-Order Rendering April 24, 2003.
Tomas Mőller © 2000 Speeding up your game The scene graph Culling techniques Level-of-detail rendering (LODs) Collision detection Resources and pointers.
Computer Graphics (Fall 2005) COMS 4160, Lecture 21: Ray Tracing
Introduction to Volume Rendering Presented by Zvi Devir.
CSCE 641: Computer Graphics Image-based Rendering Jinxiang Chai.
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.
Computer Graphics Mirror and Shadows
Computer graphics & visualization Point-Based Computer Graphics.
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
CS 638, Fall 2001 Today Light Mapping (Continued) Bump Mapping with Multi-Texturing Multi-Pass Rendering.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
CSE 381 – Advanced Game Programming Basic 3D Graphics
The Visibility Problem In many environments, most of the primitives (triangles) are not visible most of the time –Architectural walkthroughs, Urban environments.
Surfels : Surface Elements as Rendering Primitives Hanspeter Pfister Matthias Zwicker Jeroen van Baar Markus Gross Presented by Kevin Reed.
09/09/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Event management Lag Group assignment has happened, like it or not.
“QSplat : A Multiresolution Point Rendering System for Large Data Meshes” Authors: Szymon Rusinklewicz Marc Levoy Presentation: Nathaniel Fout.
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
CSC418 Computer Graphics n BSP tree n Z-Buffer n A-buffer n Scanline.
CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS – PART 2 SPRING 2015 DR. MICHAEL J. REALE.
Week 2 - Friday.  What did we talk about last time?  Graphics rendering pipeline  Geometry Stage.
10/26/04© University of Wisconsin, CS559 Fall 2004 Last Time Drawing lines Polygon fill rules Midterm Oct 28.
Real-Time Rendering SPEEDING UP RENDERING Lecture 04 Marina Gavrilova.
Visible-Surface Detection Jehee Lee Seoul National University.
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.
3D Graphics for Game Programming Chapter IV Fragment Processing and Output Merging.
03/24/03© 2003 University of Wisconsin Last Time Image Based Rendering from Sparse Data.
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.
David Luebke11/26/2015 CS 551 / 645: Introductory Computer Graphics David Luebke
09/16/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Environment mapping Light mapping Project Goals for Stage 1.
03/15/03© 2005 University of Wisconsin Where We’ve Been Photo-realistic rendering –Accurate modeling and rendering of light transport and surface reflectance.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 7. Speed-up Techniques Presented by SooKyun Kim.
Lecture 6 Rasterisation, Antialiasing, Texture Mapping,
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.
LOD Unresolved Problems The LOD algorithms discussed previously do not perform well with large amounts of visible objects Consider a large number of tress.
CS559: Computer Graphics Final Review Li Zhang Spring 2010.
Honours Graphics 2008 Session 5. Today’s focus Rasterization Visibility determination Coarse / fine visibility determination.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
CS559: Computer Graphics Lecture 12: Antialiasing & Visibility Li Zhang Spring 2008.
CS 445 / 645: Introductory Computer Graphics Review.
Hierarchical Occlusion Map Zhang et al SIGGRAPH 98.
Image-Based Rendering Geometry and light interaction may be difficult and expensive to model –Think of how hard radiosity is –Imagine the complexity of.
09/23/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Reflections Shadows Part 1 Stage 1 is in.
Photorealistic Rendering vs. Interactive 3D Graphics
Week 2 - Friday CS361.
3D Graphics Rendering PPT By Ricardo Veguilla.
The Graphics Rendering Pipeline
Jim X. Chen George Mason University
Lecture 13 Clipping & Scan Conversion
UMBC Graphics for Games
Frame Buffer Applications
Interactive Sampling and Rendering for Complex and Procedural Geometry
Presentation transcript:

04/23/03© 2003 University of Wisconsin Where We’ve Been Photo-realistic rendering –Accurate modeling and rendering of light transport and surface reflectance Image-based rendering –Avoiding modeling by exploiting images as primitives –Faces as a particular application NPR rendering –Trying to achieve a stylized look

04/23/03© 2003 University of Wisconsin Today Point-based Rendering –Also called splatting

04/23/03© 2003 University of Wisconsin Current Standards Traditionally, graphics has worked with triangles as the rendering pyramid –Triangles are really just the lowest common denominator for surfaces Texture-mapping is used to give detail to surfaces Why do surfaces dominate? –From an authoring (content creation) perspective? –From an efficiency perspective?

04/23/03© 2003 University of Wisconsin Laser Range Scanning Laser scanners capture 3D point and color samples –Connectivity is implicit They can scan at resolutions of 0.25mm or better They produce huge data sets of point samples (multi GB) –Multiple sets of samples for any one object What do you have to do to make it work with existing systems? What are some problems?

04/23/03© 2003 University of Wisconsin Point-Based Rendering Instead of drawing triangles, just draw lots of dots (or small circles, or something) What are the advantages of this? What problems do you need to solve? –Think about all the operations performed in a standard graphics pipeline, and how they might cause problems with points –There are some unique problems

04/23/03© 2003 University of Wisconsin Some History The idea of splatting points onto the screen originated with Levoy and Whitted in 1985 It found some use in volume rendering –Voxels were accumulated along rays and onto the screen A commonly cited commercial system is Animatek’s Caviar player –Interactive frame rates for complex models aimed at games Image-based rendering can be viewed as point-based rendeering

04/23/03© 2003 University of Wisconsin Surftels (Pfister, Zwicker, van Baar and Gross SIGGRAPH 2000) We’ve seen pixels, voxels, texels, graftals, and now surftels –You can probably guess what it means This paper focuses on the issues of: –Sampling other representations into surftels –Storing surftels –Rendering with surftels

04/23/03© 2003 University of Wisconsin Sampling Objects The final pixel resolution determines the sampling density –Want at least one sample per pixel –Typically go higher Cast rays through the object in an axis aligned direction on a regular grid spacing –Do this for each of three axis align directions Store pre-filtered texture colors at the points –Project the surftel into texture space and filter to get a single color

04/23/03© 2003 University of Wisconsin Storing Surftels Store 3 layered depth images (LDI), one for each axis- aligned orthographic viewing direction –Call the result a Layered Depth Cube (LDC) –We briefly saw layered depth images back for image based rendering –A layered depth image stores multiple depths per pixel, with color for each depth Build an octree hierarchy by down-sampling high-res LDIs –Nodes in the tree are called blocks Can also reduce a LDC to a single LDI (but with some error)

04/23/03© 2003 University of Wisconsin Rendering Surftels (1) Cull blocks against the view frustum –Fast and simple Recurse through blocks to find the right resolution –Fast estimate for required resolution based on projection of block diagonals Warp blocks to screen space –Blocks are in object space originally –Fast algorithms for doing this in another paper –Only a few operations per surftel (fewer than transformation due to regularity of samples)

04/23/03© 2003 University of Wisconsin Rendering Surftels (2) Do visibility with a Z buffer –Each surftel covers a little area –Project this area and scan convert it into the z-buffer –Depth variation comes from surftel normal –Can still be holes (magnification or surftels that are near-tangent) Shading is done with environment maps using projected surftel normals Reconstruct image by filling holes between projected surftels –Apply a filter in screen space –Can super-sample in the z-buffer and so on to improve quality

04/23/03© 2003 University of Wisconsin Splatting and Reconstruction

04/23/03© 2003 University of Wisconsin Surftel Results Software system gets <10fps on very complex models (hundred thousand polygons) –Most time spent warping and reconstructing –No mention of pre-process time Their ultimate aim is hardware for this purpose

04/23/03© 2003 University of Wisconsin QSplat (Rusinkiewicz and Levoy SIGGRAPH 2000) Primary goal is interactive rendering of very large point- data sets Built for the Digital Michelangelo Project

04/23/03© 2003 University of Wisconsin Sphere Trees A hierarchy of spheres, with leaves containing single vertices Each sphere stores center, radius, normal, normal cone width, and color (optional) Tree built the same way one would build a KD-tree –Median cut method This paper goes into great detail about how to lay out the tree in memory and quantize the data to minimize storage –They cared a lot about rendering very large models

04/23/03© 2003 University of Wisconsin Rendering Sphere Trees Start at root Do a visibility test –Short circuit of sphere is outside view or completely inside –Also back-face cull based on normal cone Recurse or Draw –Recurse based on projected area of sphere with an adapted threshold –To draw, use normals for lighting and z-buffer to resolve occlusion

04/23/03© 2003 University of Wisconsin Splat Shape Several options –Square (OpenGL “point”) –Circle (triangle fan or texture mapped square) –Gaussian (have to do two-pass) Can squash splats depending on viewing angle –Sometimes causes holes at silhouettes, can be fixed by bouding squash factor

04/23/03© 2003 University of Wisconsin Results 200k to 300k points per frame at 5-10Hz Good for low end machines (very very simple) Pre-processing is much faster than level-of-detail algorithms, which are the main competition Got real-world use

04/23/03© 2003 University of Wisconsin Surface Splatting (Zwicker, Pfister, van Baar and Gross, SIGGRAPH 2001) Main focus is derivation of texture filtering for splatting applications –Tells you how to sample objects and what the splatting kernel should be Makes no assumptions about regularity of point representations Handles transparency and high-quality anti-aliasing using a modified A-buffer –Who remembers what that is? –The modifications fix some of the main problems with A-buffers

04/23/03© 2003 University of Wisconsin Surface Splatting Results

04/23/03© 2003 University of Wisconsin Comparison Top, texture sampling in screen space Second, texture sampling in source space Third, splatting circles Four, splatting ellipses