Save this PDF as:

Size: px
Start display at page:

## Transcription

3

4

5

6

7 Physics

8 Bidirectional Reflectance Distribution Function (BRDF) f r (ω i,ω ) = dl(ω ) L(ω i )cosθ i dω i = dl(ω ) L(ω i )( ω i n)dω i n: Surface normal L: Radiance ( intensity along a ray ) θ i ω

9 Light Events Reflection Refraction Bidirectional Reflectance Distribution Function (BRDF) Bidirectional transmittance Distribution Function (BTDF) Bidirectional Scattering Distribution Function (BSDF) Scattering Scattering Function

10 Rendering Equation Given any point xin a large environment, let L(x, ω) be the radiance along a ray, we have: f r (ω i,ω ) = dl(ω ) L(ω i )( ω i n)dω i L(x,ω ) = L e (x,ω ) + f r ( x,ω i,ω )L(x,ω i )( ω i n)dω i Ω Le: Emitted intensity (light source) Ω: A hemisphere over x θ i ω

11 Light Transport The rendering equation describes a light transport problem: Each point has an integral equation. Light can be reflected multiple times, so those integral equations are highly related. Solution: global illumination. Methods: ray tracing, radiosity.

12 Example: Caustics

13 Example: Color Bleeding

14 OpenGL Illumination Unfortunately, OpenGL doesn t support global illumination. Instead, it only considers local illumination: light can only be reflected once. Even for local illumination, OpenGL is not physically based. It only provides an approximation. To accurately get multiple reflections, you need to better rendering algorithms. You can approximate some global illumination effects using GPU programmable shaders.

15 OpenGL Illumination Light sources Surface material properties Surface normal Incoming (light) and outgoing (eye) directions

16 Point Light Source GLfloat light_position[] = {1.0, 1.0, 1.0}; gllightfv(gl_light0, GL_POSITION, light_position);

17 Directional Light Source GLfloat light_position[] = {1.0, 1.0, 1.0, 0.0}; gllightfv(gl_light0, GL_POSITION, light_position);

18 Spot Light Source GLfloat light_position[] = {1.0, 1.0, 1.0}; gllightfv(gl_light0, GL_POSITION, light_position); Glfloat spot_position[] = {1.0, 1.0, 1.0}; gllightfv(gl_light0, GL_SPOT_DIRECTION, spot_position); Glfloat EXPONENT=10; gllightfv(gl_light0, GL_SPOT_EXPONENT, EXPONENT); Glfloat cutoff=30; gllightfv(gl_light0, GL_SPOT_CUTOFF, cutoff);

19 OpenGL Light Intensity OpenGL separates surface reflection into three components: Ambient Diffuse Specular Total Therefore, you should define three light intensities. Each of them contributes to a reflection component: Ambient Diffuse Specular

20 OpenGL Light Source //To specify the light position and intensity Glfloat LightPosition []={100, 0.0, 100}; Glfloat LightAmbient []={0.2, 0.2, 0.2}; Glfloat LightDiffuse []={1.0, 1.0, 1.0}; Glfloat LightSpecular []={0.4, 0.4, 0.4}; gllightfv(gl_light1, GL_POSITION, LightPosition); gllightfv(gl_light1, GL_AMBIENT, LightAmbient); gllightfv(gl_light1, GL_DIFFUSE, LightDiffuse); gllightfv(gl_light1, GL_SPECULAR, LightSpecular);

21 OpenGL Light Source For a point light source, the light intensity drops when the light moves away from the source. So OpenGL multiplies the intensity with an attenuation factor: attenuation = 1 A constant + da linear + d 2 A quadratic gllightf(gl_light0, GL_CONSTANT_ATTENUATION, 2.0); gllightf(gl_light0, GL_LINEAR_ATTENUATION, 1.0); gllightf(gl_light0, GL_QUADRATIC_ATTENUATION, 0.5);

22 Default Values No ambient Unit diffuse Unit specular Directional light along z No spot light No attenuation

