Phong Lighting & Materials. Some slides modified from: David Kabala Others from: Andries Van Damm, Brown Univ.
|
|
- Beverley Stewart
- 5 years ago
- Views:
Transcription
1 Phong Lighting & Materials Some slides modified from: David Kabala Others from: Andries Van Damm, Brown Univ.
2 Lighting and Shading Lighting, or illumination, is the process of computing the intensity and color of a sample point in a scene as seen by a viewer lighting depends on the geometry of the scene the models, the lights and the camera positions & orientations the surface orientations and the surface material properties
3 Lighting and Shading Shading is the process of interpolation of color at points inbetween those with known lighting, typically vertices of triangles or quads in a mesh crucial to real time graphics applications (e.g., games) because calculating illumination at a point is usually expensive. Slow but good: ray-tracing computes lighting for all pixel samples Each pixel combines one or more sub-pixel sample for antialiasing, but no shading! On the GPU systems we use with WebGL, the vertex shader usually computes lighting for each vertex, the fragment shader computes shading for eacy pixel
4 Global Illumination Direct illumination + Indirect illumination = Total illumination
5 Diffuse Interreflection Total illumination (normal image)
6 Diffuse Interreflection Direct illumination
7 Diffuse Interreflection Indirect illumination (diffuse interreflection)
8 Human face Total illumination (normal image)
9 Human face Direct illumination
10 Human face Indirect illumination
11 How to separate direct and indirect components (1/3) Use a high frequency illumination pattern For example a checkerboard pattern of lit and unlit patches Each patch i that is not directly illuminated by the pattern should be lit due only to indirect illumination This gives an estimate for indirect illumination on patch i Algorithm Attribution: S. Nayar, G. Krishnan, M. Grossberg, and R. Raskar. Fast Separation of Direct and Global Components of a Scene using High Frequency Illumination, SIGGRAPH of 56
12 Illumination Models: Phong Simple model (not physically based) Splits illumination at a surface into three components Ambient Non-specific constant global lighting (hack) Diffuse Color of object under normal conditions using Lambert s model Specular Highlights on shiny objects (hack) Proportional to R V α so a larger α results in a more concentrated highlight and glossier object October 31, of 56
13 Flat Shading one lighting calc per Triangle One computed RGB color for all vertices & all pixels Vertex Shader: can just ignore color Fragment Shader sets gl_fragcolor from a constant, or from a uniform variable
14 Gouraud Shading ( Goorr-Rowe ) one lighting calc per Vertex For each vertex, compute on-screen RGB color For each pixel, bilinearly interpolate on-screen RGB color: Vertex Shader computes a varying color variable (from vertex attributes &/or uniform vars) Fragment Shader gets a rasterized varying color value uses it to set gl_fragcolor Faceted specular highlights
15 Why? Flat vs Gouraud shading Flat Gouraud
16 Phong Shading One lighting calc per Pixel For each vertex, compute lighting vectors (Norm,Light,View) For each pixel, bilinearly interpolate vectors, compute lighting, set color Vertex Shader computes varying lighting vectors (from vertex attributes &/or uniform vars) Fragment Shader gets rasterized varying vectors computes gl_fragcolor Smooth specular highlights
17 Goraud vs Phong Shading Phong Lighting Emissive + Ambient + Diffuse + Specular = Computed per VERTEX Computed Per PIXEL 1 7
18 Reflection: Phong Model (see Nate Robins Tutors: Ambient (the lighting inside shadows) + Diffuse (irradiance * albedo) Specular (mirror-like highlights) diffuse specular
19 OpenGL lighting Demos: Nate Robins Tutors Old OpenGL API had built-in Lighting & Materials functions: NOT programmable, yet still instructive: Up to 8 light sources ONLY Phong lighting ONLY (ambient, diffuse, specular, emissive) only Gouraud shading ONLY(per-vertex lighting calcsfaceted highlights) Demo 1: Interactive Light Direction vector L = (Lx, Ly, Lz) (white line shows direction) Demo 2: Phong Parameters: 7 RGB values, all [0,1] + shinyness Material Reflectances: Ke, Ka, Kd, Ks Light-Source Strengths: Ia, Id, Is, Se (specular exponent)
20 Old OpenGL API had built-in Lighting & Materials functions: OpenGL lighting Demos: Nate Robins Tutors NOT programmable, yet still instructive: Up to 8 light sources ONLY Phong lighting ONLY (ambient, diffuse, specular, emissive) only Gouraud shading ONLY (per-vertex lighting calcs faceted highlights) Demo 1: Interactive Light Direction vector L = (Lx, Ly, Lz) (white line shows light direction)
21 Old OpenGL API had built-in Lighting & Materials functions: OpenGL lighting Demos: Nate Robins Tutors NOT programmable, yet still instructive: Up to 8 light sources ONLY Phong lighting ONLY (ambient, diffuse, specular, emissive) only Gouraud shading ONLY (per-vertex lighting calcs faceted highlights) Demo 2: Phong Parameters: 7 RGB values + shinyness 0<Se <100 Light-Source RGB: Ia, Id, Is Material RGB: Ka, Kd, Ks Ke Integer Shinyness or specular exp: 1 Se 100
22 Constant Color at Each Vertex (equal amounts from everywhere to everywhere)
23 Normal == Surface Orientation Perpendicular Vector at any Surface Point More formally: Unit-length vector N at surface point P Vector N defines surface tangent plane at P: ( For all points P T in tangent plane, (P T - P)N = 0 ) Surface Point P Normal Vector N Tangent Vector (P T P) 2D 3D Surface Point P Normal Vector N Tangent Plane
24 diffuse lighting : NL Shown: Light Source at Eye-point) Project B: light-source overhead
25 Transforming Normals We KNOW how to transform vertex positions. Can we transform Normal Vectors with the same matrix? ALMOST always, but not always! non-uniform scaling? (stretched robot arm, etc)
26 Transforming Normals We KNOW how to transform vertex positions. Can we transform Normal Vectors with the same matrix? ALMOST always yes, but not always: thus the answer is NO. we need a special normal transform matrix because non-uniform scaling of shapes (stretched robot arm, etc) distorts these normals:
27 Transforming Normals SOLUTION: use inverse-transpose: Normal Matrix == (Model Matrix) -T Why? see: tutorial/the-normal-matrix/ or Canvas, Project B, How To Transform Normals How? cuon-matrix-quat.js functions
28 Transforming Normals: Why is M -T correct? Normal Vector n Any tangent vector v normal vector == perpendicular ()to surface tangent plane Any transform matrix M applied to the surface applies to the tangent plane too. Any vector v in the tangent plane is to n, thus nv = 0, or equivalently: n T v = 0 REVIEW: For any non-singular matrix M we can find an inverse M -1 that cancels it: M -1 M = I Transpose lets us multiply column vector v and matrix A in either order: Av = v T A T Expand n T v = 0 with the do-nothing identity matrix: n T M -1 Mv = 0 Associate each matrix with its neighbor: (n T M -1 )(Mv) = 0 and then look closely: (Mv) == Any and all transformed tangent-plane vectors (n T M -1 ) == The transformed normal vector guaranteed to all the tangent-plane vectors Rearrange transformed normal vector using transpose: (n T M -1 ) = (M -1 ) T n = M -T n
29 WebGL: Vertex Position Pipeline RECALL: in scene graphs, Vertices & values move upwards, transform calls move downwards CVV HTML-5 Canvas Viewport Project A: Draw world directly in CVV Project B: Add viewport, projection, view World CAM View Projection View Matrix Projection Matrix t0 t1 group1 t2 Model Matrix group4 t7 group3... t3 group2 t4 obj1 obj5 obj2 group3 29
30 WebGL: Vertex Position Pipeline RECALL: in scene graphs, Vertices & values move upwards, transform calls move downwards CVV HTML-5 Canvas Viewport Project A: Draw world directly in CVV Project B: Add viewport, projection, view Project C: Normals: in World coords normal matrix == model -T Compute all lighting values in World coordinate system Light Positions group4 World t1 t7 CAM t0 group1 group3... View t2 Projection t3 View Matrix group2 t4 Projection Matrix Normal Matrix Model Matrix obj1 obj5 obj2 group3 30
31 Vertex Stream Our WebGL Vertex Pipeline gl.modelview gl.projection model sssssss s transfm view trnsfm projection transformation transformation divide: x/w, y/w, z/w 4D 3D HTML-5 Canvas The CVV clipping ViewPort transformation gl.viewport(llx, lly width,height) (in pixels) 31
32 Vertex Stream Light Positions n Our WebGL Vertex Pipeline gl.modelview model + model view + view transformation transformation Project C: World coord.system Normal Matrix (modelview -T ) CAM coord. system gl.projection projection transformation Lighting Calcs: Vertex Shader Fragment Shader Compute lighting in WORLD coordinate system (e.g. find NL, find R vector, etc). View: transform from World to CAM (How? apply View matrix in modelview) Normals: from Object to World normal matrix == modelview -T divide: x/w, y/w, z/w 4D 3D The CVV clipping ViewPort transform HTML-5 CANVAS onscreen 32
33 Phong Lighting Step 1: Find Scene Vectors To find On-Screen RGB Color at point P (start): 1) Find all 3D scene vectors first: a) Light Vector L: unit vector towards light source b) Normal Vector N: unit vector perpendicular to surface at P c) View Vector V: unit vector towards camera eye-point On to step 2: how do we find the Reflected-light Vector R?
34 Phong Lighting Step 2: Find reflection Vector R To find On-Screen RGB Color at point P (cont d): L N R i i 2) COMPUTE the Light Reflection Vector R: Given unit light vector L, find lengthened normal C C = N (LN) In diagram, if we add vector 2*(C-L) to L vector we get R vector. Simplify: R = 2C L Result: unit-length R vector GLSL-ES See built-in reflect() function (If N is a unit-length vector, then R vector length matches L vector length)
35 Phong Lighting Step 3: Gather Light & Material Data To find On-Screen RGB Color at point P (cont d): 3) For each light source, gather: RGB triplet for Ambient Illumination Ia 0 Iar, Iag, Iab 1 RGB triplet for Diffuse Illumination Id 0 Idr, Idg, Idb 1 RGB triplet for Specular Illumination Is 0 Isr, Isg, Isb 1 For each surface material, gather: RGB triplet for Ambient Reflectance Ka 0 Kar, Kag, Kab 1 RGB triplet for Diffuse Reflectance Kd 0 Kdr, Kdg, Kdb 1 RGB triplet for Specular Reflectance Ks 0 Kar, Kag, Kab 1 RGB triplet for Emissive term(often zero) Ke 0 Ker, Keg, Keb 1 Scalar shinyness or specular exponent term Se 1 Se ~100
36 Phong Lighting Step 4: Sum of Light Amounts To find On-Screen RGB Color at point P (cont d): sum of each kind of light at P: Phong Lighting = Ambient + Diffuse + Specular + Emissive SUMMED for all light sources 4) For the i-th light source, find: RGB= Ke + Ia*Ka + Id*Kd*Att*max(0,(N L)) Is*Ks*Att*(max(0,R V)) Se, // emissive material; it glows! // ambient light * ambient reflectance // diffuse light * diffuse reflectance // specular light * specular reflectance Distance Attenuation scalar: 0 Att 1 Fast, OK-looking default value: Att = 1.0 Physically correct value: Att(d) = 1/(distance to light) 2 (too dark too fast!) Faster, Nice-looking Hack : Att(d) = 1/(distance to light) OpenGL compromise: Att(d) = min(1, 1/(c1 + c2*d + c3*d 2 ) ) Shinyness or specular exponent 1 Se ~100 (large for sharp, small highlights)
37 Light Transport: Inverse Square Law Amount of light that illuminates an object decreases with square of distance between them. Why? For a given 3D angle (solid angle), the area it covers grows with the square of the distance 37
38 !END!
Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11
Pipeline Operations CS 4620 Lecture 11 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives to pixels RASTERIZATION
More informationIllumination and 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
More informationPipeline 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
More informationECS 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
More informationCS5620 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
More informationComputer Graphics (CS 543) Lecture 7b: Intro to lighting, Shading and Materials + Phong Lighting Model
Computer Graphics (CS 543) Lecture 7b: Intro to lighting, Shading and Materials + Phong Lighting Model Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Why do we need Lighting
More informationToday. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models
Computergrafik Thomas Buchberger, Matthias Zwicker Universität Bern Herbst 2008 Today Introduction Local shading models Light sources strategies Compute interaction of light with surfaces Requires simulation
More informationComputer Graphics (CS 4731) Lecture 16: Lighting, Shading and Materials (Part 1)
Computer Graphics (CS 4731) Lecture 16: Lighting, Shading and Materials (Part 1) Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Why do we need Lighting & shading? Sphere
More informationIllumination Models & Shading
Illumination Models & Shading Lighting vs. Shading Lighting Interaction between materials and light sources Physics Shading Determining the color of a pixel Computer Graphics ZBuffer(Scene) PutColor(x,y,Col(P));
More informationw Foley, Section16.1 Reading
Shading w Foley, Section16.1 Reading Introduction So far, we ve talked exclusively about geometry. w What is the shape of an object? w How do I place it in a virtual 3D space? w How do I know which pixels
More informationToday. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models
Computergrafik Matthias Zwicker Universität Bern Herbst 2009 Today Introduction Local shading models Light sources strategies Compute interaction of light with surfaces Requires simulation of physics Global
More informationComputer 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
More informationCPSC 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
More informationIllumination & Shading I
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
More informationLecture 17: Shading in OpenGL. CITS3003 Graphics & Animation
Lecture 17: Shading in OpenGL CITS3003 Graphics & Animation E. Angel and D. Shreiner: Interactive Computer Graphics 6E Addison-Wesley 2012 Objectives Introduce the OpenGL shading methods - per vertex shading
More informationIllumination in Computer Graphics
Illumination in Computer Graphics Ann McNamara Illumination in Computer Graphics Definition of light sources. Analysis of interaction between light and objects in a scene. Rendering images that are faithful
More informationCSE 167: Introduction to Computer Graphics Lecture #7: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2015
CSE 167: Introduction to Computer Graphics Lecture #7: Lights Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2015 Announcements Thursday in-class: Midterm Can include material
More informationOpenGL 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
More informationPipeline Operations. CS 4620 Lecture 10
Pipeline Operations CS 4620 Lecture 10 2008 Steve Marschner 1 Hidden surface elimination Goal is to figure out which color to make the pixels based on what s in front of what. Hidden surface elimination
More informationLIGHTING AND 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
More informationCSE 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:
More informationVirtual Cameras & Their Matrices
Virtual Cameras & Their Matrices J.Tumblin-Modified, highly edited SLIDES from: Ed Angel Professor Emeritus of Computer Science University of New Mexico 1 What is Projection? Any operation that reduces
More informationObjectives Shading in OpenGL. Front and Back Faces. OpenGL shading. Introduce the OpenGL shading methods. Discuss polygonal shading
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
More informationVirtual Reality for Human Computer Interaction
Virtual Reality for Human Computer Interaction Appearance: Lighting Representation of Light and Color Do we need to represent all I! to represent a color C(I)? No we can approximate using a three-color
More informationVisualisatie BMT. Rendering. Arjan Kok
Visualisatie BMT Rendering Arjan Kok a.j.f.kok@tue.nl 1 Lecture overview Color Rendering Illumination 2 Visualization pipeline Raw Data Data Enrichment/Enhancement Derived Data Visualization Mapping Abstract
More informationTopic 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
More informationComputer Graphics. Illumination and Shading
Rendering Pipeline modelling of geometry transformation into world coordinates placement of cameras and light sources transformation into camera coordinates backface culling projection clipping w.r.t.
More informationCS 130 Final. Fall 2015
CS 130 Final Fall 2015 Name Student ID Signature You may not ask any questions during the test. If you believe that there is something wrong with a question, write down what you think the question is trying
More informationCS 4620 Program 3: Pipeline
CS 4620 Program 3: Pipeline out: Wednesday 14 October 2009 due: Friday 30 October 2009 1 Introduction In this assignment, you will implement several types of shading in a simple software graphics pipeline.
More informationThe 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
More informationIllumination Model. The governing principles for computing the. Apply the lighting model at a set of points across the entire surface.
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
More informationReading. Shading. An abundance of photons. Introduction. Required: Angel , 6.5, Optional: Angel 6.4 OpenGL red book, chapter 5.
Reading Required: Angel 6.1-6.3, 6.5, 6.7-6.8 Optional: Shading Angel 6.4 OpenGL red book, chapter 5. 1 2 Introduction An abundance of photons So far, we ve talked exclusively about geometry. Properly
More informationTopic 9: Lighting & Reflection models. Lighting & reflection The Phong reflection model diffuse component ambient component specular component
Topic 9: Lighting & Reflection models Lighting & reflection The Phong reflection model diffuse component ambient component specular component Spot the differences Terminology Illumination The transport
More informationCS 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
More informationShading and Illumination
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ω
More informationLighting 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
More informationIllumination and Shading
CT4510: Computer Graphics Illumination and Shading BOCHANG MOON Photorealism The ultimate goal of rendering is to produce photo realistic images. i.e., rendered images should be indistinguishable from
More informationIllumination and Shading
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
More informationOrthogonal 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
More informationUniversity of Victoria CSC 305 Shading. Brian Wyvill 2016
University of Victoria CSC 305 Shading Brian Wyvill 2016 The illuminating Hemisphere Energy and Intensity Energy is the intensity integrated over the solid angle through which it acts. Intensity is not
More informationLets 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
More informationCPSC / Illumination and Shading
CPSC 599.64 / 601.64 Rendering Pipeline usually in one step modelling of geometry transformation into world coordinate system placement of cameras and light sources transformation into camera coordinate
More informationCSE 167: Introduction to Computer Graphics Lecture #6: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014
CSE 167: Introduction to Computer Graphics Lecture #6: Lights Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014 Announcements Project 2 due Friday, Oct. 24 th Midterm Exam
More informationCS 4731: Computer Graphics Lecture 16: Phong Illumination and Shading. Emmanuel Agu
CS 4731: Computer Graphics Lecture 16: Phong Illumination and Shading Emmanuel Agu Recall: Setting Light Property Define colors and position a light GLfloat light_ambient[] = {0.0, 0.0, 0.0, 1.0}; GLfloat
More informationOpenGl Pipeline. triangles, lines, points, images. Per-vertex ops. Primitive assembly. Texturing. Rasterization. Per-fragment ops.
OpenGl Pipeline Individual Vertices Transformed Vertices Commands Processor Per-vertex ops Primitive assembly triangles, lines, points, images Primitives Fragments Rasterization Texturing Per-fragment
More informationCSE 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:
More informationRecollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows
Recollection Models Pixels Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows Can be computed in different stages 1 So far we came to Geometry model 3 Surface
More informationCEng 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
More informationIntroduction 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
More informationCSE 167: Introduction to Computer Graphics Lecture #6: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016
CSE 167: Introduction to Computer Graphics Lecture #6: Lights Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 Announcements Thursday in class: midterm #1 Closed book Material
More informationIllumination. The slides combine material from Andy van Dam, Spike Hughes, Travis Webb and Lyn Fong
INTRODUCTION TO COMPUTER GRAPHIC S Illumination The slides combine material from Andy van Dam, Spike Hughes, Travis Webb and Lyn Fong Andries van Dam October 29, 2009 Illumination Models 1/30 Outline Physical
More informationReflection and Shading
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
More informationCHAPTER 1 Graphics Systems and Models 3
?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........
More informationLighting and Shading
Lighting and Shading Today: Local Illumination Solving the rendering equation is too expensive First do local illumination Then hack in reflections and shadows Local Shading: Notation light intensity in,
More informationCGT520 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.
More information-=Bui Tuong Phong's Lighting=- University of Utah, but with shaders. Anton Gerdelan Trinity College Dublin
-=Bui Tuong Phong's Lighting=- University of Utah, 1973 but with shaders Anton Gerdelan Trinity College Dublin Before we do anything - normals Q. What does a normal do? Q. How do we usually calculate them?
More informationObjectives. Introduce Phong model Introduce modified Phong model Consider computation of required vectors Discuss polygonal shading.
Shading II 1 Objectives Introduce Phong model Introduce modified Phong model Consider computation of required vectors Discuss polygonal shading Flat Smooth Gouraud 2 Phong Lighting Model A simple model
More informationCMSC427 Shading Intro. Credit: slides from Dr. Zwicker
CMSC427 Shading Intro Credit: slides from Dr. Zwicker 2 Today Shading Introduction Radiometry & BRDFs Local shading models Light sources Shading strategies Shading Compute interaction of light with surfaces
More informationModels and Architectures
Models and Architectures Objectives Learn the basic design of a graphics system Introduce graphics pipeline architecture Examine software components for an interactive graphics system 1 Image Formation
More informationLecture 15: Shading-I. CITS3003 Graphics & Animation
Lecture 15: Shading-I CITS3003 Graphics & Animation E. Angel and D. Shreiner: Interactive Computer Graphics 6E Addison-Wesley 2012 Objectives Learn that with appropriate shading so objects appear as threedimensional
More informationShading 1: basics Christian Miller CS Fall 2011
Shading 1: basics Christian Miller CS 354 - Fall 2011 Picking colors Shading is finding the right color for a pixel This color depends on several factors: The material of the surface itself The color and
More informationLighting 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
More informationCS452/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
More informationSimple Lighting/Illumination Models
Simple Lighting/Illumination Models Scene rendered using direct lighting only Photograph Scene rendered using a physically-based global illumination model with manual tuning of colors (Frederic Drago and
More informationIntroduction to Visualization and Computer Graphics
Introduction to Visualization and Computer Graphics DH2320, Fall 2015 Prof. Dr. Tino Weinkauf Introduction to Visualization and Computer Graphics Visibility Shading 3D Rendering Geometric Model Color Perspective
More informationReading. Shading. Introduction. An abundance of photons. Required: Angel , Optional: OpenGL red book, chapter 5.
Reading Required: Angel 6.1-6.5, 6.7-6.8 Optional: Shading OpenGL red book, chapter 5. 1 2 Introduction So far, we ve talked exclusively about geometry. What is the shape of an obect? How do I place it
More informationsurface: reflectance transparency, opacity, translucency orientation illumination: location intensity wavelength point-source, diffuse source
walters@buffalo.edu CSE 480/580 Lecture 18 Slide 1 Illumination and Shading Light reflected from nonluminous objects depends on: surface: reflectance transparency, opacity, translucency orientation illumination:
More informationCS 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
More informationIntroduction 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
More informationMach band effect. The Mach band effect increases the visual unpleasant representation of curved surface using flat shading.
Mach band effect The Mach band effect increases the visual unpleasant representation of curved surface using flat shading. A B 320322: Graphics and Visualization 456 Mach band effect The Mach band effect
More informationComp 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
More informationInterpolation 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
More informationProblem Set 4 Part 1 CMSC 427 Distributed: Thursday, November 1, 2007 Due: Tuesday, November 20, 2007
Problem Set 4 Part 1 CMSC 427 Distributed: Thursday, November 1, 2007 Due: Tuesday, November 20, 2007 Programming For this assignment you will write a simple ray tracer. It will be written in C++ without
More informationComputer Graphics (CS 543) Lecture 8a: Per-Vertex lighting, Shading and Per-Fragment lighting
Computer Graphics (CS 543) Lecture 8a: Per-Vertex lighting, Shading and Per-Fragment lighting Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Computation of Vectors To calculate
More informationIllumination and Shading
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
More informationComputergrafik. Matthias Zwicker. Herbst 2010
Computergrafik Matthias Zwicker Universität Bern Herbst 2010 Today Bump mapping Shadows Shadow mapping Shadow mapping in OpenGL Bump mapping Surface detail is often the result of small perturbations in
More informationHow 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
More informationCS 354R: Computer Game Technology
CS 354R: Computer Game Technology Texture and Environment Maps Fall 2018 Texture Mapping Problem: colors, normals, etc. are only specified at vertices How do we add detail between vertices without incurring
More informationCS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions. The Midterm Exam was given in class on Thursday, October 23, 2008.
CS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions The Midterm Exam was given in class on Thursday, October 23, 2008. 1. [4 pts] Drawing Where? Your instructor says that objects should always be
More informationLocal Illumination physics. Law of reflection and Snell s law of refraction
Local Illumination physics Law of reflection and Snell s law of refraction What are we trying to model? Surface Proof of Lambert s cosine law n db da Computing R All vectors unit length!! The effect
More informationLighting. To do. Course Outline. This Lecture. Continue to work on ray programming assignment Start thinking about final project
To do Continue to work on ray programming assignment Start thinking about final project Lighting Course Outline 3D Graphics Pipeline Modeling (Creating 3D Geometry) Mesh; modeling; sampling; Interaction
More informationMethodology 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
More informationHomework #2. Shading, Ray Tracing, and Texture Mapping
Computer Graphics Prof. Brian Curless CSE 457 Spring 2000 Homework #2 Shading, Ray Tracing, and Texture Mapping Prepared by: Doug Johnson, Maya Widyasari, and Brian Curless Assigned: Monday, May 8, 2000
More informationINF3320 Computer Graphics and Discrete Geometry
INF3320 Computer Graphics and Discrete Geometry Visual appearance Christopher Dyken and Martin Reimers 23.09.2009 Page 1 Visual appearance Real Time Rendering: Chapter 5 Light Sources and materials Shading
More informationComputer Graphics with OpenGL ES (J. Han) Chapter 6 Fragment shader
Computer Graphics with OpenGL ES (J. Han) Chapter 6 Fragment shader Vertex and Fragment Shaders The inputs to the fragment shader Varyings: The per-vertex output variables produced by the vertex shader
More informationShading. Brian Curless CSE 457 Spring 2017
Shading Brian Curless CSE 457 Spring 2017 1 Reading Optional: Angel and Shreiner: chapter 5. Marschner and Shirley: chapter 10, chapter 17. Further reading: OpenGL red book, chapter 5. 2 Basic 3D graphics
More informationCS Computer Graphics: Illumination and Shading I
CS 543 - Computer Graphics: Illumination and Shading I by Robert W. Lindeman gogo@wpi.edu (with help from Emmanuel Agu ;-) Illumination and Shading Problem: Model light/surface point interactions to determine
More informationCS Computer Graphics: Illumination and Shading I
CS 543 - Computer Graphics: Illumination and Shading I by Robert W. Lindeman gogo@wpi.edu (with help from Emmanuel Agu ;-) Illumination and Shading Problem: Model light/surface point interactions to determine
More informationComputer 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
More informationIllumination & Shading: Part 1
Illumination & Shading: Part 1 Light Sources Empirical Illumination Shading Local vs Global Illumination Lecture 10 Comp 236 Spring 2005 Computer Graphics Jargon: Illumination Models Illumination - the
More informationIntroduction Rasterization Z-buffering Shading. Graphics 2012/2013, 4th quarter. Lecture 09: graphics pipeline (rasterization and shading)
Lecture 9 Graphics pipeline (rasterization and shading) Graphics pipeline - part 1 (recap) Perspective projection by matrix multiplication: x pixel y pixel z canonical 1 x = M vpm per M cam y z 1 This
More informationRendering. Illumination Model. Wireframe rendering simple, ambiguous Color filling flat without any 3D information
llumination Model Wireframe rendering simple, ambiguous Color filling flat without any 3D information Requires modeling interaction of light with the object/surface to have a different color (shade in
More informationSung-Eui Yoon ( 윤성의 )
CS380: Computer Graphics Illumination and Shading Sung-Eui Yoon ( 윤성의 ) Course URL: http://sglab.kaist.ac.kr/~sungeui/cg/ Course Objectives (Ch. 10) Know how to consider lights during rendering models
More informationComputer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping
Computer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Shadow Buffer Theory Observation:
More informationhttps://ilearn.marist.edu/xsl-portal/tool/d4e4fd3a-a3...
Assessment Preview - This is an example student view of this assessment done Exam 2 Part 1 of 5 - Modern Graphics Pipeline Question 1 of 27 Match each stage in the graphics pipeline with a description
More informationShading, 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
More informationCSE 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,
More informationSpring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley
Spring 2012 Final CS184 - Foundations of Computer Graphics University of California at Berkeley Write your name HERE: Write your login HERE: Closed book. You may not use any notes or printed/electronic
More informationC O M P U T E R G R A P H I C S. Computer Graphics. Three-Dimensional Graphics V. Guoying Zhao 1 / 65
Computer Graphics Three-Dimensional Graphics V Guoying Zhao 1 / 65 Shading Guoying Zhao 2 / 65 Objectives Learn to shade objects so their images appear three-dimensional Introduce the types of light-material
More informationInteractive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL
International Edition Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL Sixth Edition Edward Angel Dave Shreiner Interactive Computer Graphics: A Top-Down Approach with Shader-Based
More information