21
COL859: Advanced Computer Graphics Prem Kalra [email protected] http://www.cse.iitd.ac.in/~pkalra/ col859 Department of Computer Science and Engineering Indian Institute of Technology Delhi

COL859: Advanced Computer Graphics

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: COL859: Advanced Computer Graphics

COL859: Advanced Computer GraphicsPrem Kalra

[email protected]://www.cse.iitd.ac.in/~pkalra/col859

Department of Computer Science and EngineeringIndian Institute of Technology Delhi

Page 2: COL859: Advanced Computer Graphics

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Online PlatformMicrosoft TeamMoodleImpartusCourse webpage

http://www.cse.iitd.ac.in/~pkalra/col859

Time SlotE (10-10:50 AM Tuesday, Wednesday, Friday)

Course Administration

Page 3: COL859: Advanced Computer Graphics

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

EvaluationAssignments (30)

ProgrammingReading

Term Paper Presentation (20)Project (30)Exam (20)

Course Administration

Page 4: COL859: Advanced Computer Graphics

Should have done COL781 (Introduction to Computer Graphics)or its equivalent.

OR Instructors approval

Eligibility

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Page 5: COL859: Advanced Computer Graphics

ModelingParametric curves and surfacesTriangle meshesSubdivision

RenderingGlobal illuminationRendering equationPhysically based rendering

AnimationCharacter animation – Kinematics, SkinningPhysics based animation

Augmented/Virtual Reality

Contents

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

[1] Tabellion, E. “Ray Tracing vs. Point-Based GI for Animated Films”. SIGGRAPH 2010 Course: “Global Illumination Across Industries”.

Page 6: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

• VisibilityWhat objects or parts in the scene are visible?

Clipping (with respect to the view frustum)Done

Occlusion (with respect to the objects in the scene) Hidden surface elimination

• IlluminationReflection, Refraction, Transparency, Shadows, etc.

Issues

Page 7: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Forward Ray TracingModeling interaction of light with the objects/surfaces

Problem:Many rays will not contribute to the image!

Page 8: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Backward Ray Tracing

Rays from camera (viewer) through each pixel to the scene

Page 9: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Backward Ray Tracing

A

B

CE

F

D

View Plane

Viewer

Primary and Secondary Rays

Page 10: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Backward Ray TracingShadow Rays

Visibility check with respect to the light source

Page 11: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Backward Ray TracingShadow Rays

Visibility check with respect to the light source

Page 12: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Ray TracingTwo IssuesRay-object intersection

Visibility test: Closest to the viewer

Pixel color determination (shading)Illumination model

Page 13: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Ray TracingTwo Issues

A

B

CE

F

D

View Plane

Viewer

Light

Page 14: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Ray Object Intersection

Ro

Rd

0

1][][

222

>+=

=++==

t tRRR(t)Form Parametric

ZYXDirection) (Ray Z Y XROrigin) (Ray Z Y XR

do

ddd

dddd

oooo

Center Sc = [ Xc Yc Zc ] Radius SrSurface Point [ Xs Ys Zs ]

2222 )()()( rcscscs SZZYYXX =-+-+-

Implicit FormSphereRay

2222 )()()( rcdocdocdo SZtZZYtYYXtXX =-++-++-+

Solve for t

Page 15: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Illumination Model

å=

•+•+=

•+•+=++=

++=

m

i

niisiidaa

nlsldaa

nlsldaa

total

VRIkNLIkIk

VRIkNLIkIkαIkθIkIk

reflection specular reflection diffuse reflection ambientI

1)()(

)()(coscos

NL q q

R

Va

Page 16: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Recursive Ray Tracing

A

B

CE

F

D

View Plane

Eyeeye-ray

R1

T1

R2

T2

Page 17: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Recursive Ray TracingEye

C

DR1 T1

R2 T2

Different Rays

Eye ray (primary ray)

Reflected rayTransmitted rayShadow ray

(secondary rays)

Page 18: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Recursive Ray TracingReflected Ray

NL

Rqrqi L

N

R

-L

NNL )(2 •

LNNLR -•= )(2

Recall Reflection Vector

Page 19: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Recursive Ray TracingRefracted Ray

Snell’s Law

i

t

t

i

ηη

θθ

=sinsin

NθNθIηηT

Nθθ

NθIθT

NθMθTθ

NθIM

tit

i

ti

it

tt

i

i

)(cos))(cos(

)(cossin

))(cos(sin)(cos)(sin

sin)(cos

-+=

-+

=

-=

+=N

qt

qiI

T

Nθi )(cos

M

Page 20: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Recursive Ray Tracing

When to stop ?

When ray leaves the sceneWhen the contribution to the overall intensity is small

Page 21: COL859: Advanced Computer Graphics

Recap: Ray Tracing

Advanced Computer Graphics http://www.cse.iitd.ac.in/~pkalra/col859

Recursive Ray Tracing