23 Multiple Light Sources //Specify the position and properties for GL_LIGHT0 glenable(gl_light0); //Specify the position and properties for GL_LIGHT1 glenable(gl_light1); //Create other light sources here. glenable(gl_lighting); //You can turn on and off lights like this: gldisable(gl_light0); glenable(gl_light0); gldisable(gl_lighting); glenable(gl_lighting);

24 OpenGL Light Source The light source is subject to the MODELVIEW matrix as well. You can create the light source in the eye space, so it always attached to the camera. You can create the light source after camera motion, so it is fixed in the world space. You can even apply extra transformation/animation to light source.

25 OpenGL Material OpenGL separates surface reflection into three components: Ambient Diffuse Specular Total Therefore, you should define three material properties. Each of them contributes to a reflection component: Ambient Diffuse Specular

26 Ambient Reflection Ambient Light L ambient = I ambient K ambient Ambient Radiance (Pixel Intensity) Ambient Surface Material Coefficient The object will have a uniform color. It looks similar to the result without lighting. The color is not directly assigned. It s controlled by the light source and surface reflection coefficient.

27 Diffuse Reflection Diffuse reflection assumes that the light is equally reflected in every direction. In other words, if the light source and the object has fixed positions in the world space, the camera motion doesn t affect the appearance of the object. The reflection only depends on the incoming direction. It is independent of the outgoing (viewing) direction. Real objects with only a diffuse reflection property are called: Lambertian Surfaces, for example, clay.

28 Diffuse Reflection Lambert s law says that the outgoing radiance depends on the cosine of the incident angle. Because the irradiance (photons per unit surface area) becomes smaller (as in the rendering function before). da da θ i da da/cosθ i

29 Diffuse Reflection Diffuse Light L diffuse = I diffuse K diffuse cosθ i Diffuse Radiance Diffuse Surface Material Coefficient θ i Brighter Darker

30 An Example Kdiffuse Kambient

31 Specular Reflection Some materials, such as plastic and metal, can have shiny highlight spots. This is due to a glossy mirrorlike reflection. Materials have different shininess/glossiness.

32 Specular Reflection For a mirror, the light is reflected into a single direction. θ i N θ i Specular reflection assumes that the glossy surface is not even, so the light is reflected into a small cone. N If your viewing direction is close to the mirror direction, you receive high radiance. θ i ϕ

33 Specular Reflection Given L, N and V, we first calculate the mirror reflection direction: R=2(L N)N-L Then we have: L specular = I specular K specular cos n φ ϕ is the angle between V and R. cosφ = V R n indicates surface shininess. L θ i N ϕ V R

34 An Example K specular Shininess n

35 Total Reflection Illumination from a single light source i: L ambient = I ambient K ambient L diffuse = I diffuse K diffuse cosθ i L specular = I specular K specular cos n φ i L total i = L ambient i + L diffuse i + L specular Illumination from multiple light source: 0 L total = L globalamibient + L total 1 + L total 2 + L total +L

36 OpenGL Material OpenGL defines material properties like this: glmaterialfv("face, "property, value ) Face: GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK Property: GL_AMBIENT, GL_DIFFUSE, Value: A vector array

37 For Example Glfloat mat_amb_diff[]={1.0, 0.5, 0.8, 10.0}; Glfloat mat_specular[]={1.0, 1.0, 1.0, 1.0}; Glfloat shiniess []={5.0}; glmaterialfv(gl_front, GL_AMBIENT_AND_DIFFUSE, mat_amb_diff); glmaterialfv(gl_front, GL_SPECULAR, mat_specular); glmaterialfv(gl_front, GL_SHININESS, shininess); Specular highlights are usually in the light source s color. Ambient and diffuse can be defined together or separately. If you don t mind dark shadow, just ignore ambient. Shininess is from 0 (dull) to 128 (shiny).

38 Light Model gllightmodelfv(property, value); Enable two sided lighting Property=GL_LIGHT_MODEL_TWO_SIDE If value=0, only GL_FRONT is rendered; If value=1, both GL_FRONT and GL_BACK are rendered Global ambient color Property=GL_LIGHT_MODEL_AMBIENT Value is a color array And more

39 Surface Normal Normals are used in calculating reflection. Normals are also used to decide the surface front and back side. (x, y, z) It s normal is normalized(x, y, z) E 20 =V 2 -V 0 N = E 10 E 20 E 10 E 20 V 2 V 0 E 10 =V 1 -V 0 V 1

