Graphics Hardware and Display Devices

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

VTU QUESTION PAPER SOLUTION UNIT -1 INTRODUCTION

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

Pipeline Operations. CS 4620 Lecture 10

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

Pipeline Operations. CS 4620 Lecture 14

CS451Real-time Rendering Pipeline

Graphics Systems and Models

Topics and things to know about them:

CS130 : Computer Graphics Lecture 2: Graphics Pipeline. Tamar Shinar Computer Science & Engineering UC Riverside

How do we draw a picture?

Illumination and Shading

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS

Introduction Rasterization Z-buffering Shading. Graphics 2012/2013, 4th quarter. Lecture 09: graphics pipeline (rasterization and shading)

Image Formation. Introduction to Computer Graphics. Machiraju/Zhang/Möller/Klaffenböck

Computer Graphics Fundamentals. Jon Macey

Overview of Computer Graphics

Image Formation. Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller

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

CS 130 Final. Fall 2015

For Intuition about Scene Lighting. Today. Limitations of Planar Shadows. Cast Shadows on Planar Surfaces. Shadow/View Duality.

CHAPTER 1 Graphics Systems and Models 3

Last Time. Why are Shadows Important? Today. Graphics Pipeline. Clipping. Rasterization. Why are Shadows Important?

Computer Graphics Introduction. Taku Komura

CS602 Midterm Subjective Solved with Reference By WELL WISHER (Aqua Leo)

Computer Graphics. Illumination and Shading

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

CPSC / Illumination and Shading

Chapter 1 Introduction

Last Time. Reading for Today: Graphics Pipeline. Clipping. Rasterization

3D graphics, raster and colors CS312 Fall 2010

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

1. (10 pts) Order the following three images by how much memory they occupy:

Illumination and Shading

CS 464 Review. Review of Computer Graphics for Final Exam

3D Rasterization II COS 426

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

Deferred Rendering Due: Wednesday November 15 at 10pm

Course Title: Computer Graphics Course no: CSC209

Real-Time Shadows. Last Time? Today. Why are Shadows Important? Shadows as a Depth Cue. For Intuition about Scene Lighting

Graphics for VEs. Ruth Aylett

Graphics for VEs. Ruth Aylett

The Traditional Graphics Pipeline

CS4620/5620: Lecture 14 Pipeline

CSE528 Computer Graphics: Theory, Algorithms, and Applications

Computer Graphics and Visualization. Graphics Systems and Models

Computer Graphics Lecture 2

OpenGl Pipeline. triangles, lines, points, images. Per-vertex ops. Primitive assembly. Texturing. Rasterization. Per-fragment ops.

Computer Graphics. Instructor: Oren Kapah. Office Hours: T.B.A.

The Traditional Graphics Pipeline

Lecturer Athanasios Nikolaidis

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

