Top Banner
Project Raytracing
33

Project Raytracing

Jan 23, 2016

Download

Documents

Tamar

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 - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Project Raytracing

Project Raytracing

Page 2: Project Raytracing

Content• Goals• Idea of Raytracing• Ray Casting

– Therory– Practice

• Raytracing– Theory– Light model– Practice

• Output images• Conclusion

Page 3: Project Raytracing

SpecificationsRay 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

Page 4: Project Raytracing

Main principleCreate 3D pictures

Mathematical equation

Throw ray from eye to pixels

Not FROM source light: TO it

Number of reflections

Great pictures but slow

Page 5: Project Raytracing

AlgorithmsRay casting

- first method

- no bounce

Ray tracing

- from eye to pixels

- reflection

- refraction

- shadow

Page 6: Project Raytracing

Fields of useAnimation studio

Pixar: with parsimony

→ light effects

Video games

→ with triangles

→ faster and great

Page 7: Project Raytracing

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

Page 8: Project Raytracing

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

Page 9: Project Raytracing

Ray casting

Page 10: Project Raytracing

Our Ray Caster

Page 11: Project Raytracing

From Ray Casting to Ray Tracing

Page 12: Project Raytracing

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

Page 13: Project Raytracing

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

=

Page 14: Project Raytracing

Ambient and Diffuse

The coefficient is specific for a material

Page 15: Project Raytracing

Specular

Page 16: Project Raytracing

Shadows• Only add diffuse and

specular light, if a lightsource is visible

• Test for intersections between a point on the sphere and the lightsource

Page 17: Project Raytracing

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

Page 18: Project Raytracing
Page 19: Project Raytracing
Page 20: Project Raytracing
Page 21: Project Raytracing
Page 22: Project Raytracing
Page 23: Project Raytracing
Page 24: Project Raytracing
Page 25: Project Raytracing

Video link 1

Page 26: Project Raytracing

Video link 2

Page 27: Project Raytracing

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

Page 28: Project Raytracing
Page 29: Project Raytracing

Difficulties

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

Page 30: Project Raytracing

Achievements

Light effectsAnimation renderingDifferent shapesAntialiasing

Page 31: Project Raytracing

ImprovementsRefraction and transparencyTextures and noiseDepth of FieldImage mappingBounding VolumeRadiometry (power, energy, radiance...)Photon mapping

Page 32: Project Raytracing

Thanks!

Thank you for your attention!

Page 33: Project Raytracing

Questions?