0% found this document useful (0 votes)
22 views79 pages

Foundation of Computer Graphics

This document provides an introduction and overview of a computer graphics course. It outlines the course topics which include 2D and 3D modeling, surface identification, illumination techniques, and mathematical foundations. It defines computer graphics as the creation and manipulation of images using a computer. The applications of computer graphics are discussed, including information display, design, simulation, and user interfaces. A brief history of the field is also presented.

Uploaded by

Pak Yun
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views79 pages

Foundation of Computer Graphics

This document provides an introduction and overview of a computer graphics course. It outlines the course topics which include 2D and 3D modeling, surface identification, illumination techniques, and mathematical foundations. It defines computer graphics as the creation and manipulation of images using a computer. The applications of computer graphics are discussed, including information display, design, simulation, and user interfaces. A brief history of the field is also presented.

Uploaded by

Pak Yun
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd

UPI YPTK - Padang

Introduction to Computer
Graphics
Eko Syamsuddin Hasrito, PhD

204481 Computer Graphics

September 13, 2016

Lecture Outline

Course Information: Format, Resources


Overview

Topics covered

What is computer graphics?

Applications

204481 Foundation of Computer Graphics

September 13, 2016

Resources

204481 Foundation of Computer Graphics

September 13, 2016

Course Overview (1/2)

Graphics Systems and


Techniques

2-D, 3-D models: surfaces,


visible surface identification,
illumination

Photorealistic rendering :
shading models, ray tracing,
radiosity

Operations

Surface modeling, mapping

Pipelines for display,


transformation, illumination

204481 Foundation of Computer Graphics

September 13, 2016

Course Overview (2/2)

Mathematical Review

Review of mathematical foundations of CG:


analytic geometry, linear algebra

Line and polygon rendering

Matrix transformations

204481 Foundation of Computer Graphics

September 13, 2016

Relevant Disciplines

Rendering Hardware
VR Systems
Portable/Embedded CG

Analytic Geometry
Art and Graphic Design
Color/Optical Models
Cognitive Science
CG/Vision Duality
Interface Design
Computer Engineering
Engineering Design
Layout
CG Design
Education
Visualization
Film
Parametric Equations
Conics
Human Factors
Polygon Rendering
Linear Algebra
Numerical Analysis

CAD
CAE / CASE
CAM

Immersive Training
Tutoring Interfaces

Computer
Graphics
(CG)

Surface Modeling
Physically-Based Modeling
Stat/Info Visualization
Transformations
Change of Coordinate Systems

204481 Foundation of Computer Graphics

User Modeling
Ergonomic Interfaces, I/O

September 13, 2016

Animation
Large-Scale CG

What is Computer Graphics?

204481 Foundation of Computer Graphics

September 13, 2016

This is not Computer Graphics

[ 29:akin@[Link] ] Re: Future development of


PEX/PHIGS]
[ 9:bthompso@reed] What is a good book for
Digital Image Processing]
[ 15:csp48@[Link]] Help! ASCII picture needed
[ 14:rcj2@cbnewsd.] Re: 3D igitizers again
[240:raj@[Link]] Call For Papers -- ACM
Multimedia '93

204481 Foundation of Computer Graphics

September 13, 2016

What is Computer Graphics ?

Computer graphics is commonly


understood to mean the creation, st
orage and manipulation of models a
nd images. (Andries van Dam)
Computer graphic is concerned with

all aspects of producing pictures or


images using a computer.
the pictorial synthesis or real or
imaginary objects from their computer
based model

204481 Foundation of Computer Graphics

September 13, 2016

Computer Graphics

Computer Graphics

Synthesis of graphical images


Visualization :

creating an image from an abstract, symbolic


description.

Generation of Synthesis Image

using graphical primitives


data from real world phenomena

204481 Foundation of Computer Graphics

September 13, 2016

10

Image Processing

Image Processing

the transformation of an existing image into a


more desirable or useful image.

image enhancement, pattern detection

