CS380: Computer Graphics Distributed Ray Tracing TA Course URL:

Slides:



Advertisements
Similar presentations
Ray Tracing.
Advertisements

Ray tracing. New Concepts The recursive ray tracing algorithm Generating eye rays Non Real-time rendering.
Computer Graphics In4/MSc Computer Graphics Lecture Notes #15 Illumination III View Independent Rendering.
Illumination Model & Surface-rendering Method 박 경 와.
Ray Tracing Tutorial. Ray Casting One type of visibility algorithm.
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.
CS 376 Introduction to Computer Graphics 04 / 09 / 2007 Instructor: Michael Eckmann.
CSCE 641: Computer Graphics Ray Tracing Jinxiang Chai.
1 CSCE 641: Computer Graphics Lighting Jinxiang Chai.
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.
CIS 310: Visual Programming, Spring 2006 Western State College 310: Visual Programming Ray Tracing.
Ray Tracing CS Nov. 19, Turner Whitted.
CSCE 641: Computer Graphics Ray Tracing Jinxiang Chai.
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 2: Basic Ray Tracing Ravi Ramamoorthi Some slides courtesy.
Basic Ray Tracing CMSC 435/634. Visibility Problem Rendering: converting a model to an image Visibility: deciding which objects (or parts) will appear.
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.
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
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.
1. 2 Plan Introduction Overview of the semester Administrivia Iterated Function Systems (fractals)
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Texture Mapping.
CS 376 Introduction to Computer Graphics 04 / 11 / 2007 Instructor: Michael Eckmann.
Computer Graphics. Requirements Prerequisites Prerequisites CS 255 : Data Structures CS 255 : Data Structures Math 253 Math 253 Experience with C Programming.
Project Raytracing. Content Goals Idea of Raytracing Ray Casting – Therory – Practice Raytracing – Theory – Light model – Practice Output images Conclusion.
The Fundamentals of Ray-Tracing Szirmay-Kalos László Dept. of Control Engineering and Information Technology Budapest University of Technology
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.
Gene Au-yeung, Daniel Quach, Jeffrey Su, Albert Wang, Jessica Wang, David Woo.

Intro. to Advanced Lighting, Basic Ray Tracing Glenn G. Chappell U. of Alaska Fairbanks CS 481/681 Lecture Notes Monday, April.
Recursion and Data Structures in Computer Graphics Ray Tracing 1.
Ray Tracing TP OpenGL PHAM Trong Tôn WANG Yuanhang.
Ray Tracer Spring 2008 Help Session. Outline Project Web Resources What do you have to do for this project? Ray Class Isect Class Requirements Tricks.
Alex YAU Important Notes Website for Assignment #2 You.
Course Introduction to virtual engineering Óbuda University John von Neumann Faculty of Informatics Institute of Applied Mathematics Lecture and laboratory.
Basic Ray Tracing CMSC 435/634.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
Ray Tracing II. HW1 Part A due October 10 Camera module Object module –Read from a file –Sphere and Light only Ray tracer module: –No shading. No reflection.
Lecture 17Slide Fall 2001 Ray Tracing Beyond the Graphics Pipeline Ray Casting Ray-Object Intersection Global Illumination - Reflections and Transparency.
CSCE 441: Computer Graphics Ray Tracing
Project 3 Help Session: Ray Tracing. Getting Started Download the starter pack. 1.sample_ray.exe 2.ray-skel directory 3.scenes directory Look at the Road.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
CS 445 / 645 Introduction to Computer Graphics Lecture 16 Lighting Lighting.
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.
CS 325 Introduction to Computer Graphics 04 / 07 / 2010 Instructor: Michael Eckmann.
CSL 859: Advanced Computer Graphics Dept of Computer Sc. & Engg. IIT Delhi.
Distributed Ray Tracing. Can you get this with ray tracing?
Ray Tracing I. Reading Hill, Chapter 14, Sections 14.1 to 14.5 Hill, Chapter 14, Sections and
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
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.
Advanced Computer Graphics
Photorealistic Rendering vs. Interactive 3D Graphics
Ray Tracer Spring 2007 Help Session.
Ray Tracing.
An Algorithm of Eye-Based Ray Tracing on MATLAB
CSCE 441: Computer Graphics Ray Tracing
Ray Tracer Spring 2004 Help Session.
GR2 Advanced Computer Graphics AGR
Ray Tracer Spring 2008 Help Session.
Introduction to Ray Tracing
Ray Tracer Autumn 2005 Help Session.
Ray Tracer Spring 2006 Help Session.
Presentation transcript:

CS380: Computer Graphics Distributed Ray Tracing TA Course URL:

2 Design of a Ray Tracer ● Building a ray tracer is simple ● We start with a convenient vector algebra library. ● E.g., with vector and matrix of vecmat.h ● Ray object (defs.h) ● Origin and direction ● Trace (.) ● Find a closest intersection point ● Shade (.) ● Perform shading ● Light sources (defs.h) ● Supports directional light.

3 Renderable ● Every object in our ray tracer must be able to ● Intersect itself with a ray. ● Shade itself (determine the color it reflects along the given ray). ● Current code has a renderable sphere object (sphere.h). Class MyObject {. Surface* surface;. intersect (ray): # returns boolean shade(ray, lightList, objectList, bgndColor): #returns (r,g,b). }

4 Surface Object (surface.cpp) class Surface { RGBColor baseColor; // base color of the surface float ka, kd, ks; // ambient, diffuse, specular coefficients float ns; // Shineness power float kr; // reflection coef. float kt; // transparency coef. float ior; // index of refraction } ● Contains various material properties. ● Surface shader ● Accumulate contributions from lights. ● Handle reflection, refractions and other things.

5 Ray Tracing Application ● Generate primary rays. ● Refer to renderLine(.) (RayTrace.cpp) That’s basically all we need to write a ray tracer. Compared to a graphics pipeline, the code is very simple and easy to understand.

6 Display List Parser ● We can use a simple input parser similar to the one used for Wavefront OBJ files. Here is an example input file. eye lookat up fov 30 background light ambient light directional light point surface sphere sphere sphere sphere sphere sphere sphere sphere sphere sphere sphere sphere sphere surface sphere sphere sphere sphere sphere sphere sphere sphere sphere sphere sphere sphere surface sphere

7 Usage of Codes ● RT.exe balls.ray ● Extend codes to support PA7 requirements. ● Please go over lecture materials.

8 Requirements ● Extend the surface shader to handle refraction. ● For Sphere case, note that the ray can hit inside of the Sphere.

9 Requirements ● Implement a “Triangle” Object. ● Add texture mapping. ● Reflection/refraction is not required the textured triangles.

10 Requirements ● Add a randomized sampling method for enhanced rendering. ● Antialiasing: perform jittered sampling on the pixel area. ● Soft-shadows: imitate rectangular area light. 4*4 jittered sampling for antialiasing and soft-shadows.