Computer Graphics. Requirements Prerequisites Prerequisites CS 255 : Data Structures CS 255 : Data...

Post on 04-Jan-2016

219 views 1 download

Tags:

Transcript of Computer Graphics. Requirements Prerequisites Prerequisites CS 255 : Data Structures CS 255 : Data...

Computer Computer GraphicsGraphics

RequirementsRequirements

PrerequisitesPrerequisites CS 255 : Data Structures CS 255 : Data Structures Math 253 Math 253 Experience with C Programming Experience with C Programming

LanguageLanguage TextText

Interactive Computer Graphics by AngelInteractive Computer Graphics by Angel

GradingGrading

Assignments and Labs 45% Assignments and Labs 45%

Midterm 15% Midterm 15%

Final Exam 40% Final Exam 40%

DUE DATES FOR ASSIGNMENTS WILL BE STRICTLY ENFORCEDDUE DATES FOR ASSIGNMENTS WILL BE STRICTLY ENFORCED. .

Later Assignment: 25% penalty Per dayLater Assignment: 25% penalty Per day

What is Computer What is Computer GraphicsGraphics

Computer graphics: generating 2D Computer graphics: generating 2D images of a 3D world represented in a images of a 3D world represented in a computer.computer.

Main tasks:Main tasks: modelingmodeling: (shape) creating and representing : (shape) creating and representing

the geometry of objects in the 3D worldthe geometry of objects in the 3D world renderingrendering: (light, perspective) generating : (light, perspective) generating

2D images of the objects2D images of the objects animationanimation: (movement) describing how : (movement) describing how

objects change in timeobjects change in time

Computer Graphics/Image Computer Graphics/Image Processing / Computer VisionProcessing / Computer Vision

Pictorial Pictorial synthesis synthesis of real/imaginary of real/imaginary objects from objects from modelmodels.s.

Image Processing : process an image Image Processing : process an image to enhance certain aspects.to enhance certain aspects.

Computer Vision : Derive the Computer Vision : Derive the models/descriptions from an image.models/descriptions from an image.

Course GoalsCourse Goals

Learn the Learn the principlesprinciples of modeling and of modeling and synthesissynthesis

Acquire expertise in Acquire expertise in toolstools used used

Applications of Computer Applications of Computer GraphicsGraphics

Display of informationDisplay of information DesignDesign Simulation and animationSimulation and animation User interfaceUser interface

Medical VisualizationMedical Visualization

Image from Image from David Brogan’s notesDavid Brogan’s notes

Computer Aided Design Computer Aided Design (CAD)(CAD)

AnimationAnimation

Pixar: Monster’s Inc.

Topics OutlineTopics Outline

OpenGL BasicsOpenGL Basics

Primitives and attributesPrimitives and attributes ColorColor ViewingViewing Control functionsControl functions [Angel, Ch. 2][Angel, Ch. 2]

Input and InteractionInput and Interaction

Clients and serversClients and servers Event driven programmingEvent driven programming Text and fontsText and fonts [Angel, Ch. 3][Angel, Ch. 3]

Objects & Objects & TransformationsTransformations

Linear algebra reviewLinear algebra review Coordinate systems and framesCoordinate systems and frames Rotation, translation, scalingRotation, translation, scaling Homogeneous coordinatesHomogeneous coordinates OpenGL transformation matricesOpenGL transformation matrices [Angel, Ch. 4][Angel, Ch. 4]

Viewing and ProjectionViewing and Projection

Orthographic projectionOrthographic projection Perspective projectionPerspective projection Camera positioningCamera positioning Projections in OpenGLProjections in OpenGL Hidden surface removalHidden surface removal [Angel, Ch. 5][Angel, Ch. 5]

Light and ShadingLight and Shading

Light sourcesLight sources Ambient, diffuse, and specular Ambient, diffuse, and specular

reflectionreflection Normal vectorsNormal vectors Material properties in OpenGLMaterial properties in OpenGL [Angel, Ch. 6][Angel, Ch. 6]

Textures and PixelsTextures and Pixels

Texture mappingTexture mapping OpenGL texture primitivesOpenGL texture primitives Image filteringImage filtering [Angel, Ch. 7][Angel, Ch. 7]

RenderingRendering

ClippingClipping Bounding boxesBounding boxes Hidden-surface removalHidden-surface removal Line drawingLine drawing Scan conversionScan conversion AntialiasingAntialiasing [Angel, Ch. 8][Angel, Ch. 8]

Hierarchical ModelsHierarchical Models

Graphical objectsGraphical objects AnimationsAnimations OpenGL routinesOpenGL routines Parameters and transformationsParameters and transformations [Angel, Ch. 10][Angel, Ch. 10]

Other TopicsOther Topics

Curves and SurfacesCurves and Surfaces Ray tracingRay tracing Scientific visualizationScientific visualization Programmable shadesProgrammable shades Procedure methodsProcedure methods