csc 461: lecture 1 1 lecture 1: introduction objectives explore what computer graphics is about...

20
CSC 461: Lecture 1 CSC 461: Lecture 1 1 Lecture 1: Introduction Lecture 1: Introduction Objectives Objectives Explore what computer graphics Explore what computer graphics is about is about Survey some application areas Survey some application areas Introduce a history of computer Introduce a history of computer graphics graphics

Upload: lee-jefferson

Post on 12-Jan-2016

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 11

Lecture 1: IntroductionLecture 1: Introduction

ObjectivesObjectives

Explore what computer graphics is aboutExplore what computer graphics is about

Survey some application areasSurvey some application areas

Introduce a history of computer graphicsIntroduce a history of computer graphics

Page 2: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 22

Computer GraphicsComputer GraphicsDeals with all aspects of Deals with all aspects of creating images with a creating images with a computer computer – HardwareHardware– Software Software – ApplicationsApplications

ExampleExample– Where did this image Where did this image

come from?come from?– What hardware/software What hardware/software

did we need to produce did we need to produce it?it?

Page 3: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 33

Preliminary AnswerPreliminary Answer

ApplicationApplication: The object is an artist’s : The object is an artist’s rendition of the sun for an animation to be rendition of the sun for an animation to be shown in a domed environment shown in a domed environment (planetarium)(planetarium)

SoftwareSoftware: Maya for modeling and rendering : Maya for modeling and rendering but Maya is built on top of OpenGLbut Maya is built on top of OpenGL

HardwareHardware: PC with graphics cards for : PC with graphics cards for modeling and renderingmodeling and rendering

Page 4: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 44

Basic Graphics SystemBasic Graphics System

Input devices Output device

Image formed in FB

Page 5: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 55

Frame bufferFrame bufferA portion of memory storing pixels – to be A portion of memory storing pixels – to be mapped to the displaymapped to the displayPixels – picture elements encompassing a picture Pixels – picture elements encompassing a picture Picture – produced as array -- the raster – of Picture – produced as array -- the raster – of pixelspixelsVideo/Dynamic Random-Access Memory Video/Dynamic Random-Access Memory (V/DRAM) – fast redisplay of contents of frame (V/DRAM) – fast redisplay of contents of frame bufferbufferDepth of frame buffer – number of bits used for Depth of frame buffer – number of bits used for each pixel, such as color, lighting, shading, each pixel, such as color, lighting, shading, material, etc.material, etc.Resolution – number of pixels in the frame bufferResolution – number of pixels in the frame bufferColors – true color (RGB-color), indexed color Colors – true color (RGB-color), indexed color (discrete color)(discrete color)

Page 6: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 66

Cathode-Ray Tube (CRT) – most PCsCathode-Ray Tube (CRT) – most PCsCalligraphic CRT – line-drawing device, random Calligraphic CRT – line-drawing device, random scan, electron beam emits from any position to any scan, electron beam emits from any position to any positionpositionRaster mode CRT – display the contents of the Raster mode CRT – display the contents of the frame buffer at a rate high enough to avoid flickerframe buffer at a rate high enough to avoid flickerScreen refresh rate – typical CRTs emit light for Screen refresh rate – typical CRTs emit light for only a few milliseconds, redisplay the pictures in a only a few milliseconds, redisplay the pictures in a frequency frequency Two display methods Two display methods – Noninterlaced – pixels displayed row by row, the rate 50-Noninterlaced – pixels displayed row by row, the rate 50-

85 (Hz) times/second – used in computer systems85 (Hz) times/second – used in computer systems– Interlaced – odd rows and even rows refreshed Interlaced – odd rows and even rows refreshed

alternately, first draw at 60 Hz, the refresh rate 30 Hzalternately, first draw at 60 Hz, the refresh rate 30 Hz

Page 7: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 77

CRTCRT

Can be used either as a line-drawing Can be used either as a line-drawing device (calligraphic) or to display device (calligraphic) or to display contents of frame buffer (raster mode)contents of frame buffer (raster mode)

Page 8: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 88

Other Raster Mode Output DevicesOther Raster Mode Output Devices

Liquid-Crystal Display (LCD) – raster Liquid-Crystal Display (LCD) – raster mode, used in laptops, may or may not be mode, used in laptops, may or may not be refreshedrefreshed

Plasma panel – raster mode, used in TVsPlasma panel – raster mode, used in TVs

Page 9: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 99

Computer Graphics: 1950-1960Computer Graphics: 1950-1960

Computer graphics goes back to the Computer graphics goes back to the earliest days of computingearliest days of computing–Strip chartsStrip charts–Pen plottersPen plotters–Simple displays using A/D converters to go Simple displays using A/D converters to go

from computer to calligraphic CRTfrom computer to calligraphic CRT

