02/04/03 Page 1 Rendering Visibility Lighting Texturing.

Slides:



Advertisements
Similar presentations
16.1 Si23_03 SI23 Introduction to Computer Graphics Lecture 16 – Some Special Rendering Effects.
Advertisements

COMPUTER GRAPHICS SOFTWARE.
Graphics Pipeline.
1 Graphics CSCI 343, Fall 2013 Lecture 18 Lighting and Shading.
Computer graphics & visualization Global Illumination Effects.
Lecture 14 Illumination II – Global Models
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
1 Computer Graphics Chapter 9 Rendering. [9]-2RM Rendering Three dimensional object rendering is the set of collective processes which make the object.
 Engineering Graphics & Introductory Design 3D Graphics and Rendering REU Modeling Course – June 13 th 2014.
Light Issues in Computer Graphics Presented by Saleema Amershi.
1. What is Lighting? 2 Example 1. Find the cubic polynomial or that passes through the four points and satisfies 1.As a photon Metal Insulator.
Based on slides created by Edward Angel
1 Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 Shading I.
Chapter 6: Vertices to Fragments Part 2 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
CGDD 4003 THE MASSIVE FIELD OF COMPUTER GRAPHICS.
(conventional Cartesian reference system)
X86 and 3D graphics. Quick Intro to 3D Graphics Glossary: –Vertex – point in 3D space –Triangle – 3 connected vertices –Object – list of triangles that.
Skin Rendering GPU Graphics Gary J. Katz University of Pennsylvania CIS 665 Adapted from David Gosselin’s Power Point and article, Real-time skin rendering,
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
1 CSCE 641: Computer Graphics Lighting Jinxiang Chai.
Status – Week 277 Victor Moya.
7M836 Animation & Rendering
IAT 3551 Computer Graphics Overview Color Displays Drawing Pipeline.
Coordinate Systems X Y Z (conventional Cartesian reference system) X Y Z.
Part I: Basics of Computer Graphics Rendering Polygonal Objects (Read Chapter 1 of Advanced Animation and Rendering Techniques) Chapter
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Shading I Ed Angel Professor of Computer Science, Electrical and Computer Engineering,
Introduction to 3D Graphics John E. Laird. Basic Issues u Given a internal model of a 3D world, with textures and light sources how do you project it.
CS 480/680 Computer Graphics Shading I Dr. Frederick C Harris, Jr.
Fundamentals of Computer Graphics Part 6 Shading prof.ing.Václav Skala, CSc. University of West Bohemia Plzeň, Czech Republic ©2002 Prepared with Angel,E.:
CS 445 / 645: Introductory Computer Graphics
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
Lecture 5: 3D Rendering Pipeline (II) Prof. Hsien-Hsin Sean Lee School of Electrical and Computer Engineering Georgia Institute of Technology.
University of Illinois at Chicago Electronic Visualization Laboratory (EVL) CS 426 Intro to 3D Computer Graphics © 2003, 2004, 2005 Jason Leigh Electronic.
Computer Graphics Panos Trahanias ΗΥ358 Spring 2009.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Week 2 - Friday.  What did we talk about last time?  Graphics rendering pipeline  Geometry Stage.
Rendering Overview CSE 3541 Matt Boggus. Rendering Algorithmically generating a 2D image from 3D models Raster graphics.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Computer Graphics The Rendering Pipeline - Review CO2409 Computer Graphics Week 15.
Programming 3D Applications CE Displaying Computer Graphics Week 3 Lecture 5 Bob Hobbs Faculty of Computing, Engineering and Technology Staffordshire.
CS 325 Introduction to Computer Graphics 03 / 24 / 2010 Instructor: Michael Eckmann.
1Computer Graphics Implementation II Lecture 16 John Shearer Culture Lab – space 2
Implementation II Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
Implementation II.
Mark Nelson 3d projections Fall 2013
Illumination and Shading
CS 325 Introduction to Computer Graphics 03 / 29 / 2010 Instructor: Michael Eckmann.
Global Illumination. Local Illumination  the GPU pipeline is designed for local illumination  only the surface data at the visible point is needed to.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
Computer Graphics I, Fall 2010 Implementation II.
Honours Graphics 2008 Session 5. Today’s focus Rasterization Visibility determination Coarse / fine visibility determination.
Illumination and Shading Prof. Lizhuang Ma Shanghai Jiao Tong University.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
Computer Graphics One of the central components of three-dimensional graphics has been a basic system that renders objects represented by a set of polygons.
Revision Sheet Computer Graphics and Human Interaction By Dr. HANY ELSALAMONY1.
CS552: Computer Graphics Lecture 33: Illumination and Shading.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
Computer Graphics Ken-Yi Lee National Taiwan University (the slides are adapted from Bing-Yi Chen and Yung-Yu Chuang)
Computer Graphics: Illumination
Computer Graphics Overview
The Graphics Rendering Pipeline
Chapter 14 Shading Models.
CSCE 441: Computer Graphics Hidden Surface Removal
Lighting.
UMBC Graphics for Games
CSCE 441: Computer Graphics Ray Tracing
Chapter 14 Shading Models.
Presentation transcript:

