# Polygon Scan Conversion & Shading

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 3D Rendering Pipeline (for direct illumination) Polygon Scan Conversion & Shading Greg Humphreys CS445: Intro Graphics University of Virginia, Fall D Primitives 3D Modeling Coordinates Modeling Transformation Lighting 3D Camera Coordinates Projection Transformation Clipping 2D Screen Coordinates Viewport Transformation 2D Image Coordinates Scan Conversion Image 3D World Coordinates 3D World Coordinates Viewing Transformation 2D Screen Coordinates 2D Image Coordinates Scan Conversion & Shading Overview Scan conversion Figure out which pixels to fill Shading Determine a color for each filled pixel Scan Conversion Render an image of a geometric primitive by setting pixel colors void SetPixel(int x, int y, Color rgba) Example: Filling the inside of a triangle Scan Conversion Render an image of a geometric primitive by setting pixel colors void SetPixel(int x, int y, Color rgba) Example: Filling the inside of a triangle Triangle Scan Conversion Properties of a good algorithm Symmetric Straight edges Antialiased edges No cracks between adjacent primitives MUST BE FAST! P 4 1

2 Triangle Scan Conversion Properties of a good algorithm Symmetric Straight edges Antialiased edges No cracks between adjacent primitives MUST BE FAST! Simple Algorithm Color all pixels inside triangle void ScanTriangle(Triangle T, Color rgba){ for each pixel P at (x,y){ if (Inside(T, P)) SetPixel(x, y, rgba); P 4 Line defines two halfspaces Implicit equation for a line On line: ax + by + c = 0 On right: ax + by + c < 0 On left: ax + by + c > 0 Inside Triangle Test A point is inside a triangle if it is in the positive halfspace of all three boundary lines Triangle vertices are ordered counter-clockwise Point must be on the left side of every boundary line L L 1 P L 3 L 2 Inside Triangle Test Boolean Inside(Triangle T, Point P) { for each boundary line L of T { Scalar d = L.a*P.x + L.b*P.y + L.c; if (d < 0.0) return FALSE; return TRUE; Simple Algorithm What is bad about this algorithm? void ScanTriangle(Triangle T, Color rgba){ for each pixel P at (x,y){ if (Inside(T, P)) SetPixel(x, y, rgba); L 1 L 3 L 2 2

3 Triangle Sweep-Line Algorithm Take advantage of spatial coherence Compute which pixels are inside using horizontal spans Process horizontal spans in scan-line order Take advantage of edge linearity Use edge slopes to update coordinates incrementally dx dy Triangle Sweep-Line Algorithm void ScanTriangle(Triangle T, Color rgba){ for each edge pair { initialize x L, x R ; compute dx L /dy L and dx R /dy R ; for each scanline at y for (int x = x L ; x <= x R ; x++) SetPixel(x, y, rgba); x L += dx L /dy L ; x R += dx R /dy R ; dx L dy L Bresenham s algorithm works the same way, but uses only integer operations! x L x R dx R dy R Polygon Scan Conversion Fill pixels inside a polygon Triangle Quadrilateral Convex Star-shaped Concave Self-intersecting Holes What problems do we encounter with arbitrary polygons? Polygon Scan Conversion Need better test for points inside polygon Triangle method works only for convex polygons L 1 L 5 L 2 L 3 Convex Polygon L 4 L 1 L 5 L 2 L 3A L 4 L 3B Concave Polygon Inside Polygon Rule What is a good rule for which pixels are inside? Inside Polygon Rule Odd-parity rule Any ray from P to infinity crosses odd number of edges Concave Self-Intersecting With Holes Concave Self-Intersecting With Holes 3

4 Polygon Sweep-Line Algorithm Incremental algorithm to find spans, and determine insideness with odd parity rule Takes advantage of scanline coherence Polygon Sweep-Line Algorithm void ScanPolygon(Triangle T, Color rgba){ sort edges by maxy make empty active edge list for each scanline (top-to-bottom) { insert/remove edges from active edge list update x coordinate of every active edge sort active edges by x coordinate for each pair of active edges (left-to-right) SetPixels(x i, x i+1, y, rgba); x L x R Triangle Polygon Hardware Scan Conversion Convert everything into triangles Scan convert the triangles Hardware Antialiasing Supersample pixels Multiple samples per pixel Average subpixel intensities (box filter) Trades intensity resolution for spatial resolution Overview Scan conversion Figure out which pixels to fill Shading Determine a color for each filled pixel Shading How do we choose a color for each filled pixel? Each illumination calculation for a ray from the eyepoint through the view plane provides a radiance sample» How do we choose where to place samples?» How do we filter samples to reconstruct image? Emphasis on methods that can be implemented in hardware Angel Figure

5 Ray Casting Simplest shading approach is to perform independent lighting calculation for every pixel When is this unnecessary? Polygon Shading Can take advantage of spatial coherence Illumination calculations for pixels covered by same primitive are related to each other I = I E + K I A AL n +! ( K D ( N Li + K S ( V Ri ) i I = I E + K I A AL n +! ( K D ( N Li + K S ( V Ri ) i Flat Shading Phong Shading Flat Shading Phong Shading Flat Shading What if a faceted object is illuminated only by directional light sources and is either diffuse or viewed from infinitely far away Flat Shading One illumination calculation per polygon Assign all pixels inside each polygon the same color N I = I E + K I A AL n +! ( K D ( N Li + K S ( V Ri ) i 5

6 Flat Shading Objects look like they are composed of polygons Flat Shading OK for polyhedral objects Not so good for smooth surfaces Phong Shading What if smooth surface is represented by polygonal mesh with a normal at each vertex? Method 1: One lighting calculation per vertex Assign pixels inside polygon by interpolating colors computed at vertices Watt Plate 7 I = I E + K A I AL +!i ( K D ( N Li ) I i + K S (V Ri ) n I i ) Bilinearly interpolate colors at vertices down and across scan lines Smooth shading over adjacent polygons Curved surfaces Illumination highlights Soft shadows Mesh with shared normals at vertices Watt Plate 7 6

7 Produces smoothly shaded polygonal mesh Piecewise linear approximation Need fine mesh to capture subtle lighting effects Flat Shading Phong Shading Flat Shading Phong Shading What if polygonal mesh is too coarse to capture illumination effects in polygon interiors? Phong Shading Method 2: One lighting calculation per pixel Approximate surface normals for points inside polygons by bilinear interpolation of normals from vertices I = I E + K I A AL n +! ( K D ( N Li + K S ( V Ri ) i Phong Shading Bilinearly interpolate surface normals at vertices down and across scan lines Wireframe Flat Gouraud Phong Watt Plate 7 7

8 Shading Issues Problems with interpolated shading: Polygonal silhouettes Perspective distortion Orientation dependence (due to bilinear interpolation) Problems computing shared vertex normals Problems at T-vertices Summary 2D polygon scan conversion Paint pixels inside primitive Sweep-line algorithm for polygons Flat Gouraud Phong Ray casting Key ideas: Sampling and reconstruction Spatial coherence Less expensive More accurate 8

### Computer Graphics: Visualisation Lecture 3. Taku Komura Institute for Perception, Action & Behaviour

Computer Graphics: Visualisation Lecture 3 Taku Komura tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour Taku Komura Computer Graphics & VTK 1 Last lecture... Visualisation can be greatly

### INTRODUCTION TO RENDERING TECHNIQUES

INTRODUCTION TO RENDERING TECHNIQUES 22 Mar. 212 Yanir Kleiman What is 3D Graphics? Why 3D? Draw one frame at a time Model only once X 24 frames per second Color / texture only once 15, frames for a feature

### CS 543: Computer Graphics Lecture 9 (Part I): Raster Graphics: Drawing Lines. Emmanuel Agu

CS 543: Computer Graphics Lecture 9 (Part I): Raster Graphics: Drawing Lines Emmanuel Agu 2D Graphics Pipeline Clipping Object World Coordinates Applying world window Object subset window to viewport mapping

### Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Sample Exam Questions 2007

Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Questions 2007 INSTRUCTIONS: Answer all questions. Spend approximately 1 minute per mark. Question 1 30 Marks Total

### Scan-Line Fill. Scan-Line Algorithm. Sort by scan line Fill each span vertex order generated by vertex list

Scan-Line Fill Can also fill by maintaining a data structure of all intersections of polygons with scan lines Sort by scan line Fill each span vertex order generated by vertex list desired order Scan-Line

### Illumination Models and Shading. Foley & Van Dam, Chapter 16

Illumination Models and Shading Foley & Van Dam, Chapter 16 Illumination Models and Shading Light Source Models Ambient Illumination Diffuse Reflection Specular Reflection Polygon Rendering Methods Flat

### We have learnt that the order of how we draw objects in 3D can have an influence on how the final image looks

Review: Last Week We have learnt that the order of how we draw objects in 3D can have an influence on how the final image looks Depth-sort Z-buffer Transparency Orientation of triangle (order of vertices)

### Computer Applications in Textile Engineering. Computer Applications in Textile Engineering

3. Computer Graphics Sungmin Kim http://latam.jnu.ac.kr Computer Graphics Definition Introduction Research field related to the activities that includes graphics as input and output Importance Interactive

### A Short Introduction to Computer Graphics

A Short Introduction to Computer Graphics Frédo Durand MIT Laboratory for Computer Science 1 Introduction Chapter I: Basics Although computer graphics is a vast field that encompasses almost any graphical

### The Essentials of CAGD

The Essentials of CAGD Chapter 2: Lines and Planes Gerald Farin & Dianne Hansford CRC Press, Taylor & Francis Group, An A K Peters Book www.farinhansford.com/books/essentials-cagd c 2000 Farin & Hansford

### Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg

Image Processing and Computer Graphics Rendering Pipeline Matthias Teschner Computer Science Department University of Freiburg Outline introduction rendering pipeline vertex processing primitive processing

### Introduction to Computer Graphics

Introduction to Computer Graphics Torsten Möller TASC 8021 778-782-2215 torsten@sfu.ca www.cs.sfu.ca/~torsten Today What is computer graphics? Contents of this course Syllabus Overview of course topics

### Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Computer Graphics CS 54 Lecture 1 (Part 1) Curves Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) So Far Dealt with straight lines and flat surfaces Real world objects include

### B2.53-R3: COMPUTER GRAPHICS. NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions.

B2.53-R3: COMPUTER GRAPHICS NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. 2. PART ONE is to be answered in the TEAR-OFF ANSWER

### Shading. Reading. Pinhole camera. Basic 3D graphics. Brian Curless CSE 557 Fall 2013. Required: Shirley, Chapter 10

Reading Required: Shirley, Chapter 10 Shading Brian Curless CSE 557 Fall 2013 1 2 Basic 3D graphics With affine matrices, we can now transform virtual 3D obects in their local coordinate systems into a

### Lecture Notes, CEng 477

Computer Graphics Hardware and Software Lecture Notes, CEng 477 What is Computer Graphics? Different things in different contexts: pictures, scenes that are generated by a computer. tools used to make

### COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

COMP175: Computer Graphics Lecture 1 Introduction and Display Technologies Course mechanics Number: COMP 175-01, Fall 2009 Meetings: TR 1:30-2:45pm Instructor: Sara Su (sarasu@cs.tufts.edu) TA: Matt Menke

### Finite Elements for 2 D Problems

Finite Elements for 2 D Problems General Formula for the Stiffness Matrix Displacements (u, v) in a plane element are interpolated from nodal displacements (ui, vi) using shape functions Ni as follows,

### Last lecture... Computer Graphics:

Last lecture... Computer Graphics: Visualisation can be greatly enhanced through the Introduction to the Visualisation use of 3D computer graphics Toolkit Visualisation Lecture 2 toby.breckon@ed.ac.uk

### Centroid: The point of intersection of the three medians of a triangle. Centroid

Vocabulary Words Acute Triangles: A triangle with all acute angles. Examples 80 50 50 Angle: A figure formed by two noncollinear rays that have a common endpoint and are not opposite rays. Angle Bisector:

### We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

CHAPTER 4 CURVES 4.1 Introduction In order to understand the significance of curves, we should look into the types of model representations that are used in geometric modeling. Curves play a very significant

### ID@GT prepared by Gabe Landes for T. Purdy 2009

Rapid prototyping is the automatic construction of physical objects using solid freeform fabrication. The first techniques for rapid prototyping became available in the late 1980s and were used to produce

### VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203.

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year & Semester : III Year, V Semester Section : CSE - 1 & 2 Subject Code : CS6504 Subject

### G.H. Raisoni College of Engineering, Nagpur. Department of Information Technology

Practical List 1) WAP to implement line generation using DDA algorithm 2) WAP to implement line using Bresenham s line generation algorithm. 3) WAP to generate circle using circle generation algorithm

### Lezione 4: Grafica 3D*(II)

Lezione 4: Grafica 3D*(II) Informatica Multimediale Docente: Umberto Castellani *I lucidi sono tratti da una lezione di Maura Melotti (m.melotti@cineca.it) RENDERING Rendering What is rendering? Rendering

### Introduction to 2D and 3D Computer Graphics Mastering 2D & 3D Computer Graphics Pipelines

Introduction to 2D and 3D Computer Graphics Mastering 2D & 3D Computer Graphics Pipelines CS447 3-1 Mastering 2D & 3D Graphics Overview of 2D & 3D Pipelines What are pipelines? What are the fundamental

### Specular reflection. Dielectrics and Distribution in Ray Tracing. Snell s Law. Ray tracing dielectrics

Specular reflection Dielectrics and Distribution in Ray Tracing CS 465 Lecture 22 Smooth surfaces of pure materials have ideal specular reflection (said this before) Metals (conductors) and dielectrics

### Engineering Geometry

Engineering Geometry Objectives Describe the importance of engineering geometry in design process. Describe coordinate geometry and coordinate systems and apply them to CAD. Review the right-hand rule.

### COMPUTER GRAPHICS IMPORTANT QUESTION AND ANSWERS. Computer graphics

Computer graphics 1. Define Computer graphics. Computer graphics remains one of the most existing and rapidly growing computer fields. Computer graphics may be defined as a pictorial representation or

### Constrained Tetrahedral Mesh Generation of Human Organs on Segmented Volume *

Constrained Tetrahedral Mesh Generation of Human Organs on Segmented Volume * Xiaosong Yang 1, Pheng Ann Heng 2, Zesheng Tang 3 1 Department of Computer Science and Technology, Tsinghua University, Beijing

### 2.3 WINDOW-TO-VIEWPORT COORDINATE TRANSFORMATION

2.3 WINDOW-TO-VIEWPORT COORDINATE TRANSFORMATION A world-coordinate area selected for display is called a window. An area on a display device to which a window is mapped is called a viewport. The window

### Shader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group

Shader Model 3.0 Ashu Rege NVIDIA Developer Technology Group Talk Outline Quick Intro GeForce 6 Series (NV4X family) New Vertex Shader Features Vertex Texture Fetch Longer Programs and Dynamic Flow Control

### Homework Exam 1, Geometric Algorithms, 2016

Homework Exam 1, Geometric Algorithms, 2016 1. (3 points) Let P be a convex polyhedron in 3-dimensional space. The boundary of P is represented as a DCEL, storing the incidence relationships between the

### COMP-557: Fundamentals of Computer Graphics McGill University, Fall 2010

COMP-557: Fundamentals of Computer Graphics McGill University, Fall 2010 Class times 2:25 PM - 3:55 PM Mondays and Wednesdays Lecture room Trottier Building 2120 Instructor Paul Kry, kry@cs.mcgill.ca Course

### angle Definition and illustration (if applicable): a figure formed by two rays called sides having a common endpoint called the vertex

angle a figure formed by two rays called sides having a common endpoint called the vertex area the number of square units needed to cover a surface array a set of objects or numbers arranged in rows and

### Cabri Geometry Application User Guide

Cabri Geometry Application User Guide Preview of Geometry... 2 Learning the Basics... 3 Managing File Operations... 12 Setting Application Preferences... 14 Selecting and Moving Objects... 17 Deleting

### Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

An Example 2 3 4 Outline Objective: Develop methods and algorithms to mathematically model shape of real world objects Categories: Wire-Frame Representation Object is represented as as a set of points

### Efficient Storage, Compression and Transmission

Efficient Storage, Compression and Transmission of Complex 3D Models context & problem definition general framework & classification our new algorithm applications for digital documents Mesh Decimation

### EECS 556 Image Processing W 09. Interpolation. Interpolation techniques B splines

EECS 556 Image Processing W 09 Interpolation Interpolation techniques B splines What is image processing? Image processing is the application of 2D signal processing methods to images Image representation

### Volume visualization I Elvins

Volume visualization I Elvins 1 surface fitting algorithms marching cubes dividing cubes direct volume rendering algorithms ray casting, integration methods voxel projection, projected tetrahedra, splatting

### Curves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface?

Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] Goals How do we draw surfaces? Approximate with polygons Draw polygons

### What does the number m in y = mx + b measure? To find out, suppose (x 1, y 1 ) and (x 2, y 2 ) are two points on the graph of y = mx + b.

PRIMARY CONTENT MODULE Algebra - Linear Equations & Inequalities T-37/H-37 What does the number m in y = mx + b measure? To find out, suppose (x 1, y 1 ) and (x 2, y 2 ) are two points on the graph of

### Render your tests with your master camera at low-res and do your lighting, posing, texturing as usual.

Render your tests with your master camera at low-res and do your lighting, posing, texturing as usual. For all of you Lightwave users that need to find an easier way of rendering those high resolution

### CS445 Exam 2 Solutions

November 20, 2014 Name CS445 Exam 2 Solutions Fall 2014 1. (max = 15) 5. (max = 21) 2. (max = 8) 6. (max = 16) 3. (max = 10) 7. (max = 16) 4. (max = 14) Final Score: (max=100) Please try to write legibly.

### Model Repair. Leif Kobbelt RWTH Aachen University )NPUT \$ATA 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS !NALYSIS OF SURFACE QUALITY

)NPUT \$ATA 2ANGE 3CAN #!\$ 4OMOGRAPHY 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS!NALYSIS OF SURFACE QUALITY 3URFACE SMOOTHING FOR NOISE REMOVAL 0ARAMETERIZATION 3IMPLIFICATION FOR COMPLEXITY REDUCTION

### also describes the method used to collect the data for the faces. These techniques could be used to animate other flexible surfaces.

Computer Generated Animation of Faces Frederick I. Parke, University of Utah This paper describes the representation, animation and data collection techniques that have been used to produce "realistic"

### Computer Graphics. Anders Hast

Computer Graphics Anders Hast Who am I?! 5 years in Industry after graduation, 2 years as high school teacher.! 1996 Teacher, University of Gävle! 2004 PhD, Computerised Image Processing " Computer Graphics!

### Computer Graphics. Introduction. Computer graphics. What is computer graphics? Yung-Yu Chuang

Introduction Computer Graphics Instructor: Yung-Yu Chuang ( 莊 永 裕 ) E-mail: c@csie.ntu.edu.tw Office: CSIE 527 Grading: a MatchMove project Computer Science ce & Information o Technolog og Yung-Yu Chuang

### Lines That Pass Through Regions

: Student Outcomes Given two points in the coordinate plane and a rectangular or triangular region, students determine whether the line through those points meets the region, and if it does, they describe

### The slope m of the line passes through the points (x 1,y 1 ) and (x 2,y 2 ) e) (1, 3) and (4, 6) = 1 2. f) (3, 6) and (1, 6) m= 6 6

Lines and Linear Equations Slopes Consider walking on a line from left to right. The slope of a line is a measure of its steepness. A positive slope rises and a negative slope falls. A slope of zero means

### Line and Polygon Clipping. Foley & Van Dam, Chapter 3

Line and Polygon Clipping Foley & Van Dam, Chapter 3 Topics Viewing Transformation Pipeline in 2D Line and polygon clipping Brute force analytic solution Cohen-Sutherland Line Clipping Algorithm Cyrus-Beck

### Algebra Geometry Glossary. 90 angle

lgebra Geometry Glossary 1) acute angle an angle less than 90 acute angle 90 angle 2) acute triangle a triangle where all angles are less than 90 3) adjacent angles angles that share a common leg Example:

### Largest Fixed-Aspect, Axis-Aligned Rectangle

7.5 SYSTEMS OF INEQUALITIES Copyright Cengage Learning. All rights reserved. What You Should Learn Sketch the graphs of inequalities in two variables. Solve systems of inequalities. Use systems of inequalities

### Triangle Scan Conversion using 2D Homogeneous Coordinates

Triangle Scan Conversion using 2D Homogeneous Coordinates Marc Olano 1 Trey Greer 2 University of North Carolina Hewlett-Packard ABSTRACT We present a new triangle scan conversion algorithm that works

### Introduction Week 1, Lecture 1

CS 430/536 Computer Graphics I Introduction Week 1, Lecture 1 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel University

### H.Calculating Normal Vectors

Appendix H H.Calculating Normal Vectors This appendix describes how to calculate normal vectors for surfaces. You need to define normals to use the OpenGL lighting facility, which is described in Chapter

### Shading. Reading. Pinhole camera. Basic 3D graphics. Brian Curless CSE 557 Fall 2014. Required: Shirley, Chapter 10

Reading Required: Shirley, Chapter 10 Shading Brian Curless CSE 557 Fall 2014 1 2 Basic 3D graphics With affine matrices, we can now transform virtual 3D objects in their local coordinate systems into

### Computational Geometry. Lecture 1: Introduction and Convex Hulls

Lecture 1: Introduction and convex hulls 1 Geometry: points, lines,... Plane (two-dimensional), R 2 Space (three-dimensional), R 3 Space (higher-dimensional), R d A point in the plane, 3-dimensional space,

### Mean Value Coordinates

Mean Value Coordinates Michael S. Floater Abstract: We derive a generalization of barycentric coordinates which allows a vertex in a planar triangulation to be expressed as a convex combination of its

### Visualization and Feature Extraction, FLOW Spring School 2016 Prof. Dr. Tino Weinkauf. Flow Visualization. Image-Based Methods (integration-based)

Visualization and Feature Extraction, FLOW Spring School 2016 Prof. Dr. Tino Weinkauf Flow Visualization Image-Based Methods (integration-based) Spot Noise (Jarke van Wijk, Siggraph 1991) Flow Visualization:

### SkillsUSA 2014 Contest Projects 3-D Visualization and Animation

SkillsUSA Contest Projects 3-D Visualization and Animation Click the Print this Section button above to automatically print the specifications for this contest. Make sure your printer is turned on before

### Scan Conversion of Filled Primitives Rectangles Polygons. Many concepts are easy in continuous space - Difficult in discrete space

Walters@buffalo.edu CSE 480/580 Lecture 7 Slide 1 2D Primitives I Point-plotting (Scan Conversion) Lines Circles Ellipses Scan Conversion of Filled Primitives Rectangles Polygons Clipping In graphics must

### White Paper. Cloth Simulation. February 2007 WP-03018-001_v01

White Paper Cloth Simulation February 2007 WP-03018-001_v01 White Paper Document Change History Version Date Responsible Reason for Change _v01 CZ, TS Initial release Go to sdkfeedback@nvidia.com to provide

### Reflection and Refraction

Equipment Reflection and Refraction Acrylic block set, plane-concave-convex universal mirror, cork board, cork board stand, pins, flashlight, protractor, ruler, mirror worksheet, rectangular block worksheet,

Deferred Shading Shawn Hargreaves Overview Don t bother with any lighting while drawing scene geometry Render to a fat framebuffer format, using multiple rendertargets to store data such as the position

### The Close Objects Buffer: A Sharp Shadow Detection Technique for Radiosity Methods

The Close Objects Buffer: A Sharp Shadow Detection Technique for Radiosity Methods A.C. Telea, C.W.A.M. van Overveld Department of Mathematics and Computing Science Eindhoven University of Technology P.O.

### Improved Alpha-Tested Magnification for Vector Textures and Special Effects

Improved Alpha-Tested Magnification for Vector Textures and Special Effects Chris Green Valve (a) 64x64 texture, alpha-blended (b) 64x64 texture, alpha tested (c) 64x64 texture using our technique Figure

### Kankakee Community College

Kankakee Community College Course prefix and number: DRFT 2134 Course title: AutoCAD III Semester: Fall 2014 Credit hours: 4 Lecture hours: 2.5 Lab hours: 3 Catalog description: Prerequisite: DRFT 2114,

### Recent Advances and Future Trends in Graphics Hardware. Michael Doggett Architect November 23, 2005

Recent Advances and Future Trends in Graphics Hardware Michael Doggett Architect November 23, 2005 Overview XBOX360 GPU : Xenos Rendering performance GPU architecture Unified shader Memory Export Texture/Vertex

### Shortest Path Algorithms

Shortest Path Algorithms Jaehyun Park CS 97SI Stanford University June 29, 2015 Outline Cross Product Convex Hull Problem Sweep Line Algorithm Intersecting Half-planes Notes on Binary/Ternary Search Cross

### Ray tracing idea. Ray Tracing. Ray tracing algorithm. Plane projection in drawing. CS 465 Lecture 3

Ray tracing idea Ray Tracing CS 465 Lecture 3 2004 Steve Marschner 1 2004 Steve Marschner 2 Ray tracing algorithm Plane projection in drawing for each pixel { compute viewing ray intersect ray with scene

### Workstation Applications for Windows. NVIDIA MAXtreme User s Guide

Workstation Applications for Windows NVIDIA MAXtreme User s Guide Software Version: 6.00.xx NVIDIA Corporation February 2004 NVIDIA MAXtreme Published by NVIDIA Corporation 2701 San Tomas Expressway Santa

### Vector storage and access; algorithms in GIS. This is lecture 6

Vector storage and access; algorithms in GIS This is lecture 6 Vector data storage and access Vectors are built from points, line and areas. (x,y) Surface: (x,y,z) Vector data access Access to vector

### Geometric Image Transformations

Geometric Image Transformations Part One 2D Transformations Spatial Coordinates (x,y) are mapped to new coords (u,v) pixels of source image -> pixels of destination image Types of 2D Transformations Affine

### Introduction to Computer Graphics 8. Buffers and Mapping techniques (A)

Introduction to Computer Graphics 8. Buffers and Mapping techniques (A) National Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor Textbook: Hearn and Baker, Computer Graphics, 3rd Ed., Prentice

### Three-Dimensional Data Recovery Using Image-Based Modeling

Three-Dimensional Data Recovery Using Image-Based Modeling Jeremy W. Cannon Jonathan C. Derryberry Vitaly Y. Kulikov jcannon1@mit.edu jonderry@mit.edu vkulikov@mit.edu Abstract 6.837: Introduction to Computer

### Using Photorealistic RenderMan for High-Quality Direct Volume Rendering

Using Photorealistic RenderMan for High-Quality Direct Volume Rendering Cyrus Jam cjam@sdsc.edu Mike Bailey mjb@sdsc.edu San Diego Supercomputer Center University of California San Diego Abstract With

### Chapter 9. Systems of Linear Equations

Chapter 9. Systems of Linear Equations 9.1. Solve Systems of Linear Equations by Graphing KYOTE Standards: CR 21; CA 13 In this section we discuss how to solve systems of two linear equations in two variables

### 3D Math Overview and 3D Graphics Foundations

Freescale Semiconductor Application Note Document Number: AN4132 Rev. 0, 05/2010 3D Math Overview and 3D Graphics Foundations by Multimedia Applications Division Freescale Semiconductor, Inc. Austin, TX

### CSE168 Computer Graphics II, Rendering. Spring 2006 Matthias Zwicker

CSE168 Computer Graphics II, Rendering Spring 2006 Matthias Zwicker Last time Global illumination Light transport notation Path tracing Sampling patterns Reflection vs. rendering equation Reflection equation

### Improved Billboard Clouds for Extreme Model Simplification

Improved Billboard Clouds for Extreme Model Simplification I.-T. Huang, K. L. Novins and B. C. Wünsche Graphics Group, Department of Computer Science, University of Auckland, Private Bag 92019, Auckland,

### Chapter 8 Graphs and Functions:

Chapter 8 Graphs and Functions: Cartesian axes, coordinates and points 8.1 Pictorially we plot points and graphs in a plane (flat space) using a set of Cartesian axes traditionally called the x and y axes

### 1. Application of Computer Graphics

1. Application of Computer Graphics Computer-Aided Design for engineering and architectural systems etc. Objects maybe displayed in a wireframe outline form. Multi-window environment is also favored for

### Visualization of 2D Domains

Visualization of 2D Domains This part of the visualization package is intended to supply a simple graphical interface for 2- dimensional finite element data structures. Furthermore, it is used as the low

### 3D Analysis and Surface Modeling

3D Analysis and Surface Modeling Dr. Fang Qiu Surface Analysis and 3D Visualization Surface Model Data Set Grid vs. TIN 2D vs. 3D shape Creating Surface Model Creating TIN Creating 3D features Surface

### CUBE-MAP DATA STRUCTURE FOR INTERACTIVE GLOBAL ILLUMINATION COMPUTATION IN DYNAMIC DIFFUSE ENVIRONMENTS

ICCVG 2002 Zakopane, 25-29 Sept. 2002 Rafal Mantiuk (1,2), Sumanta Pattanaik (1), Karol Myszkowski (3) (1) University of Central Florida, USA, (2) Technical University of Szczecin, Poland, (3) Max- Planck-Institut

### Computer Graphics Lecture Notes

Computer Graphics Lecture Notes DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING SHRI VISHNU ENGINEERING COLLEGE FOR WOMEN (Approved by AICTE, Accredited by NBA, Affiliated to JNTU Kakinada) BHIMAVARAM 534

### FreeForm 3D Mesh Warp User Manual. freeform created by mettle.com

FreeForm 3D Mesh Warp User Manual freeform created by mettle.com Contents 3 Installation 4 Controls 6 Controls - cont d 8 Support 9 Application FreeForm 3D Mesh Warp The FreeForm 3D Mesh Warp plugin for

### Vector Notation: AB represents the vector from point A to point B on a graph. The vector can be computed by B A.

1 Linear Transformations Prepared by: Robin Michelle King A transformation of an object is a change in position or dimension (or both) of the object. The resulting object after the transformation is called

### LABORATORY MANUAL. CS-4508 Computer Graphics & Multimedia. July 2012 Onwards. Devi Ahilya Vishwavidyalaya. School of Computer Science & IT

LABORATORY MANUAL CS-4508 Computer Graphics & Multimedia July 2012 Onwards Devi Ahilya Vishwavidyalaya School of Computer Science & IT We make things happen... Producing world class IT Professionals Since

### Two Research Schools become ONE

www.cb.uu.se/~aht Anders.Hast@it.uu.se Two Research Schools become ONE 1996 213 27 1 www.cb.uu.se/~aht Anders.Hast@it.uu.se Collaboration between Two Research Initiatives 2 www.cb.uu.se/~aht Anders.Hast@it.uu.se

### Finite Element Formulation for Plates - Handout 3 -

Finite Element Formulation for Plates - Handout 3 - Dr Fehmi Cirak (fc286@) Completed Version Definitions A plate is a three dimensional solid body with one of the plate dimensions much smaller than the

### Non-Photorealistic Rendering

15-462 Computer Graphics I Lecture 22 Non-Photorealistic Rendering Pen-and-Ink Illustrations Painterly Rendering Cartoon Shading Technical Illustrations Acknowledgment: Steve Lin April 25, 2002 Frank Pfenning

### Non-Photorealistic Rendering

15-462 Computer Graphics I Lecture 22 Non-Photorealistic Rendering Pen-and-Ink Illustrations Painterly Rendering Cartoon Shading Technical Illustrations Acknowledgment: Steve Lin April 25, 2002 Frank Pfenning

### Introduction to SolidWorks Software

Introduction to SolidWorks Software Marine Advanced Technology Education Design Tools What is SolidWorks? SolidWorks is design automation software. In SolidWorks, you sketch ideas and experiment with different