# Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Computergrafik Matthias Zwicker Universität Bern Herbst 2016

2 Today More shading Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection and refraction Toon shading 2

3 More realistic illumination In real world, at each point in scene light arrives from all directions Not just from point light sources Environment maps Store omni-directional illumination as images Each pixel corresponds to light from a certain direction 3

4 Capturing environment maps 360 degrees panoramic image Instead of 360 degrees panoramic image, take picture of mirror ball (light probe) Light probes [Paul Debevec, 4

5 Environment maps as light sources Simplifying assumption Assume light captured by environment map is emitted infinitely far away Environment map consists of directional light sources Value of environment map is defined for each direction, independent of position in scene Use single environment map as light source at all locations in the scene Approximation! 5

6 Environment maps as light sources How do you compute shading of a diffuse surface using an environment map? What is more expensive to compute, shading a diffuse or a specular surface? 6

7 Environment maps applications Use environment map as light source Global illumination [Sloan et al.] Reflection mapping 7

8 Sphere & cube maps Store incident light on sphere or on six faces of a cube Elevation q const. North pole q=90 South pole q=-90 Elevation, azimuthal angle Spherical map Cube map 8

9 Cube maps in OpenGL Application setup Load, bind a cube environment map glbindtexture(gl_texture_cube_map, ); // the six cube faces glteximage2d(gl_texture_cube_map_positive_x, ); glteximage2d(gl_texture_cube_map_negative_x, ); glteximage2d(gl_texture_cube_map_positive_y, ); glenable(gl_texture_cube_map); More details OpenGL Shading Language, Randi Rost OpenGL Superbible, Sellers et al. Online tutorials 9

10 Cube maps in OpenGL Look-up Given direction (x,y,z) Largest coordinate component determines cube map face Dividing by magnitude of largest component yields coordinates within face Look-up function built into GLSL Use (x,y,z) direction as texture coordinates to samplercube 10

11 Environment map data Also called light probes Tool for high dynamic range data (HDR) Pre-rendered light probes for games Light probes ( 11

12 Today More shading Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection and refraction Toon shading 12

13 Reflection mapping Simulate mirror reflection Compute reflection vector at each pixel using view direction and surface normal Use reflection vector to look up cube map Rendering cube map itself is optional Reflection mapping 13

14 Reflection mapping in GLSL Vertex shader Compute viewing direction for each vertex Reflection direction Use GLSL built-in reflect function Pass reflection direction to fragment shader Fragment shader Look-up cube map using interpolated reflection direction in float3 refl; uniform samplercube envmap; texture(envmap, refl); 14

15 Reflection mapping examples Approximation, reflections are not accurate [NVidia] 15

16 Today More shading Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection and refraction Toon shading 16

17 Shading using environment map Assumption: distant lighting Incident light is a function of direction, but not position Realistic shading requires Take into account light from all directions Include occlusion Illumination from environment Same environment map for both points Illumination is a function of direction, but not position 17

18 Mathematical model Assume Lambertian (diffuse) material, BRDF k d Ignore occlusion for now Illumination from point light sources Illumination from environment map using hemispherical integral Directions w Hemisphere of directions W Environment map, radiance from each direction c(w) 18

19 Irradiance environment maps Precompute irradiance as a function of normal Store as irradiance environment map Shading computation at render time Depends only on normal, not position Environment map Irradiance map 19

20 Irradiance environment maps Directional light Environment illumination Images from 20

21 Implementation Precompute irradiance map from environment HDRShop tool, diffuse convolution At render time, look up irradiance map using surface normal When object rotates, rotate normal accordingly Can also approximate glossy reflection Blur environment map less heavily Look up blurred environment map using reflection vector 21

22 Today More shading Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection and refraction Toon shading 22

23 Including occlusion At each point, environment is partially occluded by geometry Add light only from un-occluded directions Visualization of un-occluded directions 23

24 Including occlusion Visibility function V x (w) Binary function of direction w Indicates if environment is occluded Depends on position x V x0 =1 V x1 =0 x0 x1 Environment map V x0 =0 Visibility functions V x1 =1 24

25 Mathematical model V x =1 Diffuse illumination with visibility Ambient occlusion V x =0 Fraction of environment that is not occluded from a point x Scalar value Approximation: diffuse shading given by irradiance weighted by ambient occlusion 25

26 Ambient occlusion Ambient occlusion Diffuse shading Ambient occlusion combined (using multiplication) with diffuse shading 26

27 Implementation Precomputation (off-line, before rendering) Compute ambient occlusion on a per-vertex basis Using ray tracing Free tool that saves meshes with per-vertex ambient occlusion Caution Basic pre-computed ambient occlusion does not work for animated objects 27

28 Shading integral Ambient occlusion with irradiance environment maps is crude approximation to general shading integral BRDF for (non-diffuse) material Incident directions w i Reflected radiance c(w o ) Hemisphere W Outgoing direction w o 28

29 Shading integral Accurate evaluation is expensive to compute Requires numerical integration Many tricks for more accurate and general approximation than ambient occlusion and irradiance environment maps exist Spherical harmonics shading 29

30 Note Visually interesting results using combination (sum) of diffuse shading with ambient occlusion and reflection mapping Diffuse shading with ambient occlusion Reflection mapping Combination (sum) 30

31 Today More shading Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection and refraction Toon shading 31

32 Reflection & refraction 32

33 Refraction Light rays that travel from one medium to an other are bent To the viewer, object at location x appears to be at location y air water 33

34 Index of refraction Speed of light depends on medium Speed of light in vacuum c Speed of light in medium v Index of refraction n=c/v Air Water 1.33 Acrylic glass 1.49 Change in phase velocity leads to bending of light rays air water 34

35 Snell s law Ratio of sines of angle of incidence q 1 and refraction q 2 is equal to opposite ratio of indices of refraction n 1, n 2 Vector form in 3D Viewing, refracted direction v, r Normal vector n 35

36 Total internal reflection Angle of refracted ray Critical angle If we get, refracted ray is parallel to interface If we have total internal reflection (light ray does not cross interface between media) 36

37 Fresnel equations When light travels from one medium to an other, both reflection and refraction may occur Fresnel equations describe fraction of intensity of light that is reflected and refracted Depend on polarization of light (R s, R p in plots) 37

38 Fresnel equations Fresnel equations are relatively complex to evaluate In graphics, often use Schlick s approximation Ratio F between reflected and refracted light Indices of refraction n 1, n 2 38

39 Implementation Accurate implementation requires ray tracing For interactive graphics, approximation using environment maps Use reflected and refracted rays to look up environment map Use Fresnel equations to determine fraction of reflected and refracted light Does not take into account geometry after first bounce (i.e., surface intersection) Assumes illumination is infinitely far away 39

40 Vertex shader const float Eta = 0.67; // Ratio of indices of refraction (air -> glass) const float FresnelPower = 10.0; // Controls degree of reflectivity at grazing angles const float F = ((1.0 - Eta) * (1.0 - Eta)) / ((1.0 + Eta) * (1.0 + Eta)); varying vec3 Reflect; varying vec3 Refract; varying float Ratio; void main(void) { vec4 ecposition = gl_modelviewmatrix * gl_vertex; vec3 ecposition3 = ecposition.xyz / ecposition.w; CAUTION: need to update this for OpenGL 3 compliance vec3 i = normalize(ecposition3); vec3 n = normalize(gl_normalmatrix * gl_normal); Ratio = F + (1.0 - F) * pow((1.0 - dot(-i, n)), FresnelPower); Refract = refract(i, n, Eta); Refract = vec3(gl_texturematrix[0] * vec4(refract, 1.0)); Reflect = reflect(i, n); Reflect = vec3(gl_texturematrix[0] * vec4(reflect, 1.0)); } gl_position = ftransform(); 40

41 Fragment shader Application needs to set up cube map varying vec3 Reflect; varying vec3 Refract; varying float Ratio; uniform samplercube cubemap; CAUTION: need to update this for OpenGL 3 compliance void main(void) { vec3 refractcolor = vec3 (texturecube(cubemap, Refract)); vec3 reflectcolor = vec3 (texturecube(cubemap, Reflect)); vec3 color = mix(refractcolor, reflectcolor, Ratio); } gl_fragcolor = vec4(color, 1.0); 41

42 Chromatic dispersion Phase velocity (i.e., index of refraction) in many media depends on wavelength/frequency Dispersive media Different colors refract at different angles 42

43 Chromatic dispersion In the context of camera lenses, chromatic aberration Try to use achromatic lenses 43

44 Implementation Approximate dispersion by using three different ratios of indices of refraction for R,G,B channels Glass: 0.65, 0.67, 0.69 Perform separate look-ups for R,G,B channels in environment map 44

45 Today More shading Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection and refraction Toon shading 45

47 Toon shading Silhouette edge detection Compute dot product of viewing direction v and normal n Use 1D texture to define edge ramp uniform sample1d edgeramp; e=texture1d(edgeramp,edge); edgeramp 1 0 edge 47

48 Toon shading Compute diffuse and specular shading Use 1D textures diffuseramp, specularramp to map diffuse and specular shading to colors Final color uniform sampler1d diffuseramp; uniform sampler1d specularramp; c = e * (texture(diffuse,diffuseramp)+ texture(specular,specularramp)); 48

49 Tools Nvidia developer page 49

50 Next time Bump mapping, shadows 50

### COMP environment mapping Mar. 12, r = 2n(n v) v

Rendering mirror surfaces The next texture mapping method assumes we have a mirror surface, or at least a reflectance function that contains a mirror component. Examples might be a car window or hood,

### Computer Graphics. Illumination and Shading

() Illumination and Shading Dr. Ayman Eldeib Lighting So given a 3-D triangle and a 3-D viewpoint, we can set the right pixels But what color should those pixels be? If we re attempting to create a realistic

### CSE 167: Lecture #8: GLSL. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

CSE 167: Introduction to Computer Graphics Lecture #8: GLSL Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 Announcements Homework project #4 due Friday, November 2 nd Introduction:

### So far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources.

11 11.1 Basics So far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources. Global models include incident light that arrives

### Photorealism: Ray Tracing

Photorealism: Ray Tracing Reading Assignment: Chapter 13 Local vs. Global Illumination Local Illumination depends on local object and light sources only Global Illumination at a point can depend on any

### CENG 477 Introduction to Computer Graphics. Ray Tracing: Shading

CENG 477 Introduction to Computer Graphics Ray Tracing: Shading Last Week Until now we learned: How to create the primary rays from the given camera and image plane parameters How to intersect these rays

### CPSC 314 LIGHTING AND SHADING

CPSC 314 LIGHTING AND SHADING UGRAD.CS.UBC.CA/~CS314 slide credits: Mikhail Bessmeltsev et al 1 THE RENDERING PIPELINE Vertices and attributes Vertex Shader Modelview transform Per-vertex attributes Vertex

### Lecture 17: Recursive Ray Tracing. Where is the way where light dwelleth? Job 38:19

Lecture 17: Recursive Ray Tracing Where is the way where light dwelleth? Job 38:19 1. Raster Graphics Typical graphics terminals today are raster displays. A raster display renders a picture scan line

### CS5620 Intro to Computer Graphics

So Far wireframe hidden surfaces Next step 1 2 Light! Need to understand: How lighting works Types of lights Types of surfaces How shading works Shading algorithms What s Missing? Lighting vs. Shading

### Recall: Basic Ray Tracer

1 Recall: Ray Tracing Generate an image by backwards tracing the path of light through pixels on an image plane Simulate the interaction of light with objects Recall: Basic Ray Tracer Trace a primary ray

### Rendering Algorithms: Real-time indirect illumination. Spring 2010 Matthias Zwicker

Rendering Algorithms: Real-time indirect illumination Spring 2010 Matthias Zwicker Today Real-time indirect illumination Ray tracing vs. Rasterization Screen space techniques Visibility & shadows Instant

### Technical Game Development II. Reference: Rost, OpenGL Shading Language, 2nd Ed., AW, 2006 The Orange Book Also take CS 4731 Computer Graphics

Shader Programming Technical Game Development II Professor Charles Rich Computer Science Department rich@wpi.edu Reference: Rost, OpenGL Shading Language, 2nd Ed., AW, 2006 The Orange Book Also take CS

Shading and Illumination OpenGL Shading Without Shading With Shading Physics Bidirectional Reflectance Distribution Function (BRDF) f r (ω i,ω ) = dl(ω ) L(ω i )cosθ i dω i = dl(ω ) L(ω i )( ω i n)dω

### Announcements. Written Assignment 2 out (due March 8) Computer Graphics

Announcements Written Assignment 2 out (due March 8) 1 Advanced Ray Tracing (Recursive) Ray Tracing Antialiasing Motion Blur Distribution Ray Tracing Ray Tracing and Radiosity Assumptions Simple shading

DH2323 DGI15 INTRODUCTION TO COMPUTER GRAPHICS AND INTERACTION LIGHTING AND SHADING Christopher Peters HPCViz, KTH Royal Institute of Technology, Sweden chpeters@kth.se http://kth.academia.edu/christopheredwardpeters

### Introduction to the OpenGL Shading Language

Introduction to the OpenGL Shading Language Randi Rost Director of Developer Relations, 3Dlabs 08-Dec-2005 1 Why use graphics programmability? Graphics hardware has changed radically Fixed functionality

### Ø Sampling Theory" Ø Fourier Analysis Ø Anti-aliasing Ø Supersampling Strategies" Ø The Hall illumination model. Ø Original ray tracing paper

CS 431/636 Advanced Rendering Techniques Ø Dr. David Breen Ø Korman 105D Ø Wednesday 6PM 8:50PM Presentation 6 5/16/12 Questions from ast Time? Ø Sampling Theory" Ø Fourier Analysis Ø Anti-aliasing Ø Supersampling

### Lecture Outline Chapter 26. Physics, 4 th Edition James S. Walker. Copyright 2010 Pearson Education, Inc.

Lecture Outline Chapter 26 Physics, 4 th Edition James S. Walker Chapter 26 Geometrical Optics Units of Chapter 26 The Reflection of Light Forming Images with a Plane Mirror Spherical Mirrors Ray Tracing

Illumination and Shading Computer Graphics COMP 770 (236) Spring 2007 Instructor: Brandon Lloyd 2/14/07 1 From last time Texture mapping overview notation wrapping Perspective-correct interpolation Texture

### Illumination. Illumination CMSC 435/634

Illumination CMSC 435/634 Illumination Interpolation Illumination Illumination Interpolation Illumination Illumination Effect of light on objects Mostly look just at intensity Apply to each color channel

### Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic.

Shading Models There are two main types of rendering that we cover, polygon rendering ray tracing Polygon rendering is used to apply illumination models to polygons, whereas ray tracing applies to arbitrary

### INFOGR Computer Graphics. Jacco Bikker - April-July Lecture 14: Grand Recap. Welcome!

TOTAL INFOGR Computer Graphics Jacco Bikker - April-July 2016 - Lecture 14: Grand Recap Welcome! Lecture 2: Rasters, Vectors, Colors Math: Vectors: magnitude, Pythagoras, linear (in)dependency, normalization,

### Light: Geometric Optics

Light: Geometric Optics 23.1 The Ray Model of Light Light very often travels in straight lines. We represent light using rays, which are straight lines emanating from an object. This is an idealization,

### CSE 167: Lecture #7: Color and Shading. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

CSE 167: Introduction to Computer Graphics Lecture #7: Color and Shading Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 Announcements Homework project #3 due this Friday,

Lessons Learned from HW Shading CS Interactive Computer Graphics Prof. David E. Breen Department of Computer Science Only have an idle() function if something is animated Set idle function to NULL, when

### A Brief Overview of. Global Illumination. Thomas Larsson, Afshin Ameri Mälardalen University

A Brief Overview of Global Illumination Thomas Larsson, Afshin Ameri Mälardalen University 1 What is Global illumination? Global illumination is a general name for realistic rendering algorithms Global

### Lighting and Shading. Slides: Tamar Shinar, Victor Zordon

Lighting and Shading Slides: Tamar Shinar, Victor Zordon Why we need shading Suppose we build a model of a sphere using many polygons and color each the same color. We get something like But we want 2

### Shaders. Slide credit to Prof. Zwicker

Shaders Slide credit to Prof. Zwicker 2 Today Shader programming 3 Complete model Blinn model with several light sources i diffuse specular ambient How is this implemented on the graphics processor (GPU)?

### Interpolation using scanline algorithm

Interpolation using scanline algorithm Idea: Exploit knowledge about already computed color values. Traverse projected triangle top-down using scanline. Compute start and end color value of each pixel

CS 543: Computer Graphics Illumination & Shading I Robert W. Lindeman Associate Professor Interactive Media & Game Development Department of Computer Science Worcester Polytechnic Institute gogo@wpi.edu

### Light: Geometric Optics (Chapter 23)

Light: Geometric Optics (Chapter 23) Units of Chapter 23 The Ray Model of Light Reflection; Image Formed by a Plane Mirror Formation of Images by Spherical Index of Refraction Refraction: Snell s Law 1

### Lecture 7 - Path Tracing

INFOMAGR Advanced Graphics Jacco Bikker - November 2016 - February 2017 Lecture 7 - I x, x = g(x, x ) ε x, x + S ρ x, x, x I x, x dx Welcome! Today s Agenda: Introduction Advanced Graphics 3 Introduction

### Light. Form of Electromagnetic Energy Only part of Electromagnetic Spectrum that we can really see

Light Form of Electromagnetic Energy Only part of Electromagnetic Spectrum that we can really see Facts About Light The speed of light, c, is constant in a vacuum. Light can be: REFLECTED ABSORBED REFRACTED

### Shading, lighting, & BRDF Theory. Cliff Lindsay, PHD

Shading, lighting, & BRDF Theory Cliff Lindsay, PHD Overview of today s lecture BRDF Characteristics Lights in terms of BRDFs Classes of BRDFs Ambient light & Shadows in terms of BRDFs Decomposing Reflection

### Computer Graphics I. Assignment 3

UNIVERSITÄT DES SAARLANDES Dr.-Ing. Hendrik P.A. Lensch Max Planck Institut Informatik Art Tevs (tevs@mpi-inf.mpg.de) Boris Ajdin (bajdin@mpi-inf.mpg.de) Matthias Hullin (hullin@mpi-inf.mpg.de) 12. November

### Precomputed Radiance Transfer: Theory and Practice

1 Precomputed Radiance Transfer: Peter-Pike Sloan Microsoft Jaakko Lehtinen Helsinki Univ. of Techn. & Remedy Entertainment Jan Kautz MIT 2 Introduction Jan Kautz MIT 3 Introduction We see here an example

### Spherical Harmonic Lighting: The Gritty Details Robin Green

Spherical Harmonic Lighting: The Gritty Details Robin Green R&D Programmer Sony Computer Entertainment America What This Talk Is About Advanced Lecture Explicit equations will be shown This talk is one

### OPENGL RENDERING PIPELINE

CPSC 314 03 SHADERS, OPENGL, & JS UGRAD.CS.UBC.CA/~CS314 Textbook: Appendix A* (helpful, but different version of OpenGL) Alla Sheffer Sep 2016 OPENGL RENDERING PIPELINE 1 OPENGL RENDERING PIPELINE Javascript

### C P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE. Mikhail Bessmeltsev

C P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE UGRAD.CS.UBC.C A/~CS314 Mikhail Bessmeltsev 1 WHAT IS RENDERING? Generating image from a 3D scene 2 WHAT IS RENDERING? Generating image

### Radiometry & BRDFs CS295, Spring 2017 Shuang Zhao

Radiometry & BRDFs CS295, Spring 2017 Shuang Zhao Computer Science Department University of California, Irvine CS295, Spring 2017 Shuang Zhao 1 Today s Lecture Radiometry Physics of light BRDFs How materials

### GLSL Introduction. Fu-Chung Huang. Thanks for materials from many other people

GLSL Introduction Fu-Chung Huang Thanks for materials from many other people Programmable Shaders //per vertex inputs from main attribute aposition; attribute anormal; //outputs to frag. program varying

### Computer Graphics. Lecture 9 Environment mapping, Mirroring

Computer Graphics Lecture 9 Environment mapping, Mirroring Today Environment Mapping Introduction Cubic mapping Sphere mapping refractive mapping Mirroring Introduction reflection first stencil buffer

### Lighting and Shading Computer Graphics I Lecture 7. Light Sources Phong Illumination Model Normal Vectors [Angel, Ch

15-462 Computer Graphics I Lecture 7 Lighting and Shading February 12, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/ Light Sources Phong Illumination Model

### Chapter 32 Light: Reflection and Refraction. Copyright 2009 Pearson Education, Inc.

Chapter 32 Light: Reflection and Refraction Units of Chapter 32 The Ray Model of Light Reflection; Image Formation by a Plane Mirror Formation of Images by Spherical Mirrors Index of Refraction Refraction:

### Methodology for Lecture. Importance of Lighting. Outline. Shading Models. Brief primer on Color. Foundations of Computer Graphics (Spring 2010)

Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 11: OpenGL 3 http://inst.eecs.berkeley.edu/~cs184 Methodology for Lecture Lecture deals with lighting (teapot shaded as in HW1) Some Nate

### critical theory Computer Science

Art/Science Shading, Materials, Collaboration Textures Example title Artists In the recommend real world, two the main following: factors determine the appearance of a surface: basic understanding what

### Lecture 22: Basic Image Formation CAP 5415

Lecture 22: Basic Image Formation CAP 5415 Today We've talked about the geometry of scenes and how that affects the image We haven't talked about light yet Today, we will talk about image formation and

### Comp 410/510 Computer Graphics. Spring Shading

Comp 410/510 Computer Graphics Spring 2017 Shading Why we need shading Suppose we build a model of a sphere using many polygons and then color it using a fixed color. We get something like But we rather

### Raycast Rendering Maya 2013

2000 2012 Michael O'Rourke Raycast Rendering Maya 2013 (See also the Intro to Lights and Rendering tutorial for an introduction to the basics of rendering an image) Concept There are several algorithms

### 3D Programming. 3D Programming Concepts. Outline. 3D Concepts. 3D Concepts -- Coordinate Systems. 3D Concepts Displaying 3D Models

3D Programming Concepts Outline 3D Concepts Displaying 3D Models 3D Programming CS 4390 3D Computer 1 2 3D Concepts 3D Model is a 3D simulation of an object. Coordinate Systems 3D Models 3D Shapes 3D Concepts

### Chapter 26 Geometrical Optics

Chapter 26 Geometrical Optics 26.1 The Reflection of Light 26.2 Forming Images With a Plane Mirror 26.3 Spherical Mirrors 26.4 Ray Tracing and the Mirror Equation 26.5 The Refraction of Light 26.6 Ray

### ART 268 3D Computer Graphics Texture Mapping and Rendering. Texture Mapping

ART 268 3D Computer Graphics Texture Mapping and Rendering Texture Mapping Is the way in which a material is wrapped around an object. The default method is UVW mapping (see below). When you drag a material

### Supplement to Lecture 22

Supplement to Lecture 22 Programmable GPUs Programmable Pipelines Introduce programmable pipelines - Vertex shaders - Fragment shaders Introduce shading languages - Needed to describe shaders - RenderMan

### Realtime Shading of Folded Surfaces

Realtime Shading of Folded Surfaces B.Ganster R. Klein M. Sattler R. Sarlette {ganster, rk, sattler, sarlette}@cs.uni-bonn.de University of Bonn Institute of Computer Science II Computer Graphics Römerstrasse

### Chromatic Aberration. CEDEC 2001 Tokyo, Japan

Chromatic Aberration CEDEC 2001 Tokyo, Japan Mark J. Kilgard Graphics Software Engineer NVIDIA Corporation 2 3 Chromatic Aberration Refraction through surfaces can be wave-length dependent Examples: Crystal

### Real-Time Voxelization for Global Illumination

Lecture 26: Real-Time Voxelization for Global Illumination Visual Computing Systems Voxelization to regular grid Input: scene triangles Output: surface information at each voxel in 3D grid - Simple case:

### CIS 536/636 Introduction to Computer Graphics. Kansas State University. CIS 536/636 Introduction to Computer Graphics

2 Lecture Outline Surface Detail 3 of 5: Mappings OpenGL Textures William H. Hsu Department of Computing and Information Sciences, KSU KSOL course pages: http://bit.ly/hgvxlh / http://bit.ly/evizre Public

### CSE 167: Introduction to Computer Graphics Lecture #13: GLSL. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015

CSE 167: Introduction to Computer Graphics Lecture #13: GLSL Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015 Announcements Project 6 due Friday Next Thursday: Midterm #2

Objectives Shading in OpenGL Introduce the OpenGL shading methods - per vertex shading vs per fragment shading - Where to carry out Discuss polygonal shading - Flat - Smooth - Gouraud CITS3003 Graphics

### Global Illumination. Global Illumination. Direct Illumination vs. Global Illumination. Indirect Illumination. Soft Shadows.

CSCI 480 Computer Graphics Lecture 18 Global Illumination BRDFs Raytracing and Radiosity Subsurface Scattering Photon Mapping [Ch. 13.4-13.5] March 28, 2012 Jernej Barbic University of Southern California

### Optics INTRODUCTION DISCUSSION OF PRINCIPLES. Reflection by a Plane Mirror

Optics INTRODUCTION Geometric optics is one of the oldest branches of physics, dealing with the laws of reflection and refraction. Reflection takes place on the surface of an object, and refraction occurs

### GLSL Applications: 2 of 2

Administrivia GLSL Applications: 2 of 2 Patrick Cozzi University of Pennsylvania CIS 565 - Spring 2011 Assignment 2 due today 11:59pm on Blackboard Assignment 3 handed out today Due Wednesday, 02/09 at

### Orthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

Orthogonal Projection Matrices 1 Objectives Derive the projection matrices used for standard orthogonal projections Introduce oblique projections Introduce projection normalization 2 Normalization Rather

### High Dynamic Range Image Texture Mapping based on VRML

High Dynamic Range Image Texture Mapping based on VRML Sung-Ye Kim and Byoung-Tae Choi 3D Graphics Research Team, Virtual Reality Research and Development Department, Computer Software Research Laboratory,

### Indirect Illumination

Indirect Illumination Michael Kazhdan (601.457/657) HB Ch. 14.1, 14.2 FvDFH 16.1, 16.2 Surface Illumination Calculation Multiple light source: 2 Viewer N 1 V I = I E + K A I A + K D N, + K S V, R n I Overview

### Wednesday, 26 January 2005, 14:OO - 17:OO h.

Delft University of Technology Faculty Electrical Engineering, Mathematics, and Computer Science Mekelweg 4, Delft TU Delft Examination for Course IN41 5 1-3D Computer Graphics and Virtual Reality Please

### rendering equation computer graphics rendering equation 2009 fabio pellacini 1

rendering equation computer graphics rendering equation 2009 fabio pellacini 1 physically-based rendering synthesis algorithms that compute images by simulation the physical behavior of light computer

### SAMPLING AND NOISE. Increasing the number of samples per pixel gives an anti-aliased image which better represents the actual scene.

SAMPLING AND NOISE When generating an image, Mantra must determine a color value for each pixel by examining the scene behind the image plane. Mantra achieves this by sending out a number of rays from

### EDAN30 Photorealistic Computer Graphics. Seminar 1, Whitted Ray Tracing (And then some!) Magnus Andersson, PhD student

EDAN30 Photorealistic Computer Graphics Seminar, 203 Whitted Ray Tracing (And then some!) Magnus Andersson, PhD student (magnusa@cs.lth.se) Today s Agenda Structure of Assignments Quick prtracer walkthrough

Illumination and Shading Light sources emit intensity: assigns intensity to each wavelength of light Humans perceive as a colour - navy blue, light green, etc. Exeriments show that there are distinct I

### CEng 477 Introduction to Computer Graphics Fall

Illumination Models and Surface-Rendering Methods CEng 477 Introduction to Computer Graphics Fall 2007 2008 Illumination Models and Surface Rendering Methods In order to achieve realism in computer generated

### Light: Geometric Optics

Light: Geometric Optics The Ray Model of Light Light very often travels in straight lines. We represent light using rays, which are straight lines emanating from an object. This is an idealization, but

### OpenGL shaders and programming models that provide object persistence

OpenGL shaders and programming models that provide object persistence COSC342 Lecture 22 19 May 2016 OpenGL shaders We discussed forms of local illumination in the ray tracing lectures. We also saw that

### CS 5625 Lec 2: Shading Models

CS 5625 Lec 2: Shading Models Kavita Bala Spring 2013 Shading Models Chapter 7 Next few weeks Textures Graphics Pipeline Light Emission To compute images What are the light sources? Light Propagation Fog/Clear?

### Here I ll present a brief summary of the important aspects and then dive into improvements we made on Black Ops II.

We started pursuing Physically Based Shading during Black Ops, details of which I presented at SIGGRAPH 2011, as part of the Advances in Real-Time Rendering course. Here I ll present a brief summary of

### COM337 COMPUTER GRAPHICS Other Topics

COM337 COMPUTER GRAPHICS Other Topics Animation, Surface Details, Global Illumination Kurtuluş Küllü based on the book by Hearn, Baker, and Carithers There are some other important issues and topics that

### Light Sources. Spotlight model

lecture 12 Light Sources sunlight (parallel) Sunny day model : "point source at infinity" - lighting - materials: diffuse, specular, ambient spotlight - shading: Flat vs. Gouraud vs Phong light bulb ambient

### CS GPU and GPGPU Programming Lecture 7: Shading and Compute APIs 1. Markus Hadwiger, KAUST

CS 380 - GPU and GPGPU Programming Lecture 7: Shading and Compute APIs 1 Markus Hadwiger, KAUST Reading Assignment #4 (until Feb. 23) Read (required): Programming Massively Parallel Processors book, Chapter

Using Shaders for Lighting Mike Bailey mjb@cs.oregonstate.edu Lighting Definitions L N R E N = Normal L = Light vector E = Eye vector R = Light reflection vector ER = Eye reflection vector Color = LightColor

### The Making of Seemore WebGL. Will Eastcott, CEO, PlayCanvas

The Making of Seemore WebGL Will Eastcott, CEO, PlayCanvas 1 What is Seemore WebGL? A mobile-first, physically rendered game environment powered by HTML5 and WebGL 2 PlayCanvas: Powering Seemore WebGL

### CS452/552; EE465/505. Lighting & Shading

CS452/552; EE465/505 Lighting & Shading 2-17 15 Outline! More on Lighting and Shading Read: Angel Chapter 6 Lab2: due tonight use ASDW to move a 2D shape around; 1 to center Local Illumination! Approximate

### PHY 112: Light, Color and Vision. Lecture 11. Prof. Clark McGrew Physics D 134. Review for Exam. Lecture 11 PHY 112 Lecture 1

PHY 112: Light, Color and Vision Lecture 11 Prof. Clark McGrew Physics D 134 Review for Exam Lecture 11 PHY 112 Lecture 1 From Last Time Lenses Ray tracing a Convex Lens Announcements The midterm is Thursday

### THEA RENDER ADAPTIVE BSD ENGINE

THEA RENDER ADAPTIVE BSD ENGINE ADAPTIVE (BSD) ENGINE Adaptive (BSD) is the name of the biased engine inside Thea Render. This engine is a biased one (this is why we use the abbreviation "BSD") as it uses

### Levy: Constraint Texture Mapping, SIGGRAPH, CS 148, Summer 2012 Introduction to Computer Graphics and Imaging Justin Solomon

Levy: Constraint Texture Mapping, SIGGRAPH, 2001 CS 148, Summer 2012 Introduction to Computer Graphics and Imaging Justin Solomon Instructor: Justin Solomon Email: justin.solomon@stanford.edu Office: Clark

### PHYSICS. Chapter 34 Lecture FOR SCIENTISTS AND ENGINEERS A STRATEGIC APPROACH 4/E RANDALL D. KNIGHT

PHYSICS FOR SCIENTISTS AND ENGINEERS A STRATEGIC APPROACH 4/E Chapter 34 Lecture RANDALL D. KNIGHT Chapter 34 Ray Optics IN THIS CHAPTER, you will learn about and apply the ray model of light Slide 34-2

### Introduction to 3D Graphics

Graphics Without Polygons Volume Rendering May 11, 2010 So Far Volumetric Rendering Techniques Misc. So Far Extended the Fixed Function Pipeline with a Programmable Pipeline Programming the pipeline is

### Overview: Ray Tracing & The Perspective Projection Pipeline

Overview: Ray Tracing & The Perspective Projection Pipeline Lecture #2 Thursday, August 28 2014 About this Lecture! This is an overview.! Think of it as a quick tour moving fast.! Some parts, e.g. math,

### Surface Reflection Models

Surface Reflection Models Frank Losasso (flosasso@nvidia.com) Introduction One of the fundamental topics in lighting is how the light interacts with the environment. The academic community has researched

### The Law of Reflection

If the surface off which the light is reflected is smooth, then the light undergoes specular reflection (parallel rays will all be reflected in the same directions). If, on the other hand, the surface

### Assignment 3: Path tracing

Assignment 3: Path tracing EDAN30 April 2, 2011 In this assignment you will be asked to extend your ray tracer to support path tracing. In order to pass the assignment you need to complete all tasks. Make

### Adding Spherical Harmonic Lighting to the Sushi Engine. Chris Oat 3D Application Research Group. ATI Research, Inc.

Adding Spherical Harmonic Lighting to the Sushi Engine Chris Oat 3D Application Research Group ATI Research, Inc. Overview Introduction & Motivation Quick Review of PRT Case Study : ATI s demo engine Sushi

### Refraction of Light Finding the Index of Refraction and the Critical Angle

Finding the Index of Refraction and the Critical Angle OBJECTIVE Students will verify the law of refraction for light passing from water into air. Measurements of the angle of incidence and the angle of

### Spherical Harmonic Gradients for Mid-Range Illumination

Eurographics Symposium on Rendering (2004) H. W. Jensen, A. Keller (Editors) Spherical Harmonic Gradients for Mid-Range Illumination Thomas Annen 1 Jan Kautz 2 Frédo Durand 2 Hans-Peter Seidel 1 1 MPI

### Color and Light. CSCI 4229/5229 Computer Graphics Summer 2008

Color and Light CSCI 4229/5229 Computer Graphics Summer 2008 Solar Spectrum Human Trichromatic Color Perception Are A and B the same? Color perception is relative Transmission,Absorption&Reflection Light

### Illumination Models and Surface-Rendering Methods. Chapter 10

Illumination Models and Surface-Rendering Methods Chapter 10 Illumination and Surface- Rendering Given scene specifications object positions, optical properties of the surface, viewer position, viewing