The following images represent how noise affects images


204481 Foundation of Computer Graphics

September 13, 2016

11

Image Analysis

Image Analysis (Computer Vision)

extracting symbolic information from the


image.

Computer Graphics
Image Processing
Image Analysis

Data
=> Picture
Picture => Picture
Picture => Data

204481 Foundation of Computer Graphics

September 13, 2016

12

What is Interactive Computer Graphics?

User controls contents, structure, and


appearance of objects and their displayed images
via rapid visual feedback
Basic components of an interactive graphics
system

input (e.g., mouse, tablet and stylus, force feedback


device,scanner)
processing (and storage)
display/output (e.g., screen, paper-based printer, video
recorder)

204481 Foundation of Computer Graphics

September 13, 2016

13

Why Computer Graphics? (1/5)

Humans communicate well with images

1/3 of your brain is devoted to visual


processing

A picture is worth a few hundred


megabytes

204481 Foundation of Computer Graphics

September 13, 2016

14

Why Computer Graphics? (2/5)

Developing Computational Capability

Rendering: synthesizing realistic-looking,


useful, or interesting images

Animation: creating visual impression of motion

Image processing: analyzing, transforming,


displaying images efficiently

204481 Foundation of Computer Graphics

September 13, 2016

15

Why Computer Graphics? (3/5)

Better Understanding of Data, Objects,


Processes through Visualization

Visual summarization, description,


manipulation

Virtual environments (VR), visual monitoring,


interactivity

Human-computer intelligent interaction (HCII):


training, tutoring, analysis, control systems

204481 Foundation of Computer Graphics

September 13, 2016

16

Why Computer Graphics? (4/5)

Time is Right

Recent progress in algorithms and theory

Rapidly emergence of new I/O (display and data


acquisition) technologies

Available computational power, improving priceperformance-ratio of hardware

Growth and interest of graphics industries (e.g.,


information visualization, entertainment CAD)

204481 Foundation of Computer Graphics

September 13, 2016

17

Why Computer Graphics? (5/5)

advances in the last decade due mostly to the


microchip
software advances, especially in object-oriented
programming and real-time rendering algorithms
Hardware advances continue to benefit graphics:

faster inexpensive microprocessors and dedicated


graphics chips
screen technology: High-definition television (HDTV),
colour LCD
virtual reality interfaces (corneal implants?)

204481 Foundation of Computer Graphics

September 13, 2016

18

Image Synthesis Pipeline


Graphics
Database
Editing

Front-End

(Geometry Processing)

Graphics
Database

Back-End

(Rasterization)

Display
Traversal

Modeling
Transformation

Viewing
Operation

Visible-Surface
Determination
Scan Conversion
Shading /
Illumination

204481 Foundation of Computer Graphics

September 13, 2016

Image

19

A Brief History

teletype printouts were first graphical output devices


lightpens were an early input device CAD applications beg
an in the 1960's plotters also a 60's development: high-res
olution, but slow main bottlenecks of computer graphics ba
ck then

cost of graphics hardware

expense of computer resources

batch systems weren't suitable


for interactive graphics

non-portability of hardware and


software

a new field: technology was


primitive

204481 Foundation of Computer Graphics

September 13, 2016

20

History of Computer Graphics


(1/5)

1950 MITs Whirlwind


computer had computer
generated CRTs mid 19
50s SAGE command an
d control
1960s Ivan Sutherlands
thesis - Sketchpad

introduced data
structures and interactive
techniques

[Link]
204481 Foundation of Computer Graphics

September 13, 2016

21

History of Computer Graphics


(2/5)

1960s GM (general Motor)

developed CAD (Computer Aided Design) and


CAM

1968 Tektronix storage tubes


1970s Boeing CAD CAM

204481 Foundation of Computer Graphics

September 13, 2016

22

History of Computer Graphics


(3/5)

Mid 1970s engineering workstations and personal


computers emerged separately
1980s new algorithms and techniques

