310482 : Graphics
ProgrammingSeree Chinodom [email protected]://www.compsci.buu.ac.th/~seree/lecture/310482
Introduction to Co Introduction to Co mputer Graphics mputer Graphics
Simple Definition: ทกุอยา่งท่ีเก่ียวขอ้งกับการนำาคอมพวิเตอรม์าใชใ้นการ
สรา้งรูปภาพต่าง ๆ ( การออกแบบ Hardware, Software ท่ีใช,้ Algorithm ต่างๆ, Application)
Representative Uses of Computer Graphics User interfaces Mac, Windows(TM) เป็นต้น Simulation Design Display of information
จุดมุง่หมายของวชิานี้ ปูพื้นฐานอยา่ง กวา้งๆ ของ Computer
Graphics และ Graphic Programming
เขา้ใจถึงเทคนิคต่างๆ ท่ีนำากระบวนการ ทางคณิตศาสตรม์าใชง้าน
เขา้ใจถึงกระบวนการสรา้งภาพ 2 และ 3มติิ
What is ComputerGraphics? Tools for creating pictures on a computer Tools for interacting with those pictures Hardware for drawing those pictures faster Displays for showing those pictures
bigger,brighter Algorithms for simulating physical
phenomena Tools for visualization of complex
mathematics
Graphics Primitives Drawing primitives
Points, lines, circles, arcs, curves, polygons Scene primitives
Lights, virtual camera, materialdescriptions
Lots of drawing primitives form a model of some object
The model plus the scene primitives let us make a picture
Primitiv e Operations
Transformations on drawingprimitives Translate
Primitiv e Operations
(Cont.)Rotate
Primitiv e Operations
(Cont.) Scale
A Little About theCourse Course web site:http://www.compsci.buu.ac.th/~seree
/lecture/310482/ All course materials are available
there (slides, assignments, exams, sample code).
5 programmi ngassi gnments, twoexams 50 20Grade: % programs, % midterm,
3 0 % f inal YYY YYY Y YYYY YYYY YYYYYYY Y YY
whatever language/environment you want, but
we have to be able to test them!
Texts: Donald Hearn and M. Pauline Baker ,
Computer Graphics, C Version (required)Foley, J.D., A. van Dam, S. K. Feiner, et al.
(1996). Computer Graphics: Principles and Practice 2nd Edition, Addison Wesley, Reading, MA
OpenGL Programming Guide (optional) Tcl and Tk (optional)
Course Outline Course Outline Introduction to
computer graphicsHardware 2D PrimitiveGeometri
c Transformation 3Viewing in D Representin
g Curves andSurface
Solid Modeling Achromatic and
Colored Light Visible Surface
Determination Illumination and
Shading Advance TechniquesAnimation
A Short History 1963: Sutherland (MIT)
Sketchpad Calligraphic display devices Interactive techniques Douglas Englebart invents the mouse.
1968: Evans &Sutherland advance 3 D graphic at University of Utah
Ed Catmull, Jim Clarh, John Warnock
A ShortHistory(cont) 1970: Pierre Bezier develops Bezier curve
s H HHHH 1971 Gouraud developed Gouraud Sh
ading 1972: Video game Pong HH HHHHHHHHH HH HHHHH 1972 2D raster display for PC workstation at
Xerox. 1973 HHHHH SIGGRAPH HHHHHHHHHH
Attende by 600
A ShortHistory(cont) 1974: Ed Catmull introduce texture
mapping His thesis also covered - z buffer and rende
ring curved surface Was appointed the director of graphics la
bs at New York Institute of Technology. 1974 - Bui Toung developed P
hong Shading (Utah) 1974 Xerox ParC created ALTO, the firs
t computer to use a WIMP interface 1975 Benoit Mandelbrot published
the paper A Theory of Fractal Sets
1976: James Blinn develops bump mapping. Uses color to draw bumps on surface
1976 Rob Cook developed new lighting models.
1977 Nintendo entered the market. 1980 Film Bol Libre (by Loren Carpentar
Y YYY YYYYY YY YYYYYYYYY - Computer generates high speed flight thru rug
ged mountains; used fractals
1980: YYYYYY Y YYYYYY YYYYYYYYYY YYYYYYY YYY YYYYYYYYY YYYYYY YYYYY YY Ray TracingY
1982 Disney produced Tron (by Steven Lisberger and Donald Kushner)
1982 Jim Clark founded Silicon Graphics Inc. Introduce IRIS 1000 the following year.
1982 Sun microsystem, Autodesk and Adobe System were also founded.
1982 Tom Brigham develop HHHHHHHH. A video sequence showing a woman distort and tran
sform herself into the shape of lynx. 1983 First paper on motion blur in compute
r gener at ed i mages. 1983 Jaron Lanier developed the H HHH H HHH
H at Atari. 1984 Raduosity method was deceloped at C
ornell University by Cindy Goral, Ken Torrance, D on Greenberg and Ben Battaile.
1985 Ken Shoemake introduced the YY YYYYYYYYYYY YY YYYYYYYYYY.
1985 Adobe System introduced Postscript.
1986 Pixar was founfed. 1988 Renderman, a standard for de
scribing3Dscencs was cr eat ed. Most of the tecnicial details by Pat Hanr
ahan.
1989 Tin Toy and The Abyss were released.
1990 3Autodesk introdoced D studio.1991Terminator 2 was released.1992 Wavelets were used for radiosity.1994 Indrustrial Ligh and Magic won
an Osca for its special-effects work on Jurassic Park
1994 Netscape Communications YYYYYYYY.
1994 Sun microsystem introduced.
1997 97SIGGRAPH’ had > 48000, attendeed.
1998 Ants and A Bug’s Life were r.
The BasicsThis course is about:
Algorithms and data structures for presenting data visually on a computer
This course is not about: Using graphic design programs like
Photoshop or 3-D Studio MaxUsing graphics APIs like OpenGL
The BasicsComputer graphics: generating 2D
images of a 3D world represented in a computer.
Main tasks: modeling: creating and representing the
geometry of objects in the 3D world rendering: generating 2D images of the
objects animation: describing how objects change
in time
Why Study Computer Graphics?Graphics is cool
I like to see what I’m doing I like to show people what I’m doing
Graphics is interesting Involves simulation, algorithms,
architecture…Graphics is important
Just ask Intel…Graphics is fun
Roll the video…
Graphics ApplicationsEntertainment: Cinema
Pixar: Geri’s Game
Universal: Jurassic Park
Graphics ApplicationsEntertainment: Games
Cyan: Riven
id: Quake II
Graphics ApplicationsMedical Visualization
MIT: Image-Guided Surgery Project
The Visible Hum
an Project
Graphics ApplicationsComputer Aided Design
(CAD)
Graphics ApplicationsScientific Visualization
Trick Question
What’s a pixel?
UNIXYou should familiarize yourself with
UNIX Getting around: cd, mkdir/rmdir, cp/mv/rm Using make and Makefiles Using gdb
We will use 2 libraries: OpenGL and Xforms OpenGL native on SGIs; on other
platforms Mesa