COMP250: Computer Graphics

Similar documents
Computer Graphics Introduction. Taku Komura

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural

Pipeline Operations. CS 4620 Lecture 10

Introduction to Computer Graphics. Knowledge basic concepts 2D and 3D computer graphics

Graphics Hardware and Display Devices

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

Intro to Ray-Tracing & Ray-Surface Acceleration

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

Pipeline Operations. CS 4620 Lecture 14

CHAPTER 1 Graphics Systems and Models 3

CS 498 VR. Lecture 19-4/9/18. go.illinois.edu/vrlect19

Lecture 12: Advanced Rendering

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

CS 325 Computer Graphics

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

Computer Graphics. Lecture 14 Bump-mapping, Global Illumination (1)

Visualisatie BMT. Rendering. Arjan Kok

CS 464 Review. Review of Computer Graphics for Final Exam

Problem Set 4 Part 1 CMSC 427 Distributed: Thursday, November 1, 2007 Due: Tuesday, November 20, 2007

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

Recollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows

COMP environment mapping Mar. 12, r = 2n(n v) v

Photorealism: Ray Tracing

Global Rendering. Ingela Nyström 1. Effects needed for realism. The Rendering Equation. Local vs global rendering. Light-material interaction

Computer Graphics I Lecture 11

Shading. Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller/Fuhrmann

Level of Details in Computer Rendering

lecture 18 - ray tracing - environment mapping - refraction

Topics and things to know about them:

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

CSE 167: Introduction to Computer Graphics Lecture #7: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2015

Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1

So far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources.

CS 130 Final. Fall 2015

Homework #2. Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves

0. Introduction: What is Computer Graphics? 1. Basics of scan conversion (line drawing) 2. Representing 2D curves

CPSC GLOBAL ILLUMINATION

Questions??? Announcements Assignment 3 due today

Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Animation & Rendering

03 RENDERING PART TWO

Institutionen för systemteknik

The Traditional Graphics Pipeline

Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1

Adaptive Point Cloud Rendering

History of computer graphics

Computer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping

The Traditional Graphics Pipeline

Models and Architectures

Homework #2 and #3 Due Friday, October 12 th and Friday, October 19 th

CSE 167: Introduction to Computer Graphics Lecture #6: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT

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

COMP371 COMPUTER GRAPHICS

COMP 4801 Final Year Project. Ray Tracing for Computer Graphics. Final Project Report FYP Runjing Liu. Advised by. Dr. L.Y.

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

Texture. Texture Mapping. Texture Mapping. CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture

CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture

Recursion and Data Structures in Computer Graphics. Ray Tracing

Lighting and Shading

CS451Real-time Rendering Pipeline

CMSC427 Final Practice v2 Fall 2017

Lecture 15: Shading-I. CITS3003 Graphics & Animation

Illumination and Shading

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

The Traditional Graphics Pipeline

Graphics for VEs. Ruth Aylett

3D Rasterization II COS 426

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

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

Graphics for VEs. Ruth Aylett

Sung-Eui Yoon ( 윤성의 )

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

CS 130 Exam I. Fall 2015

Lecture 11: Ray tracing (cont.)

CIS 581 Interactive Computer Graphics

CS 4620 Midterm, March 21, 2017

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

Review for Ray-tracing Algorithm and Hardware

Review. Stephen J. Guy

Introduction to Computer Graphics with WebGL

Homework #2. Shading, Ray Tracing, and Texture Mapping

6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, :05-12pm Two hand-written sheet of notes (4 pages) allowed 1 SSD [ /17]

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

Complex Shading Algorithms

Lecturer Athanasios Nikolaidis

6. Illumination, Lighting

Computer Graphics Lecture 11

Culling. Computer Graphics CSE 167 Lecture 12

Raytracing CS148 AS3. Due :59pm PDT


CSE Intro to Computer Graphics. ANSWER KEY: Midterm Examination. November 18, Instructor: Sam Buss, UC San Diego

CSE4030 Introduction to Computer Graphics

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

The Rasterization Pipeline

Computer Graphics. Shadows

Introduction to Visualization and Computer Graphics

Lecture 8 Ray tracing Part 1: Basic concept Yong-Jin Liu.

Transcription:

COMP250: Computer Graphics Jérôme Waldispühl School of Computer Science McGill University Slides assembled from M. BlancheGe (McGill), T. Thorne (U. of Edinburgh)