40 Surface Normal We can define a triangle normal for the whole triangle. The result is a surface made of triangles. for(int i=0; i<t_number; i++) { glnormal3f( ); glbegin(gl_triangles); glvertex3f( ); glvertex3f( ); glvertex3f( ); glend(); }

41 Surface Normal But the mesh represents a smooth surface. We define a normal for each vertex, by taking the normalized average of its adjacent triangle normals. for(int i=0; i<t_number; i++) { glbegin(gl_triangles); glnormal3f( ); //XN0 glvertex3f( ); //X0 glnormal3f( ); //XN1 glvertex3f( ); //X1 glnormal3f( ); //XN2 glvertex3f( ); //X2 glend(); }

42 Lighting and Shading Each pixel corresponds to a visible 3D point. We need to calculate the pixel intensity for that 3D point, based on the reflection model. Given a 2D Pixel Location Inverse Projection Selection Ray Intersection Test A 3D point on a primitive Reflection Calculation Ray Tracing Given a 3D primitive Projection A 2D primitive Rasterization ti A number of pixels The Graphics Pipeline

43 Lighting and Shading OpenGL does reflection calculation only for each vertex (unless using GPU shaders). Given a 3D primitive Projection A 2D primitive (with 3D info) Rasterization A number of pixels (with 3D info) Fragment Shader Pixels with intensities OpenGL + GPU Given a 3D polygon Lighting A 3D polygon, with intensity info Projection A 2D polygon, with intensity info Interpolation/Raserization Pixels with intensities OpenGL

44 OpenGL Shading Now given a 2D polygon with intensity information on each vertex, how to get the value for each pixel? Flat shading Gouraud Shading* Phong Shading* Given a 3D polygon Lighting A 3D polygon, with intensity info Projection A 2D polygon, with intensity info Interpolation/Raserization Pixels with intensities *: Both were proposed by researchers at the University of Utah in 1970s.

45 Flat Shading Flat shading uses one vertex information for the whole primitive. glshademodel(gl_flat) What s the difference? Vertex Normal + Flat Shading Triangle Normal + Smooth Shading

46 Flat Shading VS. Smooth Shading Flat shading has this discontinuous artifact. This is fast, since only needs one calculation per polygon. Only useful when the polygons are very small. Smooth shading avoid the discontinuous artifact. Slower More realistic.

47 Smooth Shading OpenGL uses a smooth Gouraud shading technique. The basic idea is to calculate the color intensity at each vertex, and then interpolate over the polygon. To use smooth shading: glshademodel(gl_smooth) Vertex Normal + Flat Shading Vertex Normal + Smooth Shading

48 Review: Linear Interpolation Given a line segment with two end points (P and Q) and a sample point R, we can interpolate a value function V over the line as: V r = Q R V p + P R V q P Q V p P V r =? R V q Q

49 OpenGL Interpolation OpenGL does 2D interpolation in a scanline way. The result is identical to the interpolation using barycentric coordinates. But the scanline method is faster. Why? For every scanline

50 Gouraud Shading Gouraud shading calculates the color per vertex. It has artifacts too. To solve it, use smaller polygons. dark dark dark dark or bright? dark

51 Phong Shading Instead of interpolating the color (light intensity), Phong shading interpolates surface normals, and then calculates the 3D reflection per 2D pixel. OpenGL doesn t support it, since 3D information needs to be carried through the whole pipeline. GPU supports it. You can use OpenGL shading language (GLSL). It s still under the projection+scanline framework, but its result is comparable to ray tracing. Flat Shading Gouraud Shading Phong Shading

52 Summary The projection+scanline graphics pipeline is also called rasterization based rendering. Examples: OpenGL, Pixar Renderman, GPU Fast, but difficult to handle global illumination Widely used in games Alternatively, ray tracing is based on the inverseprojection+ray intersection framework Examples: POV Ray, new Pixar Renderman, PBRT Slow, but handles global illumination Used for offline rendering, such as movie effects

Illumination and Shading Illumination (Lighting) Model the interaction of light with surface points to determine their final color and brightness OpenGL computes illumination at vertices illumination Shading

### 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 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

### 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

### Three-Dimensional Graphics V. Guoying Zhao 1 / 55

Computer Graphics Three-Dimensional Graphics V Guoying Zhao 1 / 55 Shading Guoying Zhao 2 / 55 Objectives Learn to shade objects so their images appear three-dimensional Introduce the types of light-material

Overview Shading Shading Light-material interactions Phong model Shading polygons Shading in OpenGL Why we need shading Suppose we build a model of a sphere using many polygons and color it with glcolor.

### 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

Fall 2017 CSCI 420: Computer Graphics 5.2 Shading in OpenGL Hao Li http://cs420.hao-li.com 1 Outline Normal Vectors in OpenGL Polygonal Shading Light Sources in OpenGL Material Properties in OpenGL Example:

### 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

### Shading , Fall 2004 Nancy Pollard Mark Tomczak

15-462, Fall 2004 Nancy Pollard Mark Tomczak Shading Shading Concepts Shading Equations Lambertian, Gouraud shading Phong Illumination Model Non-photorealistic rendering [Shirly, Ch. 8] Announcements Written

### Ambient reflection. Jacobs University Visualization and Computer Graphics Lab : Graphics and Visualization 407

Ambient reflection Phong reflection is a local illumination model. It only considers the reflection of light that directly comes from the light source. It does not compute secondary reflection of light

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

Why we need shading? Suppose we build a model of a sphere using many polygons and color it with glcolor. We get something like But we want Light-material interactions cause each point to have a different

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

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

CSE 167: Introduction to Computer Graphics Lecture #8: Lighting Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 Announcements Homework project #4 due Friday, October 28 Introduction:

### 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

Illumination and Shading Illumination (Lighting)! Model the interaction of light with surface points to determine their final color and brightness! The illumination can be computed either at vertices or

### CS 4600 Fall Utah School of Computing

Lighting CS 4600 Fall 2015 Utah School of Computing Objectives Learn to shade objects so their images appear three-dimensional Introduce the types of light-material interactions Build a simple reflection

### 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

### ECS 175 COMPUTER GRAPHICS. Ken Joy.! Winter 2014

ECS 175 COMPUTER GRAPHICS Ken Joy Winter 2014 Shading To be able to model shading, we simplify Uniform Media no scattering of light Opaque Objects No Interreflection Point Light Sources RGB Color (eliminating

### 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

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

### Chapter 7 - Light, Materials, Appearance

Chapter 7 - Light, Materials, Appearance Types of light in nature and in CG Shadows Using lights in CG Illumination models Textures and maps Procedural surface descriptions Literature: E. Angel/D. Shreiner,

### Lights, Colour and Materials In OpenGL

Illumination Models Lights, Colour and Materials In OpenGL Illumination models are used to generate the colour of an object s surface at a given point on that surface. The factors that govern the illumination

### 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

### Illumination and Reflection in OpenGL CS 460/560. Computer Graphics. Shadows. Photo-Realism: Ray Tracing. Binghamton University.

Binghamton University EngiNet State University of New York EngiNet Thomas J. Watson School of Engineering and Applied Science WARNING All rights reserved. No Part of this video lecture series may be reproduced

Reflection and Shading R. J. Renka Department of Computer Science & Engineering University of North Texas 10/19/2015 Light Sources Realistic rendering requires that we model the interaction between light

### 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:

### 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

### Introduction to Computer Graphics. Farhana Bandukwala, PhD Lecture 14: Light Interacting with Surfaces

Introduction to Computer Graphics Farhana Bandukwala, PhD Lecture 14: Light Interacting with Surfaces Outline Computational tools Reflection models Polygon shading Computation tools Surface normals Vector

### Chapter 3. Illumination Models and Surface-Rendering Methods. Department of Computer Science and Engineering

Chapter 3 Illumination Models and Surface-Rendering Methods 3-1 3.1 Overview For a realistic display of a scene the lighting effects should appear naturally. An illumination model, also called a lighting

### Lighting/Shading II. Week 7, Mon Mar 1

University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2010 Tamara Munzner Lighting/Shading II Week 7, Mon Mar 1 http://www.ugrad.cs.ubc.ca/~cs314/vjan2010 News Homework 3 out today Homework

### Objectives. Introduce the OpenGL shading Methods 1) Light and material functions on MV.js 2) per vertex vs per fragment shading 3) Where to carry out

Objectives Introduce the OpenGL shading Methods 1) Light and material functions on MV.js 2) per vertex vs per fragment shading 3) Where to carry out 1 Steps in OpenGL shading Enable shading and select

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