new standards
ever more powerful system
transition from specialized field

1990s widespread use

low cost, but powerful personal workstations


networks
essential part of systems
now part of multimedia

204481 Foundation of Computer Graphics

September 13, 2016

23

History of Computer Graphics


(4/5)
At first - progress was slow because
cost of equipment was high (specially
memory)
significant computing resources needed
difficulty in writing software ( harder than it
looks)
lack of standard and thus portability
lack of software tools
204481 Foundation of Computer Graphics

September 13, 2016

24

History of Computer Graphics


(5/5)
Now - previous use
cost of equipment is low.
Most computer have necessary
computing resources for graphics
established standards,
implementations and tools
still difficulty in writing software ( still
harder than it looks)
204481 Foundation of Computer Graphics

September 13, 2016

25

Some of Historical Picture (1/2)

First truly interactive graphics


system, Sketchpad, pioneered
at MIT by Ivan Sutherland for h
is 1963 Ph.D. thesis. Sketchpad
, A Man-Machine Graphical Comm
unication System:

204481 Foundation of Computer Graphics

Sketchpad in 1963. Note the


use of a CRT monitor, light pen
and function-key panel.

September 13, 2016

26

Some of Historical Picture (2/2)

[Link]

John VonNeuman

[Link]
204481 Foundation of Computer Graphics

September 13, 2016

Mark I
27

Applications of Computer
Graphics
Applications of Computer Graphics
divided in 4 majors area
Display of Information
Design
Simulation
User Interface

204481 Foundation of Computer Graphics

September 13, 2016

28

Display of Information

Geographic
information system
(GIS)
Computerized
Tomography (CT)
Magnetic resonance
imaging (MRI)
Ultrasound
positron-emission
tomography (PET)

[Link]

[Link]

204481 Foundation of Computer Graphics

September 13, 2016

29

Design

Computer-Aided Design (CAD)


Architecture
Design of Mechanical part
VLSI
etc...

[Link]
204481 Foundation of Computer Graphics

September 13, 2016

30

Simulation

Graphical flight simulator

Robotic simulation
TV, Movie, advertising industries

reduce training process


The Concorde Panel.

generate photo realistic images

Virtual Reality (VR)

reduce risk of training


surgery
astronaut

[Link]

204481 Foundation of Computer Graphics

September 13, 2016

31

User Interfaces

Window system
Window 2003
X window
MAC OS

Graphical Network browsers


Netscape
Internet Explorer

204481 Foundation of Computer Graphics

September 13, 2016

32

Areas of research in Graphics


(1/2)

mathematical modeling:

interpolation, curve and surface fitting


computational geometry: algorithmic
applications in geometry
study of light and optical phenomenon: colour,
texture, shades
modelling the characteristics of physical
objects (bouncing Jello)

204481 Foundation of Computer Graphics

September 13, 2016

33

Areas of research in Graphics


(2/2)

Software technology

standardized graphics languages and libraries


graphics tools and interfaces
algorithm design

Hardware

specialized graphics chips, monitors, interface


devices

204481 Foundation of Computer Graphics

September 13, 2016

34

Graphics Applications

Entertainment: Cinema
Pixar: Geris Game

Universal: Jurassic Park

Antz

204481 Foundation of Computer Graphics

A bugs Life
September 13, 2016

35

Graphics Applications (1/4)

Entertainment: Games
Aki Ross : Final Fantasy

Star Wars Jedi Outcast: Jedi Knight II

204481 Foundation of Computer Graphics

Quake III
September 13, 2016

36

Graphics Applications (2/4)

Medical Visualization

204481 Foundation of Computer Graphics

September 13, 2016

The Visible Human Project

[Link]

37

Graphics Applications (3/4)

Computer Aided Design (CAD)

204481 Foundation of Computer Graphics

September 13, 2016

38

Graphics Applications (4/4)

Scientific Visualization

204481 Foundation of Computer Graphics

September 13, 2016

