Today. The Graphics Pipeline: Projective Transformations. Last Week: Schedule. XForms Forms Library. Questions?

Similar documents
Last Time. Correct Transparent Shadow. Does Ray Tracing Simulate Physics? Does Ray Tracing Simulate Physics? Refraction and the Lifeguard Problem

The Traditional Graphics Pipeline

The Traditional Graphics Pipeline

CSCI-4530/6530 Advanced Computer Graphics

The Traditional Graphics Pipeline

CSCI-4530/6530 Advanced Computer Graphics

The 3-D Graphics Rendering Pipeline

CS 475 / CS 675 Computer Graphics. Lecture 7 : The Modeling-Viewing Pipeline

Announcements. Tutorial this week Life of the polygon A1 theory questions

Final projects. Rasterization. The Graphics Pipeline. Illumination (Shading) (Lighting) Viewing Transformation. Rest of semester. This week, with TAs

Viewing in 3D (Chapt. 6 in FVD, Chapt. 12 in Hearn & Baker)

News. Projections and Picking. Transforming View Volumes. Projections recap. Basic Perspective Projection. Basic Perspective Projection

Viewing and Projection

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Viewing/Projection IV. Week 4, Fri Jan 29

Rasterization Overview

Ray Tracing. Announcements: Quiz. Last Time? Today. Durer s Ray Casting Machine. Ray Casting

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Ray Tracing. Quiz Discussion. Announcements: Final Projects. Last Time? Durer s Ray Casting Machine. Today

Pipeline Operations. CS 4620 Lecture 14

Modeling Transformations

Parallelization. Memory coherency helps when distributing rays to various threads/processors

Modeling Transformations

Rasterization. MIT EECS Frédo Durand and Barb Cutler. MIT EECS 6.837, Cutler and Durand 1

Viewing/Projections III. Week 4, Wed Jan 31

Ray Tracing. Local Illumination. Object Space: Global Illumination. Image Space: Backward Ray Tracing. First idea: Forward Ray Tracing

Fondamenti di Grafica 3D The Rasterization Pipeline.

Last week. Machiraju/Zhang/Möller

CSCI-4972/6963 Advanced Computer Graphics

Pipeline Operations. CS 4620 Lecture 10

What does OpenGL do?

CS 548: COMPUTER GRAPHICS REVIEW: OVERVIEW OF POLYGONS SPRING 2015 DR. MICHAEL J. REALE

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)

3D graphics rendering pipeline (1) 3D graphics rendering pipeline (3) 3D graphics rendering pipeline (2) 8/29/11

Midterm Review. Wen-Chieh (Steve) Lin Department of Computer Science

5.8.3 Oblique Projections

3D Coordinates & Transformations

Geometric Transformations

Outline of Lecture. Real-Time High Quality Rendering. Geometry or Vertex Pipeline. Basic Hardware Pipeline. Pixel or Fragment Pipeline

Lighting. To do. Course Outline. This Lecture. Continue to work on ray programming assignment Start thinking about final project

Ray Tracing. Last Time? Today. Ray Casting. Durer s Ray Casting Machine. Reading for Today

Photorealism: Ray Tracing

Introduction Ray tracing basics Advanced topics (shading) Advanced topics (geometry) Graphics 2010/2011, 4th quarter. Lecture 11: Ray tracing

Transformations in Ray Tracing. MIT EECS 6.837, Durand and Cutler

The exam begins at 2:40pm and ends at 4:00pm. You must turn your exam in when time is announced or risk not having it accepted.

CPSC 314, Midterm Exam 1. 9 Feb 2007

CS Computer Graphics: Transformations & The Synthetic Camera

CSE528 Computer Graphics: Theory, Algorithms, and Applications

Game Architecture. 2/19/16: Rasterization

Scan Conversion- Polygons

CHAPTER 1 Graphics Systems and Models 3

Hidden Line and Surface

Shading, Advanced Rendering. Week 7, Wed Feb 28

Motivation. Sampling and Reconstruction of Visual Appearance. Effects needed for Realism. Ray Tracing. Outline

CS 488. More Shading and Illumination. Luc RENAMBOT

3-Dimensional Viewing

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner

Notes. University of British Columbia

Computer Science 426 Midterm 3/11/04, 1:30PM-2:50PM

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

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

CS 130 Final. Fall 2015

RASTERISED RENDERING

Advanced Shading I: Shadow Rasterization Techniques