Real-Time Shadows. Last Time? Textures can Alias. Schedule. Questions? Quiz 1: Tuesday October 26 th, in class (1 week from today!

CS5620 Intro to Computer Graphics

Rasterization and Graphics Hardware. Not just about fancy 3D! Rendering/Rasterization. The simplest case: Points. When do we care?


CS 325 Computer Graphics

For each question, indicate whether the statement is true or false by circling T or F, respectively.

Orthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

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

Graphics and Interaction Rendering pipeline & object modelling

(a) rotating 45 0 about the origin and then translating in the direction of vector I by 4 units and (b) translating and then rotation.

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

Graphics and Interaction Surface rendering and shading

Lecture outline Graphics and Interaction Surface rendering and shading. Shading techniques. Introduction. Surface rendering and shading

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR

Mach band effect. The Mach band effect increases the visual unpleasant representation of curved surface using flat shading.

w Foley, Section16.1 Reading

Computer Graphics. Chapter 1 (Related to Introduction to Computer Graphics Using Java 2D and 3D)

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

U.C. Berkeley, EECS, Computer Science TAKE HOME EXAM. Your Class Computer Account: DO NOT OPEN THIS INSIDE SODA HALL -- WAIT UNTIL YOU ARE ALONE!

Computer Graphics I Lecture 11

CSE 167: Lecture #7: Color and Shading. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

End-Term Examination

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

The Traditional Graphics Pipeline

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

Real-Time Shadows. MIT EECS 6.837, Durand and Cutler

CS 130 Exam I. Fall 2015

9. Illumination and Shading

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

Complex Shading Algorithms

- Rasterization. Geometry. Scan Conversion. Rasterization

CEng 477 Introduction to Computer Graphics Fall

Computer Graphics & Image Processing: Exercises

Chapter 7 - Light, Materials, Appearance

... Output System Layers. Application 2. Application 1. Application 3. Swing. UIKit SWT. Window System. Operating System

Homework Graphics Input Devices Graphics Output Devices. Computer Graphics. Spring CS4815

Institutionen för systemteknik

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.

Texture Mapping. Michael Kazhdan ( /467) HB Ch. 14.8,14.9 FvDFH Ch. 16.3, , 16.6

CS 4620 Program 3: Pipeline

Computer Graphics (CS 4731) Lecture 16: Lighting, Shading and Materials (Part 1)

Rasterization Overview

Shading Techniques Denbigh Starkey

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

CSE4030 Introduction to Computer Graphics

CPSC 314 LIGHTING AND SHADING

Transcription:

Graphics Hardware and Display Devices CSE328 Lectures

Graphics/Visualization Hardware Many graphics/visualization algorithms can be implemented efficiently and inexpensively in hardware Facilitates interactive graphics applications, including certain domains of scientific visualization Topics today: Raster devices Video controllers & raster-scan display processors Important rasterization and rendering algorithms Pixels and images CSE328 Lectures

Raster Devices Computer monitors (CRT, LCD, etc.), TVs These are raster devices because they display images on a raster, which is a regular n-d grid Each point on the grid is called a pixel, which stands for Raster dimension given in pixels: 25 x 10 in this example In a monochrome display, each pixel is black or white In a color display, each pixel has an RGB triple CSE328 Lectures

Raster Devices Also called raster-scan displays or systems Pixels are drawn in a strict order, called rasterscan order Cathode ray tube (CRT) shown here Monochrome display CSE328 Lectures

Color Display Technology CRT Cathode ray tube - used in TVs and computer monitors (the large, clunky type) A color CRT has three electron guns: one for red, one for green, and one for blue The beams scan screen in horizontal scanlines Metal mask steers beams CSE328 Lectures

Color Display Technology CRT Each screen pixel consists of a phosphor triple: one glowing red, one green, and one blue A phosphor is a circular spot of phosphorescent material that glows when electrons strike it Red phosphors glow red RGB triad together form a single pixel on screen CSE328 Lectures

Color Display Technology CRT Glowing phosphor triples blend together to form color encoded in RGB triple Amount of energy that electron guns deliver to each phosphor depends on RGB value of image pixel displayed there RGB values between 0 and 1 are mapped to voltages for the guns CSE328 Lectures

Color Display Technology CRT True or false: A color image in a CRT is generated by blending the three colored beams of light that are fired from the back of the monitor and blended on the front surface of the screen CSE328 Lectures

Color Display Technology CRT The phosphors glow only for about 10-60 microseconds Image refreshed 30-60 times per second This rate is called the refresh rate and is given in Hz So if we redraw the image once every 1/60 th of a second, but the image lasts only a few millionths of a second, what about the gap? 1/60 th second is approximately 16667 microseconds (16667-10) microseconds = long delay between refreshes So why is there no visible flicker? CSE328 Lectures

Raster Devices: Display Resolution The raster is not 100% perfect points of light corresponding to pixels can overlap slightly Same is true of raster printing technologies, like laser and injket printers Pixels are more like circles than squares in reality Raster devices are also limited by resolution Computer monitors 1600 x 1200 and higher Laser printers 300 dpi, 600 dpi, 1200 dpi and higher TV resolution? HDTV? CSE328 Lectures

Raster Devices: Color Depth Horizontal lines of pixels are called scanlines TV: 640 HDTV: 720 or 1080 Monochrome monitor has 1 bits per pixel (bpp) Grayscale has 8 bpp (usually) Color monitors most often have 24 bpp: 8 bits each for red, green and blue color channels How many different levels of gray can we represent with 8 bits per pixel? How many different colors can 24-bit color represent? CSE328 Lectures

Image Resolution res = 300 2 pixels res = 150 2 pixels res = 75 2 pixels res =37 2 pixels Image resolution very important in visualization/rendering, why? When might we want to use a low resolution image? CSE328 Lectures

How Many Bits Do We Need? Number of bits per pixel often called bit depth How many bits should we use in practice? #1: 8-bit original image #2: lower 4 bits dropped #3: (image #1 - image #2) #4: image #3 enhanced 1 2 3 4 CSE328 Lectures

Bit Depth Suppose we want to display 256 gray levels, but we have only 1-bit color. What colors can we display? How do we accommodate grayscale images? How do we accommodate color images? Suppose we want to display 16.7 million colors on our color monitor, but we have only 8-bit color. What can we do? CSE328 Lectures

Dithering Dithering is a way to use a mixture of colors to trick eye into seeing colors that cannot be actually represented by display device We can approximate gray by using a combination of black and white: The relative densities of black and white determine the gray value Also called halftoning (vb. to halftone) CSE328 Lectures

Interfacing to the Hardware A lot goes on under the hood in the graphics and display hardware Graphics hardware: converts geometry into pixels Display hardware: displays pixels Simplified hierarchy CSE328 Lectures

Interfacing to the Hardware From perspective of visualization, mechanics of image display aren t too important We are more interested in what software can deliver Not even really interested in computer graphics! We just want to visualize! Why we use VTK and similar programming libraries We can treat everything under VTK as some nebulous black box that converts our 3D shapes into pixels Our building blocks are called graphics primitives But for graphics, we have to understand how pixels are drawn! CSE328 Lectures

Graphics Pipelines Graphics processes generally execute sequentially Typical pipeline model There are two graphics pipelines The Geometry or 3D pipeline The Imaging or 2D pipeline

Graphics Primitives CSE528 Lectures

Graphics Primitives Vertex: position, normal, color how many values total? Polygon: series of connected vertices CSE528 Lectures

Graphics Primitives Normal vectors: why for vertices? If our polygonal object came from curved surface, vertex normals will not be same as polygonal normals CSE528 Lectures

Geometry Pipeline Animation/Interaction : time Modeling: shapes Shading: reflection and lighting Transformation: viewing Hidden Surface Elimination Imaging Pipeline

Imaging Pipeline Geometry Pipeline Rasterization and Sampling Texture Mapping Image Composition Intensity and Color Quantization Framebuffer/Display

Rasterization We looked at raster devices and some different kinds of geometric objects we might wish to draw on the screen Process of converting geometry into pixels is called rasterization or scan-conversion Each triangle in our model is transformed (rotated, etc.) and projected by the transformation and projection matrices Next we clip each triangle to the image plane Each triangle is entirely inside, entirely outside, partially visible w.r.t the image plane CSE328 Lectures

Rasterization We will take an object-order approach Question: In contrast, ray-tracing is what-order? We process each triangle one by one After we transform and clip it, we rasterize it we figure how what pixels on screen we need to update to draw the triangle on screen CSE328 Lectures

Rasterization We will process the triangle in scan-line order: left-to-right starting at top left corner, moving right and down CSE328 Lectures

Rasterization We sort the vertices by their y values and find the vertex with the maximal y value; call this vertex v 0 CSE528 Lectures

Rasterization This sorting allows us to identify the other two vertices, v 1 and v 2 CSE528 Lectures

Rasterization Using the slopes of the edges we can compute each row of pixels to process, called a span of pixels CSE528 Lectures

Rasterization Across each polygon we interpolate various data values d i for each pixel Example: RGB to assign colors to vertices CSE528 Lectures

Rasterization But where do we get the RGB values? We will have to look at shading and illumination Now we will see how the theory is put into practice We will look at three ways of implementing the illumination equations: Flat surface rendering Gouraud surface rendering Phong surface rendering CSE328 Lectures

An Example through the Pipeline The scene we are trying to represent: Images courtesy of 32Picture Inc.

Wireframe Model Orthographic Views

Perspective View

Depth Cue

Hidden Line Removal Add Color

Constant Shading - Ambient

Faceted Shading - Flat

Gouraud Shading, No Specular Highlights

Specular Highlights 40

Phong Shading 41

Texture Mapping 42

Texture Mapping

Reflections, Shadows & Bump mapping 44