Slide by M. BlancheGe (McGill) Computer Graphics Rendering World is represented by a set of 3D objects, with colors, reflectvity, transparence, etc. Primite objects: Polygons, spheres, cones Complex objects: Mesh of triangles Goal: Produce a realistc 2D picture of the world

( films ) Computer Graphics is about animaton Major driving force now

Games are very important in Computer Graphics

Medical Imaging is another driving force

Computer Aided Design too

ScienTfic VisualisaTon To view below and above our visual range

Graphics / Rendering Pipeline There are three stages ApplicaTon Stage Geometry Stage RasterizaTon Stage

Batch Computer Graphics Today, stll use non-interactve batch mode for final producton-quality video and film (special effects FX). Rendering a single frame of Monsters University (a 24 fps movie) averaged 29 hours on a 24,000-core render farm! Still from Monsters University Render farm Slide by A. van Dam (Brown U.)

ApplicaTon stage (for interactve computer graphics) EnTrely done in sofware by the CPU Read Data the world geometry database, User s input by mice, trackballs, trackers, or sensing gloves In response to the user s input, the applicaton stage change the view or scene 15-12-01 Lecture 1 10

Geometry Pipeline Loaded 3D Models Model Transformation Transformation: viewing Hidden Surface Elimination Shading: reflection and lighting Imaging Pipeline

Preparing Shape Models Designed by polygons, parametric curves/surfaces, implicit surfaces and etc. Defined in its own coordinate system

Model TransformaTon Objects put into the scene by applying translaton, scaling and rotaton Linear transformaton called homogeneous transformaton is used The locaton of all the vertces are updated by this transformaton 15-12-01 Lecture 1 13

The input Slide by M. BlancheGe (McGill)

Ray-tracing Slide by M. BlancheGe (McGill)

Ray-tracing algorithm Input: - world: set of 3D objects - (x,y,z) positon of the eye - PosiTon of the 2D screen Output: Image: array of colors of size npixels by mpixels For i = 1 npixels For j = 1 mpixels r = ray( eye -> pixel(i,j) ) object = getclosestintersecton(r, world) if (object!=null) then image[i,j] = object.getcolor(); Slide by M. BlancheGe (McGill)

Recursive Ray-tracing Slide by M. BlancheGe (McGill)

Finding intersectons Suppose your world consists of Millions of objects How can you calculate closest intersecton quickly? CompuTng intersecton between ray and each object is much too slow Idea: Store your objects in a data structure that allows you to quickly discard objects that can t have intersecton Slide by M. BlancheGe (McGill)

Quad trees For a 2D-world, Subdivide the world into four quadrants. Keep subdividing as long there is more than one object per square For 3D-world, Subdivide world into eight octants Slide by M. BlancheGe (McGill)

Quad trees Subdivision is represented as a tree: Root = complete world Children = four quadrants Slide by M. BlancheGe (McGill)

Fast ray intersecton problem To quickly find intersecton between ray and world: Find which main quadrant is intersected Find which of its subquadrant is intersected Keep going down the tree untl a leaf is found If leaf contains an object, then test intersecton ConTnue untl intersecton is found Eye ray Slide by M. BlancheGe (McGill)

Hidden Surface Removal l Objects occluded by other objects must not be drawn

Shading Now we need to decide the colour of each pixels taking into account the object s colour, lightng conditon and the camera positon point light source Object

Shading : Constant Shading - Ambient l Objects colours by its own colour

Shading Flat Shading l Objects coloured based on its own colour and the lightng conditon l One colour for one face

Gouraud shading, no specular highlights l LighTng calculaton per vertex

Specular highlights added l Light perfectly reflected in a mirror-like way

Phong shading

Next, the Imaging Pipeline Geometry Pipeline Rasterization and Sampling Texture Mapping Image Composition Intensity and Colour Quantization Framebuffer/Display

RasterizaTon Converts the vertex informaton output by the geometry pipeline into pixel informaton needed by the video display Aliasing: distorton artfacts produced when representng a high-resoluton signal at a lower resoluton. AnT-aliasing : technique to remove aliasing

AnT-aliasing Aliased polygons ( edges (jagged AnT-aliased polygons

ü How is anti-aliasing done? Each pixel is subdivided (sub-sampled) in n regions, and each sub-pixel has a color; ü Compute the average color value

Texture mapping

Other topics: ReflecTons, shadows & Bump mapping