Ray Tracing. CSCI 420 Computer Graphics Lecture 15. Ray Casting Shadow Rays Reflection and Transmission [Ch ]

Determining the 2d transformation that brings one image into alignment (registers it) with another. And

Midterm Exam! CS 184: Foundations of Computer Graphics! page 1 of 13!

CS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions. The Midterm Exam was given in class on Thursday, October 23, 2008.

TDA361/DIT220 Computer Graphics, January 15 th 2016

Blue colour text questions Black colour text sample answers Red colour text further explanation or references for the sample answers

The Graphics Pipeline. Interactive Computer Graphics. The Graphics Pipeline. The Graphics Pipeline. The Graphics Pipeline: Clipping

Intro to Ray-Tracing & Ray-Surface Acceleration

CS 464 Review. Review of Computer Graphics for Final Exam

Computer Graphics I Lecture 11

Objectives. Geometry. Coordinate-Free Geometry. Basic Elements. Transformations to Change Coordinate Systems. Scalars

Shaded Rendering and Shadow Computation for Polyhedral Animation

CSE528 Computer Graphics: Theory, Algorithms, and Applications

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

CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling

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

Virtual Environments

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

COMP371 COMPUTER GRAPHICS

CS451Real-time Rendering Pipeline

Enhancing Traditional Rasterization Graphics with Ray Tracing. October 2015

6.837 Introduction to Computer Graphics Quiz 2 Thursday November 20, :40-4pm One hand-written sheet of notes allowed

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

General Purpose Computation (CAD/CAM/CAE) on the GPU (a.k.a. Topics in Manufacturing)

CS 381 Computer Graphics, Fall 2012 Midterm Exam Solutions. The Midterm Exam was given in class on Tuesday, October 16, 2012.

Classic Rendering Pipeline

Lecture 4: Viewing. Topics:

The Rendering Pipeline

Graphics for VEs. Ruth Aylett

Objectives. Geometry. Basic Elements. Coordinate-Free Geometry. Transformations to Change Coordinate Systems. Scalars

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing

CSE 690: GPGPU. Lecture 2: Understanding the Fabric - Intro to Graphics. Klaus Mueller Stony Brook University Computer Science Department

CS230 : Computer Graphics Lecture 6: Viewing Transformations. Tamar Shinar Computer Science & Engineering UC Riverside

Graphics for VEs. Ruth Aylett

Transcription:

Toda The Graphics Pipeline: Projectie Reiew & Schedule Ra Casting / Tracing s. The Graphics Pipeline Projectie Last Week: Animation & Quaternions Finite Element Simulations collisions, fracture, & deformation Schedule Final Project Post our ideas on the web page Meet with staff to talk about project ideas sign up for an appointment on Frida Proposal due on Monda October 27 th Frida October 24 th : Assignment 5 due Office Hours this week: Tuesda after class (Rob student center) Wednesda 7-9 (Patrick student center) Thursda after class (Fredo student center) Frida 3-5, student center (Barb student center) XForms Forms Librar Questions? GUI (graphical user interface) for Linu buttons, scrollbars, dialog boes, menus, etc. fdesign for interactie laout

Toda Reiew & Schedule Ra Casting / Tracing s. The Graphics Pipeline Projectie What hae we done so far? Ra Casting / Tracing ra/primitie intersections transformations local shading (diffuse, ambient, BRDFs) global effects (shadows, transparenc, caustics,... ) Ra Casting / Tracing for eer piel, construct a ra from the ee for eer object in the scene Grid Acceleration intersect ra with object find closest intersection with the ra compute normal at point of intersection compute color for piel (shoot secondar ras) Ra Casting / Tracing Adantages? Smooth ariation of normal, silhouettes Generalit: can render anthing that can be intersected with a ra Atomic operation, allows recursion Disadantages? Time compleit (N objects, R piels) Usuall too slow for interactie applications Hard to implement in hardware (lacks computation coherence, must fit entire scene in memor) Can we render things interactiel? Of course! games, 3D modeling packages, architectural walkthroughs, assignment 5, etc. How do we render interactiel? Use the graphics hardware (the graphics pipeline), ia OpenGL, MesaGL, or DirectX Most global effects aailable in ra tracing will be sacrificed, but some can be approimated.

