CS 428: Fall 2010 Introduction to Computer Graphics · Room 21, nealen@cs.rutgers.edu Office hours:...

Post on 17-Jun-2020

0 views 0 download

Transcript of CS 428: Fall 2010 Introduction to Computer Graphics · Room 21, nealen@cs.rutgers.edu Office hours:...

CS 428: Fall 2010

Introduction to

Computer GraphicsComputer Graphics

Introduction and Overview

9/1/2010 1Andrew Nealen, Rutgers, 2010

First things first…

� 3 (+1) slots left in CS 428 (as of 8/31/2010)

� Write me by 11:59pm today. subject: CS428

� Your full 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 2, Linear algebra, Java

� Keep it short!

� Will inform you on accept/reject by Friday

Andrew Nealen, Rutgers, 2010 9/1/2010 2

People

� Instructor: Prof. Andrew Nealen

� CBIM (Bowser road, near student center)Room 21, nealen@cs.rutgers.edu

� Office hours: Wednesday 5-7pm,

� Best to contact me by email, or office hours

� TA: Peter Borosan

� CBIM lab and Hill 250, 252 for office hours

� Office hours: TBA (Peter will be back on 9/13)

� pborosan@cs.rutgers.edu

Andrew Nealen, Rutgers, 2010 9/1/2010 3

Web

� Website (external access)

� http://tinyurl.com/cs428-fall2010

� Everything else: Sakai

� You should be able to see the “CS 428 Fall 2010” � You should be able to see the “CS 428 Fall 2010”

tab after logging in to

https://sakai.rutgers.edu/portalwith your RutgersID

� Mailing list:

cs428-fall2010@sakai.rutgers.edu

Andrew Nealen, Rutgers, 2010 9/1/2010 4

What’s required?

� Programming (Java, JOGL 1.0.0, JOGL 1.1.0)

� Math

� linear algebra, some numerical computation

� Time commitment� Time commitment

� This course is very work/code intense

� You need to be aware of this!

� How many other courses are you taking?

9/1/2010 5Andrew Nealen, Rutgers, 2010

Textbook

Computer Graphics with OpenGL, 3rd edition

Donald Hearn and M. Pauline Baker,

Prentice Hall, 2004

9/1/2010 6Andrew Nealen, Rutgers, 2010

Academic Integrity

� Read the web page!

http://academicintegrity.rutgers.edu/integrity.shtml

� But basically:� But basically:

� You need to do your own thinking, writing, and

programming

� You should discuss the course material with other

people in the class, but you cannot give away how

to do the homework(s) or projects

Andrew Nealen, Rutgers, 2010 9/1/2010 7

Computer accounts

� We’ll mainly be using Hill 248, 250 and 252 (iLab

a.k.a. the “cereal” named machines)

� Available on the course website

� How to set up an account� How to set up an account

� How to get JOGL up and running

� More…

� Access to the lab with your Rutgers ID

� http://www.cs.rutgers.edu/resources/rooms_and_equipment/status/rooms.php

9/1/2010 8Andrew Nealen, Rutgers, 2010

Programming projects

9/1/2010 9Andrew Nealen, Rutgers, 2010

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)

� 0% credit for 2+ days late

9/1/2010 10Andrew Nealen, Rutgers, 2010

What this course is about

� Representations, computational models, and

algorithms in computer graphics

� Using OpenGL on modern (programmable)

graphics hardwaregraphics hardware

9/1/2010 11Andrew Nealen, Rutgers, 2010

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, 2010 9/1/2010 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, 2010 9/1/2010 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, 2010 9/1/2010 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, 2010 9/1/2010 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, 2010 9/1/2010 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, 2010 9/1/2010 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, 2010 9/1/2010 18

Images

Modeling Rendering

3D Objects

3D graphics programmingHigh-level view

3D Models

approx. 50 x 100 Pixelsapprox. 25 Triangles

9/1/2010 19Andrew Nealen, Rutgers, 2010

Images

• Interaction

• Animation

3D Objects

3D graphics programmingHigh-level view

3D Models

• Scene

• Geometry

• Material

Modeling Rendering

• Material

• Illumination

9/1/2010 20Andrew Nealen, Rutgers, 2010

Making images in CG

simulationsimulation

9/1/2010 21Andrew Nealen, Rutgers, 2010

Appearance

9/1/2010 22Andrew Nealen, Rutgers, 2010

Shape

9/1/2010 23Andrew Nealen, Rutgers, 2010

Motion

9/1/2010 24Andrew Nealen, Rutgers, 2010

MoviesTron (1982)

9/1/2010 25Andrew Nealen, Rutgers, 2010

MoviesLuxo Jr. (1986)

9/1/2010 26Andrew Nealen, Rutgers, 2010

MoviesThe Matrix Revolutions (2003)

9/1/2010 27Andrew Nealen, Rutgers, 2010

MoviesKing Kong (2005)

9/1/2010 28Andrew Nealen, Rutgers, 2010

MoviesRatatouille (2007)

9/1/2010 29Andrew Nealen, Rutgers, 2010

MoviesWall-E (2008)

9/1/2010 30Andrew Nealen, Rutgers, 2010

Video gamesTeam Fortress 2 (2007)

9/1/2010 31Andrew Nealen, Rutgers, 2010

Video gamesResident Evil 5 (2009)

9/1/2010 32Andrew Nealen, Rutgers, 2010

Video gamesSpore (2008)

cell creature tribal

civilization space9/1/2010 33Andrew Nealen, Rutgers, 2010

Computational Design

9/1/2010 34Andrew Nealen, Rutgers, 2010

Scientific/Medical Visualization

9/1/2010 35Andrew Nealen, Rutgers, 2010

Training and Education

Andrew Nealen, Rutgers, 2010 9/1/2010 36

Art

Andrew Nealen, Rutgers, 2010 9/1/2010 37