Introduction Lecture 01: COMP 175: Computer Graphics January 21, 2016

advertisement
COMP 175 | COMPUTER GRAPHICS
Lecture 01:
Introduction
COMP 175: Computer Graphics
January 21, 2016
Remco Chang
01 - Introduction
1/26
COMP 175 | COMPUTER GRAPHICS
People
Instructor:
Remco Chang
remco@cs.tufts.edu
Office: Halligan 221
Hours: ??
Remco Chang
Grad TA:
Mike Shah
Office: ??
Hours: ??
TA:
Jake Mingolla
TA:
Kabir Singh
Office: ??
Hours: ??
Office: ??
Hours: ??
01 - Introduction
2/26
COMP 175 | COMPUTER GRAPHICS
Clarification!
Meeting Time:
•
•
•
Quick Poll:
•
•
•
•
•
•
•
•
Tuesday, Thursday from 1:30-2:45
H+ Block
Laptops?
Operating Systems?
C++ proficiency?
Linear Algebra?
People who took 150VIZ?
Gamers?
Access to Piazza?
Remco Chang
01 - Introduction
3/26
COMP 175 | COMPUTER GRAPHICS
Clarification!
•
Prerequisites
•
COMP 40
•
•
•
•
Machine Structure and Assembly-Language Programming
Implies: COMP 15 (Data Structures)
Implies: proficiency with C++ and memory management
Linear Algebra
•
Remco Chang
Vector and Matrix math
01 - Introduction
4/26
COMP 175 | COMPUTER GRAPHICS
Clarification
Questions?
•
Conflicts with schedule?
•
•
Come talk to me
Don’t have the prereqs?
•
•
Don’t panic…
Remco Chang
01 - Introduction
5/26
COMP 175 | COMPUTER GRAPHICS
What is Graphics?

3D world map to 2D

How to do it?
Remco Chang
01 - Introduction
6/26
COMP 175 | COMPUTER GRAPHICS
What is Graphics?

3D world map to 2D

How to do it?


Geometry transform
Per-pixel operation
Remco Chang
01 - Introduction
7/26
COMP 175 | COMPUTER GRAPHICS
What is Graphics?

Geometry

View


Parallel
Perspective

Complex scene

Putting pixels on a 2D canvas

Putting (pretty) pixels on a 2D canvas
Remco Chang
01 - Introduction
8/26
COMP 175 | COMPUTER GRAPHICS
What is Graphics?

3D world map to 2D

How to do it?



Fixed pipeline
Programmable pipeline
Going from fix pipeline into programmable
pipeline
Remco Chang
01 - Introduction
9/26
COMP 175 | COMPUTER GRAPHICS
What Does your Graphics Card Do?

Why expensive graphics cards?

Why are they fast (at graphics)?

Are they good at anything else?

Example for parallelizable vs. serial-only
algorithms

Let’s try sorting…
Remco Chang
01 - Introduction
10/26
COMP 175 | COMPUTER GRAPHICS
New “Twist” on Graphics

Traditionally 3D graphics is for entertainment purposes
(games, movies, special effects, etc.)

Now techniques used in 3D graphics are become more
commonly used for both 2D and 3D rendering


It’s becoming a part of HTML 5 (through WebGL)




Mostly to utilize graphics cards
http://www.nytimes.com/interactive/2015/01/09/sports/thedawn-wall-el-capitan.html
http://www.je-construis-la-tour-eiffel.com/
http://www.senchalabs.org/philogl/
A new tool for designing rich and interactive web pages
Remco Chang
01 - Introduction
11/26
COMP 175 | COMPUTER GRAPHICS
Spirit of this class

Creativity, Creativity, Creativity


We will teach you the tools, the rest is up to you!
Example: what is the most popular PC game of all time?


https://en.wikipedia.org/wiki/List_of_best-selling_PC_games
There are 3 ways to impress me:



Do something cool in your (visual | graphics) design
Do something cool in your (interaction) design
Do something cool in your (code | optimization) design
Remco Chang
01 - Introduction
12/26
COMP 175 | COMPUTER GRAPHICS
General Information

Course website:








http://www.cs.tufts.edu/comp/175
Assignments
Labs
Syllabus
Support Code
Textbooks
Grading
Accommodation
Remco Chang
01 - Introduction
13/26
COMP 175 | COMPUTER GRAPHICS
Grading

Assignments (2% + 10% each):







Final Project
Labs (10)


1. Shapes
2. Camera
3. SceneView
4. Modeler
5. Ray Tracer
15%
25% (2.5% each)
Note: Lab 0 is not for grade
Total

12%
12%
12%
12%
12%
100%
Note: your final grade will not be curved
Remco Chang
01 - Introduction
14/26
COMP 175 | COMPUTER GRAPHICS
Teams and Outside Help