39

Hypermedia User Interfaces


(1/2)
NCSA D2K:
[Link]
Visual programming system for
high-performance knowledge
discovery in databases (KDD)

Hypermedia

Database format (similar to hypertext) that provides display-based


access to (internetworked) multimedia (text, image, audio, video,
etc.) documents

Chimera: [Link]

204481 Foundation of Computer Graphics

September 13, 2016

40

Hypermedia User Interfaces


(2/2)

Virtual Environments

Immersion: interactive
training, tutoring systems

Entertainment hypermedia

Visualization and ComputerAided Design and Engineering


(CAD/CAE)

Visualization: scientific,
data/information, statistics

User interfaces for


CAD/CAE/CAM/CASE:
[Link]
[Link]

204481 Foundation of Computer Graphics

September 13, 2016

41

Curve and Surface Modeling


1

[Link]
3
4

204481 Foundation of Computer Graphics

September 13, 2016

42

Photorealistic Illumination
Models
[Link]

[Link]

204481 Foundation of Computer Graphics

[Link]

September 13, 2016

43

Fractal Systems

[Link]
204481 Foundation of Computer Graphics

September 13, 2016

44

Information Visualization

Visible Decisions SeeIT


204481 Foundation of Computer Graphics

([Link]
September 13, 2016

45

Interesting Industrial
Applications

6500 news stories


from the WWW
in 1997

Cartia ThemeScapes [Link]

Hypermedia and Statistical Visualization


Normal
Ignited
Engulfed

Destroyed
Extinguished
Fire Alarm
Flooding

DC-ARM [Link]

204481 Foundation of Computer Graphics

Virtual Environments for


Immersive Training
September 13, 2016

46

Overview of Programmers Model


(1/2)

Pixel - smallest addressable unit of display


Hardware (I/O)

output display device (normally raster scan)


on the order of a million pixels displayed
image stored in memory by pixel
(how much memory?)

video controller
scans the memory periodically (30-72 times a second)
produces video signal to drive a video monitor (or flat screen di
splay)
input devices - keyboard, mouse (track ball), tablet, voice etc.

204481 Foundation of Computer Graphics

September 13, 2016

47

Overview of Programmers Model


(2/2)
Software
application data
application program
graphics interface
operating system

204481 Foundation of Computer Graphics

September 13, 2016

48

Graphical System And Standard


(1/5)

Graphical Systems

High level language interface to graphical


devices.
Intended for development of portable code.
Standard graphical systems include

CORE,
Graphical Kernel System (GKS), GKS+
Programmers Hierarchical Interactive Graphics
System (PHIGS), PHIGS+
OpenGL, DirectX, Quickdraw 3D, VRML,
Open Inventor, X-Windows.

204481 Foundation of Computer Graphics

September 13, 2016

49

Graphical System And Standard


(2/5)

Requirements of Graphical Systems

Portability

Device Independence
Concept of a logical device.
Language Independence
Language Bindings for graphical systems.
Computer Independence
Trade-off between standard hardware and high
performance hardware.

Programmer Independence
Flexibility - In conflict with portability.

204481 Foundation of Computer Graphics

September 13, 2016

50

Graphical System And Standard


(3/5)

Graphical Kernel System (GKS)


Workstation

GKS has concept of a workstation.

Device Normalisation

World Coordinates, Window in World Coordinates


Clipping to the window
Normalised Device Coordinates [0,1]x[0,1]
Normalisation Transformation
Viewports in normalised device coordinates

204481 Foundation of Computer Graphics

September 13, 2016

51

Graphical System And Standard


(4/5)

Output Functions

Line-Drawing Primitives
Area-filling primitives
Text Output

Input Functions

Logical input types : Locator, Valuator, Choice,


String, Pick, Stroke.

204481 Foundation of Computer Graphics

September 13, 2016

52

Graphical System And Standard


(5/5)

Input Modes

Request mode: waits for a request for an event.


Sample mode: continually samples value of input
device.
Event mode: unsolicited input stored on a stack,
made available for processing in FIFO order.
Mixed mode.

204481 Foundation of Computer Graphics

September 13, 2016

53

Professional Societies
ACM SIGGRAPH
- Association for Computing
Machinery Special Interest G
roup in Graphics

IEEE
- The Institute of Electrical and
Electronics Engineers,
Technical Committee on Com
puter Graphics
204481 Foundation of Computer Graphics

September 13, 2016

54

Software Portability and


graphics standards
STANDARD ORGANIZATION
ANSI = American National
Standard Institute (private,
non government)
ISO = International
Standards
Organization(voluntary,
non treaty)
ANSI is a member of ISO
204481 Foundation of Computer Graphics

September 13, 2016

55

History: graphics libraries

initially, low-level device-dependent


packages were the norm

movement towards high-level deviceindependent packages, in order to promote


application program portability

requires standardization:

204481 Foundation of Computer Graphics

September 13, 2016

56

Official Standards

1977 and 1979 - 3D SIGGRAPH CORE (ACM


SIGGRAPH)
3D Core Graphics System ("Core") dev'd in late
70's as unofficial std
GKS (Graphical Kernel System, 1985): official 2D
standard built from Core
GKS-3D (1988): 3d objects ANSI X3.124-1985
PHIGS (Programmer's Hierarchical Interactive
Graphics System, 1988) 3D nested objects
PHIGS+ (1988): rendering enhancements

204481 Foundation of Computer Graphics

September 13, 2016

57

Emerging Standards in APIs

OpenGL (developed by Silicon Graphics)

open standard
available on all platforms
intended for professional-level graphics like
CAD

Direct3D

developed by Microsoft
Windows only
intended for games

204481 Foundation of Computer Graphics

September 13, 2016

58

Some Notable Systems

Tektronix commands in BASIC (mid-1970s)


HP commands (Hewlett Packard)
Microsoft BASIC (for PCs) graphics
commands (early 1980s)
QuickDraw (Apple Macintosh)
X (MIT)
OpenGL (Silicon Graphics)
SRGP (Simple Raster Graphics Package)
SPHIGS (Simple PHIGS)
MS Windows
Java AWT

204481 Foundation of Computer Graphics

September 13, 2016

59

Good graphics requires ? (1/3)

ability to control every dot (pixel) of display


ability to control primitive shapes on the screen
models to deal with images as a whole
use of color, lighting, and shading
construction of "languages" or "packages" to
extend languages
knowledge of hardware
systems work

204481 Foundation of Computer Graphics

September 13, 2016

60

Good Graphics requires ? (2/3)

mathematical transformations and


representations
transmission of pictures and commands to
make pictures
ability to store lots of information
high performance computers
algorithms such as visible surface
algorithms

204481 Foundation of Computer Graphics

September 13, 2016

61

Good Graphics requires ? (3/3)


understanding and manipulation of
data structures
good software engineering principles
human factors engineering
some feeling for artistic principles
lots of effort - harder than it looks

204481 Foundation of Computer Graphics

September 13, 2016

62

Lecture Topics

Introduction
Mathematical
Foundation
Coordinate Systems
Introduction to
Graphics in 2D
Windows and Clipping
Introduction to
Graphics in 3D
Viewing in 3D

204481 Foundation of Computer Graphics

Visible Surface
Determination

Algorithm efficiency

Z-buffer algorithm

Scan line algorithms

Visible-surface Ray Tracing

Other algorithms

Color Models

Illumination and Shading

September 13, 2016

63

Mathematical foundation

Mathematical appears throughout 3D graphics

Example:

Object surfaces can be represented as polygons


whose vertex position are specified by vectors
Rendering requires testing whether vertices lie in
front of or behind various planes.
The test involves a dot product with the planes
normal vector.

204481 Foundation of Computer Graphics

September 13, 2016

64

Geometric transformation
Goal: specify objects position and
orientations in a 3D world
Use Linear transformations that rotate
and translate objects vertices.
Apply these transformations in matrix
form

204481 Foundation of Computer Graphics

September 13, 2016

65

Viewing
Goal: map the visible part of a 3D
world to a 2 D image
Use camera-like parameters to define
a 3D view volume
Project the view voulme onto a 2D
image plane
Map viewport on the image plane to
the screen

204481 Foundation of Computer Graphics

September 13, 2016

66

OpenGL

OpenGL is strictly defined as a software


interface to graphics hardware.
It is a 3D graphics and modeling library
variety purposes, CAD engineering,
architectural applications, computer-genera
ted dianosaurs in blockbuster movies
Developed by SGI

204481 Foundation of Computer Graphics

September 13, 2016

67

Clipping

Goal: cut off the part of objects outside


the view volume to avoid rendering
them

204481 Foundation of Computer Graphics

September 13, 2016

68

Scan Conversion
Goal: convert a project, clipped object
into pixels on raster lines.
Use efficient incremental methods

204481 Foundation of Computer Graphics

September 13, 2016

69

Antialiasing
Raster displays produce blocky
aliasing artifacts
Antialiasing techniques reduces the
problem by applying the theory of sam
pling and signal processing

204481 Foundation of Computer Graphics

September 13, 2016

70

Color
Various color spaces provide ways to
specify colors in term of components:
red, green, blue
hue, saturation, value
Different output devices display
different subsets of the perceptible col
ors

204481 Foundation of Computer Graphics

September 13, 2016

71

Hidden Surface Removal

When several overlapping polygons are


drawn on the screen, which one is on
top?
Which is
right?

204481 Foundation of Computer Graphics

September 13, 2016

72

Z-buffering

A fast hardware solution is


the Z-buffer
The depth of each pixel
relative to the screen is
calculated and saved in a
buffer
The pixel with the smallest
depth is the one that is
displayed
The other pixels are on
surfaces that are hidden

204481 Foundation of Computer Graphics

This pixel is
drawn on
screen

September 13, 2016

Screen
Polygons

73

Lighting Models and Shading

For visual realism, lighting


models have been developed to
illuminate the surfaces of solid
models
These models incorporate

Ambient lighting:

ambient lighting and illumination


diffuse reflection of directional
lighting
specular reflection of directional
lighting

204481 Foundation of Computer Graphics

September 13, 2016

incident
light

reflected light

incident
light

reflected light

74

Ray Tracing
Light Source
Shadow Ray
Eye
Eye Ray

Object

Shadow Ray
Object
Light Source

Ray tracing traces a ray of


light from the eye to a light
source
Ray tracing realistically
renders scenes with shiny
and transparent objects

204481 Foundation of Computer Graphics

September 13, 2016

75

Radiosity

Diffuse illumination
results from the
absorption and reflection
of diffuse light from
many objects in the
scene
Radiosity uses thermal
models of emission and
reflection of radiation to
accurately calculate
diffuse lighting

204481 Foundation of Computer Graphics

Radiosity is very good at


rendering architectural
interiors

September 13, 2016

76

Texture Mapping

For realism, photographic textures are


mapped onto the surfaces of objects
Example textures:

woodgrain
concrete
grass
marble

texture
mapping

reflections

shadows

Texture mapping is very computationally


intensive

204481 Foundation of Computer Graphics

September 13, 2016

77

Example of Shading

Wireframe

Smooth Shaded
204481 Foundation of Computer Graphics

Flat Shaded

Shadows
September 13, 2016

78

Course Source :

Instructor: Pradondet Nilagupta

E-mail: pom@[Link]

Phone: 9428555 ext. 1415 (office)

Office hours: after class; 1-2pm Monday or by


appointment

Web Page

Course Homepage:
[Link]
[Link]

Course Syllabus:
[Link]
[Link]

204481 Foundation of Computer Graphics

September 13, 2016

79

You might also like