### Topic 9: Lighting & Reflection models 9/10/2016. Spot the differences. Terminology. Two Components of Illumination. Ambient Light Source

Topic 9: Lighting & Reflection models Lighting & reflection The Phong reflection model diffuse component ambient component specular component Spot the differences Terminology Illumination The transport

### OpenGL Lighting Computer Graphics Spring Frank Palermo

OpenGL Lighting 15-462 Computer Graphics Spring 2009 Frank Palermo OpenGL is just a bunch of hacks. -Adrien Treuille What Adrien Means... What Adrien means is that OpenGL was designed to produce reasonable-looking

### Introduction to Computer Graphics 3. Shading

Introduction to Computer Graphics 3. Shading National Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor Textbook: E.Angel, Interactive Computer Graphics, 5 th Ed., Addison Wesley Ref: Hearn and

### Introduction to Computer Graphics 7. Shading

Introduction to Computer Graphics 7. Shading National Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor Textbook: Hearn and Baker, Computer Graphics, 3rd Ed., Prentice Hall Ref: E.Angel, Interactive

### Computer Graphics. Shading. Based on slides by Dianna Xu, Bryn Mawr College

Computer Graphics Shading Based on slides by Dianna Xu, Bryn Mawr College Image Synthesis and Shading Perception of 3D Objects Displays almost always 2 dimensional. Depth cues needed to restore the third

