Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
CS 428: Fall 2009
Introduction to
Computer GraphicsComputer Graphics
Introduction and Overview
9/2/2009 1Andrew Nealen, Rutgers, 2009
First things first…
� Seven slots left in CS 428
� Write me an email by 11:59pm today
� Name
� Why you want to take this course in max three � Why you want to take this course in max three
sentences
� Grades for the CS 428 prerequisites
� Calculus, Linear algebra, Java
� Keep it short!
� Will inform you on accept/reject by Thursday
Andrew Nealen, Rutgers, 2009 9/2/2009 2
People
� Instructor: Prof. Andrew Nealen
� CBIM (Bowser road, near student center)Room 21
� Office hours: Monday 1-3pm,
� Best to contact me by email, or office hours
� TA: Peter Borosan
� CBIM lab and Hill 250, 252 for office hours
� Office hours: TBA
� pborosan@
Andrew Nealen, Rutgers, 2009 9/2/2009 3
Web
� Website (external access)
� http://tinyurl.com/cs428-fall09
� Everything else: Sakai
� You should be able to see the “CS 428 Fall 09” tab � You should be able to see the “CS 428 Fall 09” tab
after logging in to
https://sakai.rutgers.edu/portal
with your RutgersID
� Mailing list:
Andrew Nealen, Rutgers, 2009 9/2/2009 4
What’s required?
� Programming (Java, JOGL)
� Math
� linear algebra, some numerical computation
� Time commitment� Time commitment
� This course is very work/code intense
� You need to be aware of this!
9/2/2009 5Andrew Nealen, Rutgers, 2009
Textbook
Computer Graphics with OpenGL, 3rd edition
Donald Hearn and M. Pauline Baker,
Prentice Hall, 2004
9/2/2009 6Andrew Nealen, Rutgers, 2009
Academic Integrity
� Read the web page!
� But basically:
� You need to do your own thinking, writing, and
programmingprogramming
� You should discuss the course material with other
people in the class, but you cannot give away how
to do the homeworks or projects
Andrew Nealen, Rutgers, 2009 9/2/2009 7
Computer accounts
� We’ll mainly be using Hill 248, 250 and 252
� Available on the course website
� How to set up an account
� How to get JOGL up and running� How to get JOGL up and running
� More…
� Access to the lab with your Rutgers ID
9/2/2009 8Andrew Nealen, Rutgers, 2009
Programming projects
9/2/2009 9Andrew Nealen, Rutgers, 2009
Grading
� Projects 60%
� Midterm 20%
� Final 20%
Late policy:
� tell me about problems in advance
� 50% credit for one day late (and no extra credit)
9/2/2009 10Andrew Nealen, Rutgers, 2009
What this course is about
� Representations, computational models, and
algorithms in computer graphics
� Using OpenGL on modern (programmable)
graphics hardwaregraphics hardware
9/2/2009 11Andrew Nealen, Rutgers, 2009
Algorithms:
simulation
Representation + comp. models
� Shapes + materials + appearances
� Motions + behaviors
� Representations: specifications
� Comp. models: realizations
2D/3D models
images + video
etc…
simulation
direct solution� Comp. models: realizations
� Structure of problems
� Spatial/temporal coherence. Sparsity.
� Optimization
� Approximation. Pre-computation.
Andrew Nealen, Rutgers, 2009 9/2/2009 12
Topic overview
� Image formation and OpenGL
� Transformations and viewing
� Polygons and polygon meshes
� Programmable pipelines� Programmable pipelines
� Modeling and animation
� Rendering
Andrew Nealen, Rutgers, 2009 9/2/2009 13
Topic overview
� Image formation and OpenGL
� Modeling the image formation process
� OpenGL primitives, OpenGL state machine
� Transformations and viewing� Transformations and viewing
� Polygons and polygon meshes
� Programmable pipelines
� Modeling and animation
� Rendering
Andrew Nealen, Rutgers, 2009 9/2/2009 14
Topic overview
� Image formation and OpenGL
� Transformations and viewing
� Linear algebra review, Homogeneous coordinates
� Geometric + projective transformations� Geometric + projective transformations
� Viewing, Viewports, Clipping
� Polygons and polygon meshes
� Programmable pipelines
� Modeling and animation
� RenderingAndrew Nealen, Rutgers, 2009 9/2/2009 15
Topic overview
� Image formation and OpenGL
� Transformations and viewing
� Polygons and polygon meshes
� 3D model/mesh representations� 3D model/mesh representations
� Piecewise linear shape approximations
� Illumination and polygon shading
� Modeling and animation
� Rendering
Andrew Nealen, Rutgers, 2009 9/2/2009 16
Topic overview
� Image formation and OpenGL
� Transformations and viewing
� Polygons and polygon meshes
� Programmable pipelines� Programmable pipelines
� Modeling and animation
� Procedural modeling and animation
� Rendering
Andrew Nealen, Rutgers, 2009 9/2/2009 17
Topic overview
� Image formation and OpenGL
� Transformations and viewing
� Polygons and polygon meshes
� Programmable pipelines� Programmable pipelines
� Modeling and animation
� Rendering
� OpenGL rasterization: hidden surface removal,
interpolation, texturing (some sampling theory)
� Raytracing and radiosity
Andrew Nealen, Rutgers, 2009 9/2/2009 18
Images
Modeling Rendering
3D Objects
3D graphics programmingHigh-level view
3D Models
approx. 50 x 100 Pixelsapprox. 25 Triangles
9/2/2009 19Andrew Nealen, Rutgers, 2009
Images
• Interaction
• Animation
3D Objects
3D graphics programmingHigh-level view
3D Models
• Scene
• Geometry
• Material
Modeling Rendering
• Material
• Illumination
9/2/2009 20Andrew Nealen, Rutgers, 2009
Making images in CG
simulationsimulation
9/2/2009 21Andrew Nealen, Rutgers, 2009
Appearance
9/2/2009 22Andrew Nealen, Rutgers, 2009
Shape
9/2/2009 23Andrew Nealen, Rutgers, 2009
Motion
9/2/2009 24Andrew Nealen, Rutgers, 2009
MoviesTron (1982)
9/2/2009 25Andrew Nealen, Rutgers, 2009
MoviesLuxo Jr. (1986)
9/2/2009 26Andrew Nealen, Rutgers, 2009
MoviesThe Matrix Revolutions (2003)
9/2/2009 27Andrew Nealen, Rutgers, 2009
MoviesKing Kong (2005)
9/2/2009 28Andrew Nealen, Rutgers, 2009
MoviesRatatouille (2007)
9/2/2009 29Andrew Nealen, Rutgers, 2009
MoviesWall-E (2008)
9/2/2009 30Andrew Nealen, Rutgers, 2009
Video gamesTeam Fortress 2 (2007)
9/2/2009 31Andrew Nealen, Rutgers, 2009
Video gamesResident Evil 5 (2009)
9/2/2009 32Andrew Nealen, Rutgers, 2009
Video gamesSpore (2008)
cell creature tribal
civilization space9/2/2009 33Andrew Nealen, Rutgers, 2009
Computational Design
9/2/2009 34Andrew Nealen, Rutgers, 2009
Scientific/Medical Visualization
9/2/2009 35Andrew Nealen, Rutgers, 2009
Training and Education
Andrew Nealen, Rutgers, 2009 9/2/2009 36
Art
Andrew Nealen, Rutgers, 2009 9/2/2009 37