• No results found

Introduction Week 1, Lecture 1

N/A
N/A
Protected

Academic year: 2021

Share "Introduction Week 1, Lecture 1"

Copied!
11
0
0

Loading.... (view fulltext now)

Full text

(1)

1

CS 430/585

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

http://gicl.cs.drexel.edu

2

Overview

• Course Policies/Issues

• Brief History of Computer Graphics • The Field of Computer Graphics:

A view from 66,000ft • Structure of this course • Homework overview

• Introduction and discussion of homework #1

3

Computer Graphics I:

Course Goals

• Provide introduction to

fundamentals

of

2D and 3D computer graphics

– Representation (lines/curves/surfaces) – Drawing and viewing

– Implementation

• simple frame buffer with XPM format • Lines, circles, Bezier and NURBS curves • Drawing algorithms

4

FYI: Computer Graphics II

• 3D Computer Graphics

• Ray tracing algorithm

• Lighting, rendering, photorealism

• Bezier & polygonal meshes

• Hierarchical models

(2)

5

FYI: Computer Graphics II

6

Computer Graphics I:

Technical Material

• Course coverage

– Geometric transformations, 2D raster graphics, 2D viewing, 2D curves

– 3D viewing, 3D curves and surfaces – Splines, B-Splines and NURBS

– 3D drawing, hidden line removal, Z-buffering, ray tracing – Solid Modeling • Chapters: 1, 5, 3, 6, 9, 10, 11, 12, 13 7

Computer Graphics I:

Course Highlights

• Bresenham’s scan conversion algorithm

• Cohen-Sutherland clipping algorithm

• The De Casteljau Algorithm

• B-Splines, NURBS, De Boor’s Algorithm

• Z-buffer algorithm; backface culling

• Ray casting/tracing of 3D shapes and

surfaces

8

Computer Graphics I:

Course Management Issues

• All course policies are in the syllabus • Extensive use of PDF handouts • Must read email list every day

• There will be 6 programming assignments (plan on minimum of 8-to-10 hrs)

• Suggestion: print out handouts before class, use them to take notes

(3)

9

Computer Graphics I:

Collaboration Policies

• Thou Shall

– write your own code – do your own math

– attribute any work that is not your own – talk among yourselves, share ideas

• Thou Shall Not

– Share code

– Use ideas without attribution – Utilize geometry/graphics libraries

• All code will be auto checked for plagiarism

• Violations will result in an automatic F 10

Course Policies

Late policy:NO late homeworks, No excuses. • (Some considerations may be given for a valid

medical reason)

NO Cell phones!Cell phone ring = extra homework

NO cheating.You caught you get “F”. No mercy. • No extra homework's, projects or tests to

“improve the grade” will be given after the final. • Partial credit –for implementing some of the

requirements. Code that does not compile or does not produce output will get 0 points.

11

Book

Required Supplemental

Computer Graphics, C Version, Donald Hearn, M. Pauline Baker, 2nd Edition, Prentice Hall, 1997, ISBN: 0135309247

Introduction to Computer Graphics, by James D. Foley, Andies Van Dam, Steven K. Feiner. Addison-Wesley Pub Co; ISBN: 0210609215

12

(4)

13

Computer Graphics:

A Brief History

• In The Beginning… 1963 Ivan Sutherland’s Sketchpad • Modified oscilloscope for drawing

• The original CAD system

Courtesy Marc Levoy @ Stanford U 14

Graphics Hardware History

Display Hardware • vector displays

– 1974 – E&S Picture System

• raster displays

– 1975 – E&S frame buffer – 1980s – cheap frame buffers →

bit-mapped personal computers – 1990s – liquid-crystal displays

→laptops

– 2000s – micro-mirror projectors

→digital cinema

• Other developments

– stereo, head-mounted displays – autostereoscopic displays – tactile, haptic, sound

Input Hardware • 2D

– light pen, tablet, mouse, joystick, track ball, touch panel… – 1970s & 80s - CCD analog image