Paired Programming


Work in a team of two
Labs:



Assignments:



Same partner for the first 3 assignments
Another partner for the last 2 assignments
Final Project


Random partners for the first 5 labs
Chosen *NEW* partner for the last 5 labs
No restrictions on the partners, but work in teams of 2.
Online Resources


There are lots of resources online
Use them for understanding, but again, you must turn in your
own work!
Remco Chang
01 - Introduction
15/26
COMP 175 | COMPUTER GRAPHICS
In Class Labs

10 Labs total

Should be doable within a couple of hours…

If not, you have 1 week to complete it
Remco Chang
01 - Introduction
16/26
COMP 175 | COMPUTER GRAPHICS
Take-Home Assignments

There are 5 Assignments

You have 2 weeks to complete each one

Except for the Spring Break week

An algorithm sheet needs to be submitted after 1 week

All assignments (including algorithm worksheets) are
due on Mondays at 11:59pm

On the course website it looks like assignments are due on
Tuesdays… It’s due on Monday at midnight!!
Remco Chang
01 - Introduction
17/26
COMP 175 | COMPUTER GRAPHICS
Take-Home Assignments: Grading

Your team will demo your take-home assignment
to me at the designated time. We will have sign up
sheets when the assignments are due.


Usually the demo date is the Friday of the assignment due
week.
Your team will “demo” your completed algorithm
worksheet to the TAs


The TAs will grade your algorithm worksheet for each
assignment and give you feedback
If it turns out that your solution is way off course, the TAs
will ask you to schedule another time to meet with them
Remco Chang
01 - Introduction
18/26
COMP 175 | COMPUTER GRAPHICS
Assignment 1: Shapes

Creating 3-dimensional
objects using triangles

Write code to break up
common geometric shapes
into triangles (tessellation)

Rectangles, spheres,
cylinders, and cones

Data structure of points,
lines, polygons, shapes
Remco Chang
01 - Introduction
19/26
COMP 175 | COMPUTER GRAPHICS
Assignment 2: Camera

Write a (software) perspective
camera

Maintain transform matrices,
from world to screen and
inversely from screen to world

Implement pan, zoom, rotate,
etc. for the camera

Become comfortable with
matrix manipulation
Remco Chang
01 - Introduction
20/26
COMP 175 | COMPUTER GRAPHICS
Assignment 3: SceneView

Maintain and render a
hierarchical scene

Uses the primitives created in
Shapes, and the view
transform from Camera

Apply hierarchical transform of
rotation, translation, and
scaling to render a 3D scene

Management of hierarchical
data structure
Remco Chang
01 - Introduction
21/26
COMP 175 | COMPUTER GRAPHICS
Assignment 4: Modeler / Intersect

Cast rays to intersect with a
3D scene

Add user interactivity to
move the objects using a
mouse

Output 3D scene files

Become comfortable with
going from 2D to 3D and 3D
to 2D
Remco Chang
01 - Introduction
22/26
COMP 175 | COMPUTER GRAPHICS
Assignment 5: Recursive Ray Tracer

Using rays from Modeler,
recursively bounce to rays to
create a fully ray-traced 3D
scene

Implement Phong Shading

Implement texture-mapping

Highly parallel, recursive
algorithm
Remco Chang
01 - Introduction
23/26
COMP 175 | COMPUTER GRAPHICS
Final Project

Demo during the final period

Be awesome

Ideas can come from:







Labs
Assignments
Something cool you saw on Youtube
An idea for a game
A research paper you read
:
:
Remco Chang
01 - Introduction
24/26
COMP 175 | COMPUTER GRAPHICS
Other Issues

Using Piazza



Do NOT post code!!
We’ll set this up later once the class roster stabilizes
Using GLUT, GLUI

Cross platform




Linux / Unix
Mac
Windows
Support code “cleanliness” and stability…
Remco Chang
01 - Introduction
25/26
COMP 175 | COMPUTER GRAPHICS
Late Policy

Assignments that are turned in late will receive
a 0.

Note: you are allowed 1 extension for the semester.


With an extension, you will be granted an extra 3 days.
Assignments will be submitted using “provide”
Remco Chang
01 - Introduction
26/26
COMP 175 | COMPUTER GRAPHICS
Late Policy

Labs are checked one week later.


You will demo this in class to myself or the TA
There is no late policy for the labs.

If you have an extraordinary circumstance, you
must contact the instructor or the TA as soon as
possible and obtain written approval.

NO LATE POLICY for the Final Project!!

Final Project Demo will be on the Final Exam date (see
course website for detail)
Remco Chang
01 - Introduction
27/26
COMP 175 | COMPUTER GRAPHICS
Questions?
Remco Chang
01 - Introduction
28/26
Download