University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2008 Alla Sheffer Advanced Rendering Week.

Slides:



Advertisements
Similar presentations
SI31 Advanced Computer Graphics AGR
Advertisements

Technische Universität München Computer Graphics SS 2014 Graphics Effects Rüdiger Westermann Lehrstuhl für Computer Graphik und Visualisierung.
Ray tracing. New Concepts The recursive ray tracing algorithm Generating eye rays Non Real-time rendering.
Computer graphics & visualization Global Illumination Effects.
3D Graphics Rendering and Terrain Modeling
CLASS 9 ADVANCE RENDERING RAY TRACING RADIOSITY LIGHT FIELD CS770/870.
Advanced Computer Graphics
Illumination Models Radiosity Chapter 14 Section 14.7 Some of the material in these slides may have been adapted from University of Virginia, MIT, Colby.
Ray Tracing & Radiosity Dr. Amy H. Zhang. Outline  Ray tracing  Radiosity.
ATEC Procedural Animation Introduction to Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa.
1. What is Lighting? 2 Example 1. Find the cubic polynomial or that passes through the four points and satisfies 1.As a photon Metal Insulator.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2007 Tamara Munzner Lighting/Shading III Week.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2007 Tamara Munzner Clipping Week 8, Wed Mar.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Advanced Rendering II,
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2007 Tamara Munzner Advanced Rendering II.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2007 Tamara Munzner Shading, Advanced Rendering.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 15: Ray Tracing/Global Illumination Ravi Ramamoorthi Slides.
MC930/MO603 Ray Casting. Light is bouncing photons.
Computer Graphics (Fall 2005) COMS 4160, Lecture 21: Ray Tracing
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2010 Tamara Munzner Advanced Rendering II,
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2007 Tamara Munzner Advanced Rendering III,
Rendering theory & practice. Introduction  We’ve looked at modelling, surfacing and animating.  The final stage is rendering.  This can be the most.
Ray Casting Ray-Surface Intersections Barycentric Coordinates Reflection and Transmission [Shirley, Ch.9] Ray Tracing Handouts Ray Casting Ray-Surface.
3D Graphics Processor Architecture Victor Moya. PhD Project Research on architecture improvements for future Graphic Processor Units (GPUs). Research.
Global Illumination May 7, Global Effects translucent surface shadow multiple reflection.
CSCE 641 Computer Graphics: Radiosity Jinxiang Chai.
Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 14: Ray Tracing
1 7M836 Animation & Rendering Global illumination, ray tracing Arjan Kok
The Radiosity Method Donald Fong February 10, 2004.
CSCE 641 Computer Graphics: Radiosity Jinxiang Chai.
CSC418 Computer Graphics n Raytracing n Shadows n Global Illumination.
Cornell CS465 Fall 2004 Lecture 3© 2004 Steve Marschner 1 Ray Tracing CS 465 Lecture 3.
Cornell CS465 Fall 2004 Lecture 3© 2004 Steve Marschner 1 Ray Tracing CS 465 Lecture 3.
Advanced Rendering University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2013 Tamara Munzner.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2010 Tamara Munzner Clipping II, Hidden Surfaces.
Basics of Rendering Pipeline Based Rendering –Objects in the scene are rendered in a sequence of steps that form the Rendering Pipeline. Ray-Tracing –A.
COMP 175: Computer Graphics March 24, 2015
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
12/05/02(c) 2002 University of Wisconsin Last Time Subdivision techniques for modeling Very brief intro to global illumination.
-Global Illumination Techniques
CS 376 Introduction to Computer Graphics 04 / 16 / 2007 Instructor: Michael Eckmann.
Ray Tracing Chapter CAP4730: Computational Structures in Computer Graphics.
CS447/ Realistic Rendering -- Radiosity Methods-- Introduction to 2D and 3D Computer Graphics.
Rendering Overview CSE 3541 Matt Boggus. Rendering Algorithmically generating a 2D image from 3D models Raster graphics.
Collaborative Visual Computing Lab Department of Computer Science University of Cape Town Graphics Topics in VR By Shaun Nirenstein.
Graphics Lecture 13: Slide 1 Interactive Computer Graphics Lecture 13: Radiosity - Principles.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
Introduction to Radiosity Geometry Group Discussion Session Jiajian (John) Chen 9/10/2007.
04/30/02(c) 2002 University of Wisconsin Last Time Subdivision techniques for modeling We are now all done with modeling, the standard hardware pipeline.
Global Illumination: Radiosity, Photon Mapping & Path Tracing Rama Hoetzlein, 2009 Lecture Notes Cornell University.
Basic Ray Tracing CMSC 435/634.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Surface Rendering Methods 고려대학교 컴퓨터 그래픽스 연구실.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
Lighting/Shading IV Advanced Rendering I Week 8, Mon Mar 3
CSCE 441: Computer Graphics Ray Tracing
CS559: Computer Graphics Final Review Li Zhang Spring 2010.
CS 445 / 645 Introduction to Computer Graphics Lecture 16 Radiosity Radiosity.
Render methods. Contents Levels of rendering Wireframe Plain shadow Gouraud Phong Comparison Gouraud-Phong.
More on Ray Tracing Glenn G. Chappell U. of Alaska Fairbanks CS 481/681 Lecture Notes Wednesday, April 14, 2004.
RENDERING : Global Illumination
CSE 681 Introduction to Ray Tracing. CSE 681 Ray Tracing Shoot a ray through each pixel; Find first object intersected by ray. Image plane Eye Compute.
Sub-Surface Scattering Real-time Rendering Sub-Surface Scattering CSE 781 Prof. Roger Crawfis.
CS 376 Introduction to Computer Graphics 04 / 18 / 2007 Instructor: Michael Eckmann.
Photorealistic Rendering vs. Interactive 3D Graphics
3D Graphics Rendering PPT By Ricardo Veguilla.
© University of Wisconsin, CS559 Fall 2004
Lighting/Shading IV, Advanced Rendering I Week 7, Fri Mar 5
(c) 2002 University of Wisconsin
CS5500 Computer Graphics May 29, 2006
CSC418 Computer Graphics Raytracing Shadows Global Illumination.
Presentation transcript:

University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2008 Alla Sheffer Advanced Rendering Week 8, Wed Mar 5

2 Ray-Triangle Intersection method in book is elegant but a bit complex easier approach: triangle is just a polygon intersect ray with plane check if ray inside triangle a b c e d x n

3 Ray-Triangle Intersection check if ray inside triangle check if point counterclockwise from each edge (to its left) check if cross product points in same direction as normal (i.e. if dot is positive) more details at a b c x n CCW

4 Ray Tracing issues: generation of rays intersection of rays with geometric primitives geometric transformations lighting and shading efficient data structures so we don’t have to test intersection with every object

5 Geometric Transformations similar goal as in rendering pipeline: modeling scenes more convenient using different coordinate systems for individual objects problem not all object representations are easy to transform problem is fixed in rendering pipeline by restriction to polygons, which are affine invariant ray tracing has different solution ray itself is always affine invariant thus: transform ray into object coordinates!

6 Geometric Transformations ray transformation for intersection test, it is only important that ray is in same coordinate system as object representation transform all rays into object coordinates transform camera point and ray direction by inverse of model/view matrix shading has to be done in world coordinates (where light sources are given) transform object space intersection point to world coordinates thus have to keep both world and object-space ray

7 Ray Tracing issues: generation of rays intersection of rays with geometric primitives geometric transformations lighting and shading efficient data structures so we don’t have to test intersection with every object

8 Local Lighting local surface information (normal…) for implicit surfaces F(x,y,z) =0: normal n(x,y,z) can be easily computed at every intersection point using the gradient example: needs to be normalized!

9 Local Lighting local surface information alternatively: can interpolate per-vertex information for triangles/meshes as in rendering pipeline now easy to use Phong shading! as discussed for rendering pipeline difference with rendering pipeline: interpolation cannot be done incrementally have to compute barycentric coordinates for every intersection point (e.g plane equation for triangles)

10 Global Shadows approach to test whether point is in shadow, send out shadow rays to all light sources if ray hits another object, the point lies in shadow

11 Global Reflections/Refractions approach send rays out in reflected and refracted direction to gather incoming light that light is multiplied by local surface color and added to result of local shading

12 Advanced Phenomena Can (not allways efficiently) simulate Soft Shadows Fog Frequency Dependent Light (diamonds & prisms) Barely handle S*DS* S – Specular D - diffuse

13 Total Internal Reflection

14 Ray Tracing issues: generation of rays intersection of rays with geometric primitives geometric transformations lighting and shading efficient data structures so we don’t have to test intersection with every object

15 Optimized Ray-Tracing basic algorithm simple but very expensive optimize by reducing: number of rays traced number of ray-object intersection calculations methods bounding volumes: boxes, spheres spatial subdivision uniform BSP trees (more on this later with collision)

16 Example Images

17 Radiosity radiosity definition rate at which energy emitted or reflected by a surface radiosity methods capture diffuse-diffuse bouncing of light indirect effects difficult to handle with raytracing

18 Radiosity illumination as radiative heat transfer conserve light energy in a volume model light transport as packet flow until convergence solution captures diffuse-diffuse bouncing of light view-independent technique calculate solution for entire scene offline browse from any viewpoint in realtime heat/light source thermometer/eye reflective objects energy packets

19 Radiosity [IBM] divide surfaces into small patches loop: check for light exchange between all pairs form factor: orientation of one patch wrt other patch (n x n matrix) escience.anu.edu.au/lecture/cg/GlobalIllumination/Image/continuous.jpg escience.anu.edu.au/lecture/cg/GlobalIllumination/Image/discrete.jpg

20 Better Global Illumination ray-tracing: great specular, approx. diffuse view dependent radiosity: great diffuse, specular ignored view independent, mostly-enclosed volumes photon mapping: superset of raytracing and radiosity view dependent, handles both diffuse and specular well raytracing photon mapping graphics.ucsd.edu/~henrik/images/cbox.html

21 Subsurface Scattering: Translucency light enters and leaves at different locations on the surface bounces around inside technical Academy Award, 2003 Jensen, Marschner, Hanrahan

22 Subsurface Scattering: Marble

23 Subsurface Scattering: Milk vs. Paint

24 Subsurface Scattering: Skin

25 Subsurface Scattering: Skin

26 Non-Photorealistic Rendering simulate look of hand-drawn sketches or paintings, using digital models /

27 Non-Photorealistic Shading cool-to-warm shading standard cool-to-warmwith edges/creases

28 Non-Photorealistic Shading draw silhouettes: if, e=edge-eye vector draw creases: if standard cool-to-warmwith edges/creases

29 Image-Based Modelling and Rendering store and access only pixels no geometry, no light simulation,... input: set of images output: image from new viewpoint surprisingly large set of possible new viewpoints interpolation allows translation, not just rotation lightfield, lumigraph: translate outside convex hull of object QuickTimeVR: camera rotates, no translation can point camera in or out