Graphics Pipeline Primities are processed one at a time Earl stages inole analtic processing Sampling occurs late in the pipeline Minimal state required Graphics Pipeline for eer object in the scene shade the ertices scan conert the object to the framebuffer interpolate the color computed for each erte remember the closest alue per piel glbegin(gl_triangles) glnormal3f(...) glverte3f(...) glverte3f(...) glverte3f(...) glend(); glbegin(gl_triangles) glnormal3f(...) glverte3f(...) glverte3f(...) glverte3f(...) glend(); Gien the primitie's ertices & the illumination at each erte: Figure out which piels to "turn on" to render the primitie Interpolate the illumination alues to "fill in" the primitie At each piel, keep track of the closest primitie (-buffer) Limitations of Restricted to scan-conertible primities Object polgoniation Faceting, shading artifacts Effectie resolution is hardware dependent No handling of shadows, reflection, transparenc Problem of oerdraw (high depth compleit) What if there are more triangles than piels? Questions? Toda Reiew & Schedule Ra Casting / Tracing s. The Graphics Pipeline Projectie

The Graphics Pipeline The Graphics Pipeline Primities are processed in a series of stages Each stage forwards its result on to the net stage The pipeline can be drawn and implemented in different was Some stages ma be in hardware, others in software Optimiations & additional programmabilit are aailable at some stages 3D models defined in their own coordinate sstem (object space) transforms orient the models within a common coordinate frame (world space) (Lighting) Vertices lit (shaded) according to material properties, surface properties (normal) and light sources Local lighting model (Diffuse, Ambient, Phong, etc.) Object space World space Maps world space to ee space Viewing position is transformed to origin & direction is oriented along some ais (usuall ) Transform to Normalied Deice Coordinates (NDC) World space Ee space Ee space Portions of the object outside the iew olume (iew frustum) are remoed NDC

The objects are projected to the 2D image place (screen space) Rasteries objects into piels Interpolate alues as we go (color, depth, etc.) NDC Screen Space Each piel remembers the closest object (depth buffer) Almost eer step in the graphics pipeline inoles a change of coordinate sstem. are central to understanding 3D computer graphics. Common Coordinate Sstems Object space local to each object World space common to all objects Ee space / Camera space deried from iew frustum Clip space / Normalied Deice Coordinates (NDC) [-,-,-] [,,] Screen space indeed according to hardware attributes Coordinate Sstems in the Pipeline Questions? Object space World space Ee Space / Camera Space Clip Space (NDC) Screen Space

Toda Reiew & Schedule Ra Casting / Tracing s. The Graphics Pipeline Projectie & Homogeneous Coordinates Orthographic & Perspectie s Canonical View Volume Remember? Projectie Affine Similitudes Linear Rigid / Euclidean Scaling Identit Translation Isotropic Scaling Reflection Rotation Shear Perspectie Homogeneous Coordinates Most of the time w, and we can ignore it ' ' ' a e i b f j c g k d h l Homogeneous Visualiation Diide b w to normalie (homogenie) W? Point at infinit (direction) If we multipl a homogeneous coordinate b an affine matri, w is unchanged (,, ) (,, 2) (7,, ) (4, 2, 2) w (4, 5, ) (8,, 2) w 2 Orthographic s. Perspectie Orthographic Simple Orthographic Project all points along the ais to the plane Perspectie

Simple Perspectie Project all points along the ais to the d plane, eepoint at the origin: Alternate Perspectie Project all points along the ais to the plane, eepoint at the (,,-d): homogenie homogenie * d / * d / d / d /d * d / ( + d) * d / ( + d) ( + d)/ d /d In the limit, as d What if the p is ee? this perspectie projection matri......is simpl an orthographic projection /d (ee, ee, ee ) ais What if the p is ee? What if the p is ee? (ee, ee, ee ) ais (ee, ee, ee ) ais

What if the p is ee? What if the p is ee? "clip" geometr to iew frustum (ee, ee, ee ) ais (ee, ee, ee ) ais??? Where are projections in the pipeline? World Space Ee Space Positioning the camera Ee Space / Camera Space Clip Space (NDC) Screen Space Translation + Change of orthonormal basis (Lecture 4) Gien: coordinate frames & un, and point p (,,) Find: p (u,,n) p u u Change of Orthonormal Basis Normalied Deice Coordinates u n u n u n u n is more efficient in a rectangular, ais-aligned olume: (-,-,-) (,,) OR (,,) (,,) u p u where: u. u u. u etc.

Canonical Orthographic Canonical Perspectie Questions? Net Time: Line Rasteriation