140 likes | 244 Views
This course offers a comprehensive introduction to Computer Graphics, covering software, hardware, and diverse applications using a top-down approach. Participants will learn through shader-based OpenGL, incorporating OpenGL 3.1, OpenGL ES 2.0, and WebGL. Solid programming skills in C or C++ and knowledge of data structures, including linked lists, arrays, and geometry, are prerequisites. Key resources include the OpenGL Programmer's Guide and various online platforms. The course outlines topics from basic architecture to advanced rendering techniques.
E N D
Fall 2012 CS 480/680 Computer Graphics Course Overview Dr. Frederick C Harris, Jr.
Objectives • Broad introduction to Computer Graphics • Software • Hardware • Applications • Top-down approach • Shader-Based OpenGL • OpenGL 3.1 • Open GL ES 2.0 • webGL
Prerequisites • Good programming skills in C (or C++) • Basic Data Structures • Linked lists • Arrays • Geometry • Simple Linear Algebra
Resources • Can run OpenGL on any system • Windows: check graphics card properties for level of OpenGL supported • Linux • Mac: need extensions for 3.1 equivalence • Get GLUT from web if needed • Provided on Macs • freeglut available on web • Get GLEW from web • WebGL: most newer browsers
References • www.opengl.org • Standards documents • Sample code • The OpenGL Programmer’s Guide (the Redbook) 7th Edition • The definitive reference • Mixes 3.0 and 3.1 • OpenGL Shading Language, 3rd Edition • OpenGL ES 2.0 Programming Guide
Outline • Part 1: Introduction • Text: Chapter 1 • Lectures: 2 • What is Computer Graphics? • Applications Areas • History • Image formation • Basic Architecture
Outline (cont) • Part 2: Basic OpenGL • Text: Chapter 2 • Lectures: 4 • Architecture • GLUT • Simple programs in two and three dimensions • Basic shaders and GLSL • Interaction
Outline (cont) • Part 3: Three-Dimensional Graphics • Text: Chapters 3-5 • Lectures: 10 • Geometry • Transformations • Homogeneous Coordinates • Viewing • Lighting and Shading
Outline (cont) • Part 4: Implementation • Text: Chapter 6 • Lectures: 2 • Approaches (object vs image space) • Implementing the pipeline • Clipping • Line drawing • Polygon Fill • Display issues (color)
Outline (cont) • Part 5: Discrete Methods • Text: Chapter 7 • Lectures: 2 • Buffers • Pixel Maps • Texture Mapping • Compositing and Transparency
Outline (cont) • Part 6: Hierarchy and Procedural Methods • Text: Chapters 8-9 • Lectures: 3-4 • Tree Structured Models • Traversal Methods • Scene Graphs • Particle Systems
Outline (cont) • Part 7: Curves and Surfaces • Text: Chapter 10 • Lectures: 3-4
Outline (cont) • Part 9: Advanced Rendering • Text: Chapter 11 • Lectures: 2
Other Things • 2-3 Exams • Quizzes • Project Demo Days • …