Cost of refresh for CRT too high Cost of refresh for CRT too high –Computers slow, expensive, unreliableComputers slow, expensive, unreliable

Page 10: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1010

Computer Graphics: 1960-1970Computer Graphics: 1960-1970

Wireframe graphicsWireframe graphics

Project SketchpadProject Sketchpad

Display ProcessorsDisplay Processors

Storage tubeStorage tube

Page 11: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1111

Project SketchpadProject Sketchpad

Ivan Sutherland’s PhD thesis at MITIvan Sutherland’s PhD thesis at MIT–Recognized the potential of man-machine Recognized the potential of man-machine

interaction interaction –LoopLoop

Display somethingDisplay something

User moves light penUser moves light pen

Computer generates new displayComputer generates new display

–Sutherland also created many of the now Sutherland also created many of the now common algorithms for computer graphicscommon algorithms for computer graphics

Page 12: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1212

Display ProcessorDisplay ProcessorRather than have host computer try to refresh Rather than have host computer try to refresh display use a special purpose computer called a display use a special purpose computer called a display processor display processor (DPU)(DPU)

Graphics stored in display list (display file) on Graphics stored in display list (display file) on display processordisplay processor

Host Host compilescompiles display list and sends to DPU display list and sends to DPU

Page 13: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1313

Direct View Storage TubeDirect View Storage Tube

Created by TektronixCreated by Tektronix–Did not require constant refreshDid not require constant refresh–Standard interface to computersStandard interface to computers

Allowed for standard softwareAllowed for standard software

Plot3D in FortranPlot3D in Fortran

–Relatively inexpensiveRelatively inexpensiveOpened door to use of computer graphics for CAD Opened door to use of computer graphics for CAD communitycommunity

Page 14: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1414

Computer Graphics: 1970-1980Computer Graphics: 1970-1980

Raster GraphicsRaster Graphics

Beginning of graphics standardsBeginning of graphics standards–IFIPSIFIPS

GKS: European effortGKS: European effort– Becomes ISO 2D standardBecomes ISO 2D standard

Core: North American effortCore: North American effort– 3D but fails to become ISO standard3D but fails to become ISO standard

Workstations and PCsWorkstations and PCs

Page 15: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1515

Raster GraphicsRaster GraphicsImage produced as an array (the Image produced as an array (the rasterraster) of ) of picture elements (picture elements (pixelspixels) in the ) in the frame bufferframe buffer

Allow us to go from lines and wireframes to Allow us to go from lines and wireframes to filled polygonsfilled polygons

Page 16: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1616

PCs and WorkstationsPCs and Workstations

Although we no longer make the distinction Although we no longer make the distinction between workstations and PCs historically between workstations and PCs historically they evolved from different rootsthey evolved from different roots–Early workstations characterized byEarly workstations characterized by

Networked connection: client-serverNetworked connection: client-server

High-level of interactivityHigh-level of interactivity

–Early PCs included frame buffer as part of user Early PCs included frame buffer as part of user memorymemory

Page 17: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1717

Computer Graphics: 1980-1990Computer Graphics: 1980-1990

Realism comes to computer graphics Realism comes to computer graphics

smooth shading environmental mapping

bump mapping

Page 18: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1818

Computer Graphics: 1980-1990Computer Graphics: 1980-1990

Special purpose hardwareSpecial purpose hardware–Silicon Graphics geometry engineSilicon Graphics geometry engine

VLSI implementation of graphics pipelineVLSI implementation of graphics pipeline

Industry-based standardsIndustry-based standards–PHIGSPHIGS–RenderManRenderMan

Networked graphics: X Window SystemNetworked graphics: X Window System

Human-Computer Interface (HCI)Human-Computer Interface (HCI)

Page 19: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 1919

Computer Graphics: 1990-2000Computer Graphics: 1990-2000

OpenGL APIOpenGL API

Completely computer-generated feature-Completely computer-generated feature-length movies (Toy Story) are successfullength movies (Toy Story) are successful

New hardware capabilitiesNew hardware capabilities–Texture mappingTexture mapping–BlendingBlending–Accumulation, stencil bufferAccumulation, stencil buffer

Page 20: CSC 461: Lecture 1 1 Lecture 1: Introduction Objectives Explore what computer graphics is about Survey some application areas Introduce a history of computer

CSC 461: Lecture 1CSC 461: Lecture 1 2020

Computer Graphics: 2000-Computer Graphics: 2000-

PhotorealismPhotorealism

Graphics cards for PCs dominate marketGraphics cards for PCs dominate market–Nvidia, ATI, 3DLabsNvidia, ATI, 3DLabs

Game boxes and game players determine Game boxes and game players determine direction of marketdirection of market

Computer graphics routine in movie Computer graphics routine in movie industry: Maya, Lightwaveindustry: Maya, Lightwave