### 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

### 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 II. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

Lighting and Shading II 1 Objectives Continue discussion of shading Introduce modified Phong model Consider computation of required vectors 2 Ambient Light Ambient light is the result of multiple interactions

Illumination & Shading Goals Introduce the types of light-material interactions Build a simple reflection model---the Phong model--- that can be used with real time graphics hardware Why we need Illumination

### Pipeline Operations. CS 4620 Lecture 14

Pipeline Operations CS 4620 Lecture 14 2014 Steve Marschner 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives

### 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

### CS Illumination and Shading. Slide 1

CS 112 - Illumination and Shading Slide 1 Illumination/Lighting Interaction between light and surfaces Physics of optics and thermal radiation Very complex: Light bounces off several surface before reaching

### 03 RENDERING PART TWO

03 RENDERING PART TWO WHAT WE HAVE SO FAR: GEOMETRY AFTER TRANSFORMATION AND SOME BASIC CLIPPING / CULLING TEXTURES AND MAPPING MATERIAL VISUALLY DISTINGUISHES 2 OBJECTS WITH IDENTICAL GEOMETRY FOR NOW,

### CSE 681 Illumination and Phong Shading

CSE 681 Illumination and Phong Shading Physics tells us What is Light? We don t see objects, we see light reflected off of objects Light is a particle and a wave The frequency of light What is Color? Our

### Global Illumination. COMP 575/770 Spring 2013

Global Illumination COMP 575/770 Spring 2013 Final Exam and Projects COMP 575 Final Exam Friday, May 3 4:00 pm COMP 770 (and 575 extra credit) Projects Final report due by end of day, May 1 Presentations:

### 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

### Lighting. Chapter 5. Chapter Objectives. After reading this chapter, you'll be able to do the following:

Chapter 5 Lighting Chapter Objectives After reading this chapter, you'll be able to do the following: Understand how real-world lighting conditions are approximated by OpenGL Render illuminated objects

### 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,

Shaders Oscar 1/43 Apodaca and Gritz, Advanced RenderMan Pixel Color Irradiance measures the power per unit area hitting a pixel E = න L i cos θ i dω i (obtained by integrating an equation form last class)

### 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

### 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

