Project Raytracing. Content Goals Idea of Raytracing Ray Casting – Therory – Practice Raytracing – Theory – Light model – Practice Output images Conclusion.

Slides:



Advertisements
Similar presentations
GR2 Advanced Computer Graphics AGR
Advertisements

13.1 si31_2001 SI31 Advanced Computer Graphics AGR Lecture 13 An Introduction to Ray Tracing.
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.
Ray Tracing & Radiosity Dr. Amy H. Zhang. Outline  Ray tracing  Radiosity.
Light Issues in Computer Graphics Presented by Saleema Amershi.
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.
Illumination Model & Surface-rendering Method 박 경 와.
CS 325 Introduction to Computer Graphics 04 / 09 / 2010 Instructor: Michael Eckmann.
CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Object-Order vs. Screen-Order Rendering April 24, 2003.
RAY TRACING.
CSCE 641: Computer Graphics Ray Tracing Jinxiang Chai.
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.
Parallelizing Raytracing Gillian Smith CMPE 220 February 19 th, 2008.
Global Illumination May 7, Global Effects translucent surface shadow multiple reflection.
Ray Tracing Outline For each pixel { Shoot ray r from eye to center of pixel with trace( r ) } function trace( r ) For each object { Find object with closest.
Ray Tracing Jerry Sui Adam Conner. Part I – Introduction to Ray Tracing Final Product.
1 7M836 Animation & Rendering Global illumination, ray tracing Arjan Kok
CIS 310: Visual Programming, Spring 2006 Western State College 310: Visual Programming Ray Tracing.
1 3D –graphics and animation Addvanced 3D modeling and rendering Harri Airaksinen.
CSCE 641: Computer Graphics Ray Tracing Jinxiang Chai.
Basic Ray Tracing CMSC 435/634. Visibility Problem Rendering: converting a model to an image Visibility: deciding which objects (or parts) will appear.
RAY TRACING WITH DISPERSION CSS552 – Topics in Rendering Winter 2011 Final Project by: Kohei Ueda Shivani Srikanteshwara Mary Ann Chiramattel Kunjachan.
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
What is Computer Graphics and Image Processing? lAll visual computer output depends on computer graphics and image processing. l3D computer graphics is.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Chapter 10: Computer Graphics
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10: Computer Graphics Computer Science: An Overview Tenth Edition.
Today More raytracing stuff –Soft shadows and anti-aliasing More rendering methods –The text book is good on this –I’ll be using images from the CDROM.
-Global Illumination Techniques
Ray Tracing Sang Il Park SEjong University With lots of slides stolen from Jehee Lee, Doug James, Steve Seitz, Shree Nayar, Alexei Efros, Fredo Durand.
CS 376 Introduction to Computer Graphics 04 / 16 / 2007 Instructor: Michael Eckmann.
Ray Tracing Chapter CAP4730: Computational Structures in Computer Graphics.
1 Dr. Scott Schaefer Ray Tracing. 2/42 Ray Tracing Provides rendering method with  Refraction/Transparent surfaces  Reflective surfaces  Shadows.
Rendering Overview CSE 3541 Matt Boggus. Rendering Algorithmically generating a 2D image from 3D models Raster graphics.
Basic Ray Tracing CMSC 435/634. Visibility Problem Rendering: converting a model to an image Visibility: deciding which objects (or parts) will appear.
Week 10 - Wednesday.  What did we talk about last time?  Shadow volumes and shadow mapping  Ambient occlusion.
Gene Au-yeung, Daniel Quach, Jeffrey Su, Albert Wang, Jessica Wang, David Woo.

Recursion and Data Structures in Computer Graphics Ray Tracing 1.
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.
Basic Ray Tracing CMSC 435/634.
CS380: Computer Graphics Distributed Ray Tracing TA Course URL:
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
In the name of God Computer Graphics. Last Time Some techniques for modeling Today Global illumination and raytracing.
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.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
Distributed Ray Tracing. Can you get this with ray tracing?
Distributed Ray Tracing. Can you get this with ray tracing?
CS552: Computer Graphics Lecture 36: Ray Tracing.
Review Ray Tracing III Review. Pseudo codes RayCast-1  Plain ray caster (direct illumination) RayCast-2  RayCast-1 + shadow rays RayTrace-1  Recursive.
Basic Ray Tracing CMSC 435/634.
Photorealistic Rendering vs. Interactive 3D Graphics
Ray Tracing Dr. Scott Schaefer.
3D Graphics Rendering PPT By Ricardo Veguilla.
Chapter 10: Computer Graphics
Ray Tracer Project CSE 557.
(c) 2002 University of Wisconsin
Lighting.
(c) 2002 University of Wisconsin
Image.
CS5500 Computer Graphics May 29, 2006
GR2 Advanced Computer Graphics AGR
Ray Tracer Project CSE 557.
Introduction to Ray Tracing
Presentation transcript:

Project Raytracing

Content Goals Idea of Raytracing Ray Casting – Therory – Practice Raytracing – Theory – Light model – Practice Output images Conclusion

Specifications Ray tracer depends on how to represent objects Parametric equation for precision, not rapidity Develop a Ray Tracer in order to explore a new intersection algorithm Two teams : - for mathematics - for code

Main principle Create 3D pictures Mathematical equation Throw ray from eye to pixels Not FROM source light: TO it Number of reflections Great pictures but slow

Algorithms Ray casting - first method - no bounce Ray tracing - from eye to pixels - reflection - refraction - shadow

Fields of use Animation studio Pixar: with parsimony → light effects Video games → with triangles → faster and great

Ray casting For each pixel: ● Shoot a ray from the observer to the position of the pixel ● Test if the ray hits an object in the scene ● If there is a hit: the color of this pixel will be the color of the object ● If there is no hit: the pixel receives the color of the background

Ray casting What do we need ? ● A position for the observer (eye, camera) ● A direction/object to look at (and a « way up ») ● An object to show on screen ● A representation of the 2D screen in the 3D space

Ray casting

Our Ray Caster

From Ray Casting to Ray Tracing

We add : ● Lights ambient, diffuse, specular ● Shadows ● Reflexion => recursion : another ray is shot from the intersection ● Material properties ambient, diffuse, and specular coefficients

Lightmodel Used: Phong reflection model 3 types of light: ambient, diffuse, specular

Ambient and Diffuse

Specular

Shadows Only add diffuse and specular light, if a lightsource is visible Test for intersections between a point on the sphere and the lightsource

In practice ● Implementation of the ray casting algorithm ● From ray casting to ray tracing ● Demo, use cases ● Highlight of some interesting modules

From Ray Casting to Ray Tracing We add : ● Lights ambient, diffuse, specular ● Shadows ● Reflexion => recursion : another ray is shot from the intersection ● Material properties ambient, diffuse, and specular coefficients

Video link 1

Video link 2

Interesting modules ● Positionning of the screen in 3D space ● The RayTracer class ● That's the core of the program (light model) ● Shadows ● The use of inheritance to compute intersections ● Obtaining an animation ● Camera and lights movement ● Export a sequence of images, make a movie ● The Draughtboard

Difficulties - math libraries - C++, compilation, building environment - Screen implementation - Unexpected results (debugging)

Achievements Light effects Animation rendering Different shapes Antialiasing

Improvements Refraction and transparency Textures and noise Depth of Field Image mapping Bounding Volume Radiometry (power, energy, radiance...) Photon mapping

Thanks! Thank you for your attention!

Questions?

reims.fr/image/siRendu/Documents/2004- Chap5-BRDF.pdf tracing.gif?w=468