sensor + frame grabber – 1990s & 2000’s - CMOS digital

sensor + in-camera processing

→high-X imaging (dynamic range, resolution, depth of field,…)

• 3D – 3D trackers, 3D scanners – multiple cameras – active rangefinders • other – data gloves – voice

Courtesy Marc Levoy @ Stanford U

15

Computer Graphics from 66,000ft

• User Interaction/GUI

• 2D graphics and image processing • 3D graphics/modeling • Animation/Simulation • Photorealism • Virtual Reality • Graphics Hardware • Graphics programming environments Example of a JPG image. 16

2D Graphics

Raster: Pixels – X11 bitmap, XBM – X11 pixmap, XPM – GIF – TIFF – PNG – JPG

Lossy, jaggies when transforming, good for photos. • Vector: Drawing instructions – Postscript – CGM – Fig – DWG

Non-lossy, smooth when scaling, good for line art and diagrams.

(5)

17

2D Graphics

Raster:Vector: 18

Adobe Photoshop:

2D Raster Graphics

19

2D Raster Graphics

20

Adobe Illustrator:

2D Vector Graphics

(6)

21

2D Vector Graphics

22

Graphics Displays

• Nearly all video displays today are RASTER • How do we go from bits and shapes to pixels on a raster display?

Via Dave Mount @ UMD-CP

23

The Frame Buffer

• Video memory holding pixels from which the video display is refreshed

– I.e. essentially a pix/bit map, a Raster image

• Usually implemented on hardware cards

– Smart frame buffers

• Accelerated 2D and 3D interaction • Color depth (1, 8, 16, 24, 32 bit), Z-buffering • Double buffering: use of a second memory

space to reduce visual artifacts, i.e. swap in-and-out screen buffers

24

3D Rendering

• 1960s - the visibility problem

– Roberts (1963), Appel (1967) -hidden-line algorithms – Warnock (1969), Watkins (1970) - hidden-surface algorithms – Sutherland (1974) - visibility = sorting • 1970s - raster graphics – Gouraud (1971) - diffuse lighting

– Phong (1974) - specular lighting – Blinn (1974) - curved surfaces,

texture

– Catmull (1974) - Z-buffer hidden-surface algorithm – Crow (1977) - anti-aliasing

(7)

25

3D Rendering

Toward Reality • early 1980s - global

illumination

– Whitted (1980) - ray tracing – Goral, Torrance et al.

(1984), Cohen (1985) -radiosity

– Kajiya (1986) - the rendering equation

• late 1980s - photorealism

– Cook (1984) - shade trees – Perlin (1985) - shading

languages

– Hanrahan and Lawson

(1990) - RenderMan Courtesy Marc Levoy @ Stanford U 26

Present Developments

• early 1990s - non-photorealistic rendering – Drebin et al. (1988), Levoy (1988) - volume rendering – Haeberli (1990) -impressionistic paint programs – Salesin et al. (1994) -automatic pen-and-ink illustration – Meier (1996) - painterly rendering

Courtesy Marc Levoy @ Stanford U

27

Application Areas

Entertainment • CAD/CAM • Scientific & Medical visualization • Training & Education • Synthetic Realities – VR, commerce, etc

• Art and design

Pixar 28

(8)

29

Application Areas

• Entertainment • CAD/CAM • Scientific & Medical visualization • Training & Education • Synthetic Realities – VR, commerce, etc

• Art and design τs=M(θ)⋅θ&&+V(θ,θ&)+G(θ)+F(θ,&θ)

Regli et al @ Drexel 30

Lego Model of Windshield

Viper

• Automated design representation and reasoning project • Undergrad Joe Kopena @ Drexel • Animated using

I-DEAS CAD package

Animated by Max Peysakhov @ Drexel University

31

Lego Model

of

Windshield

Viper

Animated by Max Peysakhov @ Drexel University

32

Application Areas

• Entertainment • CAD/CAM • Scientific & Medical Visualization • Training & Education • Synthetic Realities – VR, commerce, etc