Computer Graphics (Fall 2008) COMS 4160, Lecture 19: Illumination and Shading 2 http://www.cs.columbia.edu/~cs4160 Radiance Power per unit projected area perpendicular to the ray per unit solid angle in

### Computer Graphics. Lecture 10. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura 12/03/15

Computer Graphics Lecture 10 Global Illumination 1: Ray Tracing and Radiosity Taku Komura 1 Rendering techniques Can be classified as Local Illumination techniques Global Illumination techniques Local

### Rendering Light Reflection Models

Rendering Light Reflection Models Visual Imaging in the Electronic Age Donald P. Greenberg October 3, 2017 Lecture #13 Program of Computer Graphics, Cornell University General Electric - 167 Cornell in

### 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?

### The Rasterization Pipeline

Lecture 5: The Rasterization Pipeline Computer Graphics and Imaging UC Berkeley CS184/284A, Spring 2016 What We ve Covered So Far z x y z x y (0, 0) (w, h) Position objects and the camera in the world

### Raytracing CS148 AS3. Due :59pm PDT

Raytracing CS148 AS3 Due 2010-07-25 11:59pm PDT We start our exploration of Rendering - the process of converting a high-level object-based description of scene into an image. We will do this by building

### CS452/552; EE465/505. Intro to Lighting

CS452/552; EE465/505 Intro to Lighting 2-10 15 Outline! Projection Normalization! Introduction to Lighting (and Shading) Read: Angel Chapter 5., sections 5.4-5.7 Parallel Projections Chapter 6, sections

### Computer Graphics. Lecture 13. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura

Computer Graphics Lecture 13 Global Illumination 1: Ray Tracing and Radiosity Taku Komura 1 Rendering techniques Can be classified as Local Illumination techniques Global Illumination techniques Local

### 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

### The Rasterization Pipeline

Lecture 5: The Rasterization Pipeline Computer Graphics and Imaging UC Berkeley What We ve Covered So Far z x y z x y (0, 0) (w, h) Position objects and the camera in the world Compute position of objects

### Graphics and Computation Introduction to OpenGL

433-380 Graphics and Computation Introduction to OpenGL Some images in these slides are taken from The OpenGL Programming Manual, which is copyright Addison Wesley and the OpenGL Architecture Review Board.

### Phong Lighting & Materials. Some slides modified from: David Kabala Others from: Andries Van Damm, Brown Univ.

Phong Lighting & Materials Some slides modified from: David Kabala Others from: Andries Van Damm, Brown Univ. Lighting and Shading Lighting, or illumination, is the process of computing the intensity and

### CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

CMSC427 Advanced shading getting global illumination by local methods Credit: slides Prof. Zwicker Topics Shadows Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection

### Introduction to OpenGL Transformations, Viewing and Lighting. Ali Bigdelou

Introduction to OpenGL Transformations, Viewing and Lighting Ali Bigdelou Modeling From Points to Polygonal Objects Vertices (points) are positioned in the virtual 3D scene Connect points to form polygons

### Classic Rendering Pipeline

CS580: Classic Rendering Pipeline Sung-Eui Yoon ( 윤성의 ) Course URL: http://sglab.kaist.ac.kr/~sungeui/gcg/ Course Objectives Understand classic rendering pipeline Just high-level concepts, not all the

### API for creating a display window and using keyboard/mouse interations. See RayWindow.cpp to see how these are used for Assignment3

OpenGL Introduction Introduction OpenGL OpenGL is an API for computer graphics. Hardware-independent Windowing or getting input is not included in the API Low-level Only knows about triangles (kind of,

### CGT520 Lighting. Lighting. T-vertices. Normal vector. Color of an object can be specified 1) Explicitly as a color buffer

CGT520 Lighting Lighting Color of an object can be specified 1) Explicitly as a color buffer Bedrich Benes, Ph.D. Purdue University Department of Computer Graphics 2) Implicitly from the illumination model.

### Computer Graphics 1. Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2010

Computer Graphics 1 Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering 1 The 3D rendering pipeline (our version for this class) 3D models in model coordinates 3D models in world coordinates 2D Polygons

### How do we draw a picture?

1 How do we draw a picture? Define geometry. Now what? We can draw the edges of the faces. Wireframe. We can only draw the edges of faces that are visible. We can fill in the faces. Giving each object

