CS 452 Computer Graphics
This is an introductory course in computer graphics, an advanced topic in the field of computer science. This is not a class in how to use existing graphics-intensive applications (such as Macromedia’s Director or Flash, or Alias’ Maya or Pixar’s Renderman); we will learn the algorithms underlying these tools and the importance of implementing these algorithms for speed. The course will cover an introduction to 2D and 3D graphics, including scan conversion, anti-aliasing schemes, clipping, OpenGL programming, 3D viewing and transformations, homogeneous coordinates, perspective and orthographic projections, illumination, shading, and some topics needed from linear algebra. This is a high-workload class with significant programming expected. The nature of the course content requires that you have successfully completed Data Structures and Algorithms, and Programming III.
To understand and be able to implement the algorithms underlying graphics-intensive applications Technological Competence; Leadership and Teamwork
Introduction to 2D and 3D graphics; Scan conversion; Anti-aliasing schemes; Clipping; OpenGL programming; 3D viewing and transformations; Homogeneous coordinates; Perspective and Orthographic projections; Illumination; Shading; Relevant aspects of linear algebra
Labs include a mix of guided inquiry learning using a set of assignments with a deliverable and report, and time to work on open-ended projects with the aid of the lecturer.
- Prerequisites: Programming 2 / CS212 Computer Programming or CS112 Computer Programming for Engineering, CS331: Computer Organization and Architecture, and EITHER CS212 Programming 3 / CS313 Intermediate Computer Programming OR CS222 Data Structures