Upload
hosea
View
70
Download
1
Tags:
Embed Size (px)
DESCRIPTION
CSE 581: Interactive Computer Graphics. Spring 2012, UG 4 Tuesday, Thursday – 9:00AM – 10:18AM DL 0317 Raghu Machiraju Slides: Courtesy - Prof . Huamin Wang, CSE, OSU. Details. Instructor: Raghu Machiraju machiraju dot 1 at osu dot edu Office hours: - PowerPoint PPT Presentation
Citation preview
CSE 581: Interactive Computer Graphics
Spring 2012, UG 4 Tuesday, Thursday – 9:00AM – 10:18AM
DL 0317Raghu Machiraju
Slides: Courtesy - Prof. Huamin Wang, CSE, OSU
Details
• Instructor: Raghu Machiraju
machiraju dot 1 at osu dot edu• Office hours:
o TR: 10:30 PM – 11:30 PM, DL 779o Make an appointment
• Grader: Some H. Being• Grader’s office hour: TBA
Prerequisites
• 222/230/502/Permission from the instructor
• Fluent in C/C++
• Comfortable with linear algebra (vector and matrix)
• Passion for games, videos, and sleep-deprivation
The Text
Interactive Computer Graphics: A top-Down Approach Using OpenGL
Any edition is OK
Supplemental Materials
OpenGL Programming Guidehttp://glprogramming.com/red/
OpenGL A Primer OpenGL Reference Manual
Grading Labs – 4x10 : 40%
Homework – 3x5: 15%
Midterm – 20%
Final Project/Exam – 25%
Late PolicyAssignment due at 11:59PM on due date
Late submissions penalized:- 0 to 24 hours: late 10% deduction- 24 to 48 hours: late 20% deduction- 48 to 72 hours: late 30% deduction- >72 hours late: NOT accepted!
What is Computer Graphics?
• Generating images/videos by computers
• The scientific study of how to generate such images
• Not just photorealism:• Painterly effects• Cartoon• Sketch…
Applications
Computer-Aided Design (CAD)
Visual arts
Electronic games Movies/TV/Commercials
Scientific visualization
Applications
Speed
RealismMovies/TV/Commercials
Electronic games
Real-time techniquesOffline techniques
Graphics Topics
Geometry(How to represent the shape)
Rendering(How to generate an image)
Animation(How to let the shape move)
This course
Objectives
Basic understanding of graphics hardware/software technology
The ability of using OpenGL to write 2D/3D programs
Getting prepared for advancedgraphics courses
Examples
• What is a graphics card (GPU)?• What are its functionalities?• What is the graphics pipeline?• What are the algorithms inside it?• Stencil buffer• Anti-aliasing• Shaders
• How to use it?
OpenGL Programming
An Open-source cross-platform Graphics Library
Not just about API…
An Open-source cross-platform Graphics Library
• Learn the techniques behind it
• Don’t need to implement them. Just use them.
Lab Assignment 1
• Learn how to create an OpenGL window (using GLUT)
• Learn how to draw simple 2D primitives (lines, triangles, polygons, etc)
• Learn how to handle mouse input
Lab Assignment 2
• Learn how to define 3D objects
• Learn how to place objects in 3D worlds
• Learn how to control camera and objects
Lab Assignment 3
• OpenGL illumination
Lab Assignment 4
• Textures
Lab Assignment 5
Be creative!
Course Outline
• GeometryHow to specify camera configurations?How to place scene objects in 2D/3D?How to transform objects and cameras?How to project 3D objects to 2D?
Course Outline
• Geometry• Rasterization
How to assign projected objects (such as triangles, circles, squares…) to image pixels?
Course Outline
• Geometry• Rasterization• Shading
How to model the interaction between the light and objects, based on their different reflection properties?
Course Outline
• Geometry• Rasterization• Shading• Occlusion How to make sure something is visible,
something is occluded?
Course Outline
• Geometry• Rasterization• Shading• Occlusion• Texture How to provide details on object
surfaces? (Appearance, bumps, etc…)
Course Outline
• Geometry• Rasterization• Shading• Occlusion• Texture• Modeling How to represent complicated shapes?
Course Outline
• Geometry• Rasterization• Shading• Occlusion• Texture• Modeling• Animation How to move shapes in a physically
plausible way?
Advanced Graphics Courses
681 (Rendering) 682 (Animation) 781 (Advanced Real-time Rendering)
78 (Advanced Off-line Rendering) 784 (Geometry)
Where to do labs?
• Your own PC• Graphics PC Lab –CL 112D• Each PC has a reasonably good graphics card• Software: Visual Studio, OpenGL/GLUT
Graphics Pipeline