Ray Tracing POV Oz Levy Yulia Shnaider 06.01.2014.

Slides:



Advertisements
Similar presentations
GR2 Advanced Computer Graphics AGR
Advertisements

Ray tracing. New Concepts The recursive ray tracing algorithm Generating eye rays Non Real-time rendering.
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
Eyes for Relighting Extracting environment maps for use in integrating and relighting scenes (Noshino and Nayar)
Color spaces CIE - RGB space. HSV - space. CIE - XYZ space.
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.
Chapter 4 Digital Multimedia, 2nd edition Vector Graphics.
Rendering theory & practice. Introduction  We’ve looked at modelling, surfacing and animating.  The final stage is rendering.  This can be the most.
3D Graphics Processor Architecture Victor Moya. PhD Project Research on architecture improvements for future Graphic Processor Units (GPUs). Research.
DDDDRRaw: A Prototype Toolkit for Distributed Real-Time Rendering on Commodity Clusters Thu D. Nguyen and Christopher Peery Department of Computer Science.
Face Recognition Based on 3D Shape Estimation
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
Parallelizing Raytracing Gillian Smith CMPE 220 February 19 th, 2008.
Global Illumination May 7, Global Effects translucent surface shadow multiple reflection.
1 3D –graphics and animation Shading and Surface Characteristics Harri Airaksinen.
3-D RENDERING Peter Moore Jackson Cwach. What 3-D Rendering is 3D rendering is the 3D computer graphics process of automatically converting 3D wire frame.
Week 1 - Friday.  What did we talk about last time?  C#  SharpDX.
Guilford County Sci Vis V204.01
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
CS-557 Gregory Dudek CD Contents. CS-557 Gregory Dudek Course description Lecture schedule by week 1997 Image Gallery Assignments Page Morphing Notes.
CSS 522 Topics in Rendering March 01,2011 Scott and Lew.
Presentation by Dr. David Cline Oklahoma State University
Computer graphics & visualization REYES Render Everything Your Eyes Ever Saw.
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.
Computer Graphics An Introduction. What’s this course all about? 06/10/2015 Lecture 1 2 We will cover… Graphics programming and algorithms Graphics data.
Computer Graphics. Requirements Prerequisites Prerequisites CS 255 : Data Structures CS 255 : Data Structures Math 253 Math 253 Experience with C Programming.
-Global Illumination Techniques
Project Raytracing. Content Goals Idea of Raytracing Ray Casting – Therory – Practice Raytracing – Theory – Light model – Practice Output images Conclusion.
CS 376 Introduction to Computer Graphics 04 / 16 / 2007 Instructor: Michael Eckmann.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
(Short) Introduction to Parallel Computing CS 6560: Operating Systems Design.
From Simulation to Visualization: Astrophysics Goes Hollywood Frank Summers January 17, 2002.
Gene Au-yeung, Daniel Quach, Jeffrey Su, Albert Wang, Jessica Wang, David Woo.
Global Illumination Models THE WHITTED IMAGE - BASIC RECURSIVE RAY TRACING Copyright © 1997 A. Watt and L. Cooper.
Digital Media Dr. Jim Rowan ITEC 2110 Vector Graphics II.
Parallel Ray Tracer Computer Systems Lab Presentation Stuart Maier.
1 by: Ilya Melamed Supervised by: Eyal Sarfati High Speed Digital Systems Lab.
Mining Weather Data for Decision Support Roy George Army High Performance Computing Research Center Clark Atlanta University Atlanta, GA
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.
Digital Media Dr. Jim Rowan ITEC 2110 Vector Graphics II.
Lecture 3 : Performance of Parallel Programs Courtesy : MIT Prof. Amarasinghe and Dr. Rabbah’s course note.
Parallel and Distributed Simulation Time Parallel Simulation.
Subject Name: Computer Graphics Subject Code: Textbook: “Computer Graphics”, C Version By Hearn and Baker Credits: 6 1.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
3-D Graphics Rendering Using PVM CLUSTERS Arjun Jain & Harish G. Naik R. V. College of Engineering, Bangalore.
Pipelined and Parallel Computing Partition for 1 Hongtao Du AICIP Research Nov 3, 2005.
Handle By, S.JENILA AP/IT
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
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.
CS 376 Introduction to Computer Graphics 04 / 13 / 2007 Instructor: Michael Eckmann.
Digital Media Dr. Jim Rowan ITEC 2110 Vector Graphics II.
Electronic visualization laboratory, university of illinois at chicago Sort Last Parallel Rendering for Viewing Extremely Large Data Sets on Tile Displays.
The TOPIX ShareGrid Project Case Study Distributed Rendering with Blender and ShareGrid Cosimo Anglano, Massimo Canonico, Marco Guazzone Distributed Computing.
CS552: Computer Graphics Lecture 36: Ray Tracing.
Computer Graphics: Illumination
Chapter 10: Computer Graphics
Computer Graphics.
Photorealistic Rendering vs. Interactive 3D Graphics
CSc 8820 Advanced Graphics Algorithms
The Graphics Rendering Pipeline
Mike Merchant Nicholas Hilbert
Interactive Computer Graphics
TerraForm3D Plasma Works 3D Engine & USGS Terrain Modeler
© University of Wisconsin, CS559 Fall 2004
Parallel Spectral Renderer
Dr. Jim Rowan ITEC 2110 Vector Graphics II
CSCE 441: Computer Graphics Ray Tracing
Presentation transcript:

Ray Tracing POV Oz Levy Yulia Shnaider

What is Ray Tracing? A method of creating visual art in which a description of an object or scene is mathematically converted into a picture Ray tracing is capable of simulating a wide variety of optical effects, such as reflection and refraction, scattering, and dispersion phenomena

Persistence Of Vision – Ray (POV-Ray) A three dimensional rendering free and open source software The program derives information from an external text file, that contains the description of the scene Scenes in ray tracing are described mathematically by a programmer or may also incorporate data from digital photography

Example for input: To create a scene we will need: objects, light sources, camera The objects are defined mathematically or using an image, several types of cameras, sources of lights Examples for types of light sources: point light, spotlight, cylindrical, spotlight, parallel light, area light, soft shadows

background { blue 1 } camera { location look_at } light_source { color rgb } plane {, -1 pigment { color rgb } } sphere {, 1 texture { pigment { color rgb } finish{ specular 0.6 } } Surface patterns: wrinkles bumps Atmospheric effects: fog, clouds, haze, mist, rainbows and skies Show and hide options: shadows, reflection, no image, no body

Next stage - Rendering Calculating per pixel The algorithm works line by line with an horizontal scan of each pixel The direction of the rays is opposite to the physical direction – no calculations for the rays that will not reach our point of sight

Illustration For each pixel in the image we “shoot” a ray through the pixel until it heats one of the objects, from there we direct rays to all the light sources and use superposition to get the final value for that specific pixel.

Work flow End Parsing Tracing Input file Last line? Output line Video\file Distant shores by Christoph Gerber

A few examples: Norbert Kern for the International Ray Tracing Competition

Still with Bullets by Jaime Vives Piqueres Call of the Wild by Gilles Tran

Glasses by Gilles Tran

Problems and Solutions Motivation to Parallelization Determining the color of each pixel requires a large amount of calculations depending on the complexity of the scene Antialiasing – a method of calculation in which we consider not only basic calculations but also the relationship and compatibility of the pixel to the nearby pixels The algorithm we described enables working in an embarrassingly parallel method

Now that the motivation is cleared… What are we going to talk about now ? Approaches to parallelize Results

Static Partitioning Each node is assigned a section of the line to elaborate They send it to a master processor that, after processing its section, reconstructs the complete line This procedure is repeated up to the last line of the image

This approach assumes that all processors are similar… In fact a line is completed only when the slowest processor finishes the computation of its section while the faster processors remain idle Wasting useful time of elaboration…

Second Approach The load of each process is dynamically balanced More work is assigned to the faster processes In this way we try to find a solution to the slower process limitation, optimizing the use of each processor

Each line of the image is now divided into a number of sections greater than the number of the available processes Initially each processor is assigned a single section of the line to be computed Here, the master process does not have any section to elaborate. It has the task to assign a new section to the first process that end its work The procedure is iterated, also in this case, line after line

Disadvantages… In antialiasing approach, each slave has to know the complete line previously elaborated and some information concerning the antialiasing of the same line (all this is sent from the master) Getting complicated…

Tests and Results The examples have been tested on: ◦ The distributed architecture ParMa2 ( composed of four Dual Pentium II 450 MHz interconnected by a 100Mbit/s switched Fast Ethernet network, forming an 8- processor system) ◦ A commercial multiprocessor machine: SGI Onix2 (with 8 R MHz processors).

:FOR THE STATIC PARTITIONING - Linear speedup -The best time is obtained with ParMa2.

:FOR THE DYNAMIC - speedup and performances are better for the Onix2

Additional aspects to Parallel Computing Divide by frames (in video, animation) Divide by areas in the image (depends on optical/graphical parameters) “Superposition” of two light sources..

REFERENCES 1) MPIPOV: a Parallel Implementation of POV-Ray Based on MPI Alessandro Fava1, Emanuele Fava1, and Massimo Bertozzi21 Dipartimento di Ingegneria Industriale, Universit`a di Parma Parco Area delle Scienze 181/A, I Parma, Italy 2) Dipartimento di Ingegneria dell’Informazione, Universit`a di Parma Parco Area delle Scienze 181/A, I Parma, Italy 3) Wikipedia

Thank you for listening. Any questions ?