Last Time? The Traditional Graphics Pipeline Reading for Today A Practical Model for Subsurface Light Transport, Jensen, Marschner, Levoy, & Hanrahan, SIGGRAPH 2001 Participating Media Measuring BRDFs

### 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

### 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

### The Rendering Equation and Path Tracing

The Rendering Equation and Path Tracing Louis Feng April 22, 2004 April 21, 2004 Realistic Image Synthesis (Spring 2004) 1 Topics The rendering equation Original form Meaning of the terms Integration Path

9. Illumination and Shading Approaches for visual realism: - Remove hidden surfaces - Shade visible surfaces and reproduce shadows - Reproduce surface properties Texture Degree of transparency Roughness,

IntMu.Lab5 0. Download all the files available from http://www.dee.isep.ipp.pt/~jml/intmu/lab5: wget http://www.dee.isep.ipp.pt/~jml/intmu/lab5/makefile make getall Analyze the program windmill.c. Compile

### Surface Graphics. 200 polys 1,000 polys 15,000 polys. an empty foot. - a mesh of spline patches:

Surface Graphics Objects are explicitely defined by a surface or boundary representation (explicit inside vs outside) This boundary representation can be given by: - a mesh of polygons: 200 polys 1,000

### Ray-Tracing. Misha Kazhdan

Ray-Tracing Misha Kazhdan Ray-Tracing In graphics, we often represent the surface of a 3D shape by a set of triangles. Goal: Ray-Tracing Take a collection of triangles representing a 3D scene and render

### CHAPTER5. We have learned to build three-dimensional graphical models and to LIGHTING AND SHADING

LIGHTING AND SHADING CHAPTER5 We have learned to build three-dimensional graphical models and to display them. However, if you render one of our models, you might be disappointed to see images that look

### Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Computergrafik Matthias Zwicker Universität Bern Herbst 2016 Today More shading Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection and refraction Toon shading

### Deferred Rendering Due: Wednesday November 15 at 10pm

CMSC 23700 Autumn 2017 Introduction to Computer Graphics Project 4 November 2, 2017 Deferred Rendering Due: Wednesday November 15 at 10pm 1 Summary This assignment uses the same application architecture

### 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

### 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

### Models and Architectures. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Models and Architectures Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico 1 Objectives Learn the basic design of a graphics system Introduce

### Raytracing & Epsilon. Today. Last Time? Forward Ray Tracing. Does Ray Tracing Simulate Physics? Local Illumination

Raytracing & Epsilon intersects light @ t = 25.2 intersects sphere1 @ t = -0.01 & Monte Carlo Ray Tracing intersects sphere1 @ t = 10.6 Solution: advance the ray start position epsilon distance along the

### 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

### 2/1/10. Outline. The Radiance Equation. Light: Flux Equilibrium. Light: Radiant Power. Light: Equation. Radiance. Jan Kautz

Outline Jan Kautz Basic terms in radiometry Radiance Reflectance The operator form of the radiance equation Meaning of the operator form Approximations to the radiance equation 2005 Mel Slater, 2006 Céline

### Review for Ray-tracing Algorithm and Hardware

Review for Ray-tracing Algorithm and Hardware Reporter: 邱敬捷博士候選人 Lan-Da Van ( 范倫達 ), Ph. D. Department of Computer Science National Chiao Tung University Taiwan, R.O.C. Summer, 2017 1 2017/7/26 Outline

### UNIT 7 LIGHTING AND SHADING. 1. Explain phong lighting model. Indicate the advantages and disadvantages. (Jun2012) 10M

UNIT 7 LIGHTING AND SHADING 1. Explain phong lighting model. Indicate the advantages and disadvantages. (Jun2012) 10M Ans: Phong developed a simple model that can be computed rapidly It considers three

### TSBK03 Screen-Space Ambient Occlusion

TSBK03 Screen-Space Ambient Occlusion Joakim Gebart, Jimmy Liikala December 15, 2013 Contents 1 Abstract 1 2 History 2 2.1 Crysis method..................................... 2 3 Chosen method 2 3.1 Algorithm