02/04/03 Page 1 Rendering Visibility Lighting Texturing

02/04/03 Page 2 1. Application/Scene –Description of the contents of the 3D world –Object Visibility Check including possible Occlusion Culling 2. Geometry –Transforms (rotation, translation, scaling) –Transform from Model Space to View Space –View Projection –Trivial Accept/Reject Culling –Transform to Clip Space –Clipping –Transform to Screen Space 3. Triangle Setup –Back-face Culling (or can be done in view space before lighting) –Scan-Line Conversion 4. Rendering / Rasterization –Shading –Texturing –Fog –Alpha Translucency Tests –Depth Buffering –Z-buffer Pipeline

02/04/03 Page 3 CPU vs. GPU From Move Object and Camera (AI, Realistic Physics) CPU Scene Level Calculations, High order surface tessellation CPU GPU TransformsCPU GPU LightingCPU GPU Triangle Setup and ClippingCPU GPU Rendering Graphics Processor GPU

02/04/03 Page 4 Visibility Object Visibility Tests / Occlusion Tests Bounding boxes –Approximate objects for quick tests Area occluded by bounding box of A A Note that B is not fully occluded by object A B

02/04/03 Page 5 Visibility Object Visibility Tests / Occlusion Tests QuadTrees –Partition space

02/04/03 Page 6 Visibility Object Visibility Tests / Occlusion Tests QuadTrees/OctTrees –Partition 3D space

02/04/03 Page 7 Visibility Object Visibility Tests / Occlusion Tests QuadTrees/OctTrees/BSP –Partition space to create a binary tree

02/04/03 Page 8 Visibility Object Visibility Tests / Occlusion Tests Portals

02/04/03 Page 9 View Space Near Clipping Plane Far Clipping Plane View Frustum View point Polygon clipping

02/04/03 Page 10 Shading models Simple model has 3 basic elements –Diffuse (direct reflection) –Ambient (reflected and scattered light from the environment) –Specular (highlights from surface) Notes –not physically-based and inaccurate –nevertheless, a decent approximation –fast to compute

02/04/03 Page 11 Shading models Diffuse (Lambertian) Reflection –Dull, matte surfaces –Viewer position independent –Dependent on position and intensity of source Reflection is product of light ray L and surface normal N Light (I p ) N L N L N L But this doesn’t look very good … lighting is too harsh (See this example)example I = I p k d (N L) ( k d is coeff. of diffusion )

02/04/03 Page 12 Ambient Light So we add ambient light –Constant term –Crude approximation of light scattering in scene –Independent of object, light, or viewer position From I = I a k a + I p k d (N L)

02/04/03 Page 13 Specular Reflection To get more accurate and model highlights off the surface, we add specular reflection. This adds reflection proportional to cos n α I = I a k a C a + I p [k d C d (N L) + k s C s (R V)] (C is object color) Light (I p ) N L R V Reflected ray To viewer

02/04/03 Page 14 Shininess: 0 Shininess Strength: 0 Shininess: 0 Shininess Strength: 33 Shininess: 33 Shininess Strength: 66 Shininess: 66 Shininess Strength: 100 Shininess: 100 Shininess Strength: 100 From Specular coefficients

02/04/03 Page 15 All together Note: mach banding in Gouraud FlatGouraudPhong

02/04/03 Page 16 Ambient Point sources Directional lights (infinite source) Spot lights Area lights Local lights Lights X

02/04/03 Page 17 Texture uv coordinates 0,1 1,1 0,01,0 0,11,1 1,0 0,0

02/04/03 Page 18 From Gamedev.net Mip Mapping R GB R GB R GB

02/04/03 Page 19 Multi passes Provides application of “textures” to texttures Quake III uses 10 passes: –(passes 1 - 4: accumulate bump map) –pass 5: diffuse lighting –pass 6: base texture (with specular component) –(pass 7: specular lighting) –(pass 8: emissive lighting) –(pass 9: volumetric/atmospheric effects) –(pass 10: screen flashes) (From: Brian Hook, course 29 notes at SIGGRAPH '98)

02/04/03 Page 20 Bump Mapping

02/04/03 Page 21 Reflection and refraction From Snell’s Law : ir 1 *sin ( 1 ) = ir 2 *sin ( 2 )

02/04/03 Page 22 Environment Mapping Environment mapped onto cube, then projected onto object

02/04/03 Page 23 Light mapping X = From Pre-computed “texture map” Simulates light sources

02/04/03 Page 24 Alpha blending FinalColor = SourcePixelColor * SourceBlendFactor + DestPixelColor * DestBlendFactor From

02/04/03 Page 25 Z buffer Each pixel in the buffer contains the distance from the viewpoint of the object rendered at that pixel If the next object to be drawn at that pixel is further then the value at the pixel, then don’t write the pixel. Note: ATI Radeon’s Hierarchal Z-buffering

02/04/03 Page 26 Reading 3D pipeline tutorial