• Art and design

(9)

33 http://space.jpl.nasa.gov/ 34

Application Areas

• Entertainment • CAD/CAM • Scientific visualization • Training & Education • Synthetic Realities – VR, commerce, etc

• Art and design

Boeing Hamburg U, Germany 35

Application Areas

• Entertainment • CAD/CAM • Scientific visualization • Training & Education • Synthetic Realities – VR, commerce, etc

• Art and design

FakeSpace Cave Telepresence Id Software UCLA 36

Application Areas

• Entertainment • CAD/CAM • Scientific visualization • Training & Education • Synthetic Realities – VR, commerce, etc

Art and design

(10)

37

Structure of this course…

• Mathematical Preliminaries • 2D Viewing, Raster

Graphics, 2D Transformations • Representing and

Drawing Lines, Arcs and Curves • 3D modeling and drawing, surfaces • More advanced topics

– Hidden lines, Z-buffering, ray tracing, fractals

38

Programming Assignments

No APIs: OpenGL, GLUT, Mesa, DirectX… • Just grayscale rendering

• Output in the form of 2D bitmaps

– XPM: X11 Pixmap Format

– You will need to write your own code to write XPM

• Program executable + source to be handed in with SUBMIT command

Executable MUST RUN on Solaris

Whatever language you want, so long as you can

deliver a statically linkedexecutable (lisp, c, c++, java, …)

39

For programming assignments

• Use XPM as B/W “software” frame buffers • We will be implementing parts of the

2D Engine, 3D Engineand Pixel Cacheof a graphics accelerator

• Issue: How to translate the mathematics of 2D/3D shapes to the 2D screen?

• Tip: Renew your friendship with your linear algebra textbook

• Read homeworks ahead. It will help you to structure your code for future requirements.

40

Programming Assignments

Dependency

HW 1 HW 2 HW 3 HW 4 HW 5 HW 6 HW 7 HW 8 HW 9 Write XPM file 2D Transformations Window to Viewport Transformation Line Drawing 2D Line Clipping Polygon Filling Polygon Clipping Circle Drawing Circle Clipping

HW 5 Bezier Curve Drawing Anti-aliasing Thick Primitives 3D Viewing 3D Clipping Z-Buffering Backface Culling HW 9 Bezier Surfaces HW 1 HW2 HW 3 HW 4 HW 6 HW 8 HW 7 Extra credit

(11)

41

And If You’re Lucky

42

Programming assignment 1

• None

• Output B/W XPM

• Primary I/O formats for the course

• Create data structure to hold points and

lines in memory (

the world model

)

• Implement 2D translation, rotation and

References

Related documents

U nastavku rada opisani su: komunikacijsko-funkcionalan pristup učenju, koji je usko povezan s napuštanjem tradicionalnog poučavanja te usvajanjem metoda i postupaka koje će

To put it in simple terms for the sake of clarification: one group (that is, Ismaՙilis from Syria, Tajikistan, and Iran) is disposed to see religion and the secular more in terms

Make measurements on timeslot 0 [FREQUENCY] {Timeslot Off} [Enter] Activate the ORFS measurement (figure 25) [MEASURE] {GMSK Output RF The default setting measures spectrum

Using a nationwide database of hospital admissions, we established that diverticulitis patients admitted to hospitals that encounter a low volume of diverticulitis cases have

This study aims to provide a category-based account of CF-reduplications by means of a prototype category, dynamic prototypes and contrastive focus effects.. In 2.1, we revisit

Note that the financial aid administrator at your school may require you to provide proof that your parent is a dislocated worker, if you answered “Yes” to question 85, or that you

participated in analyses leading to the decision to initiate a Manned Orbiting Laboratory (MOL) project.. space activities, and reviewed space accomplishments and potential

After prolonged debate, Senate confirmed nominations of the 14 incorporators of Communications Satellite Corp. Bisplinghoff, Director of NASA Office of Advanced