CSE 386 Introduction to Computer Graphics (3 credits)

Typically offered during the spring semester.

Catalog Description:

Introduction to techniques to create images on the computer. Covers graphics hardware and software, animation, mathematical theory behind 3-dimensional translation, rotation, and scaling, and areas of graphics application such as computer-aided design. Programming required.

Prerequisites:

CSE 274, and MTH 231.

Required topics (approximate weeks allocated):

  • Introduction (1.0)
    • Applications
    • Graphics systems
    • Graphics hardware
    • Event handlers
  • Basic Rendering and Color (2.0)
    • Color specification
    • Drawing points, lines, and polygons
    • 3D objects
    • Graphics pipeline
    • Clipping algorithms
    • Polygon culling
  • Transformations (4.0)
    • Matrix and vector arithmetic
    • Rotation, translation, and scaling
    • Modeling, viewing, projection, and viewport transformations
    • Camera positioning and pointing
    • Animation
  • Lighting and Shading (2.0)
    • Ambient reflective, and specular lighting
    • Light sources
    • Material properties
    • Gouraud Shading
    • Phong reflective model
  • Texture Mapping (1.0)
    • Applying textures to 3D surfaces
    • Texture transformations
  • Input and Interaction (1.0)
    • Input devices
    • Selecting objects in a 3D scene
  • Image Space Algorithms (2.0)
    • Hidden surface removal
    • Blending and transparency
    • Fog and depth queuing
  • Efficiency in Graphics Applications (1.0)
  • Exams/Reviews (1)

Course Outcomes

1: The student will demonstrate an understanding of the mathematics which underlie modern 3D rendering algorithms by manually performing mathematical computations.

1.1: Students will correctly specify affine geometric transformations and perform related algebraic computations by hand.

1.2: Students will correctly state the name of the coordinate frame, in which result of each transformation lies.

1.3: Students will correctly perform calculation related to the Phong lighting model .

1.4: Students will describe in order the operations carried out on vertex related data and the desired end result of each stage of processing of the graphics pipeline.

1.5: Students will manually calculate the end results for a particular stage of the computer graphics pipeline.

1.6: Students will describe common uses of the depth buffer and other image space algorithms needed to achieve a desired effect in the rendering of a 3D scene.

1.7: Students will use two dimensional texture mapping to increase the realism and surface detail of 3D objects through the correct specification of texture coordinates and other texture parameters

2: The student will demonstrate an understanding of computer rendering algorithms and computer graphics pipeline architectures through the implementation of software for the purpose of displaying realistic animated 3D scenes.

2.1: Student will demonstrate an understanding of issues related to real-time animation by implementing software for the purpose of displaying an animated.3D scene.

2.2: Students will specify and apply transformations to create 3D scenes viewed from a particular viewpoint.

2.3: Students will specify and apply transformations to position, orient, and scale visual objects in an animated 3D scene.

2.4: Students will demonstrate practical understanding of Phong lighting model principles through the specification and implementation in a software application designed to render a realistically illuminated 3D scene.

2.5: Students will modify normal vectors to achieve special-purpose lighting effects.

2.6: Students will write event-driven programs that receive information from input devices such as a mouse or keyboard and allow a user to interact with an animated 3D scene in a useful manner.

2.7: Students will correctly specify vertex related data.

2.8: Students will use the depth buffer and other image space algorithms.

3: The student will demonstrate an understanding of the mathematics which underlie modern 3D rendering algorithms by manually performing mathematical computations.

3.1: Students will correctly specify affine geometric transformations and perform related algebraic computations by hand.

3.2: Students will correctly state the name of the coordinate frame, in which result of each transformation lies.

3.3: Students will correctly perform calculation related to the Phong lighting model .

3.4: Students will describe in order the operations carried out on vertex related data and the desired end result of each stage of processing of the graphics pipeline.

3.5: Students will manually calculate the end results for a particular stage of the computer graphics pipeline.

3.6: Students will describe common uses of the depth buffer and other image space algorithms needed to achieve a desired effect in the rendering of a 3D scene.

3.7: Students will use two dimensional texture mapping to increase the realism and surface detail of 3D objects through the correct specification of texture coordinates and other texture parameters

4: The student will demonstrate an understanding of computer rendering algorithms and computer graphics pipeline architectures through the implementation of software for the purpose of displaying realistic animated 3D scenes.

4.1: Students will write event-driven programs that receive information from input devices such as a mouse or keyboard and allow a user to interact with an animated 3D scene in a useful manner.

4.2: Students will correctly specify vertex related data.

4.3: Students will use the depth buffer and other image space algorithms.

4.4: Student will demonstrate an understanding of issues related to real-time animation by implementing software for the purpose of displaying an animated 3D scene.

4.5: Students will specify and apply transformations to create 3D scenes viewed from a particular viewpoint.

4.6: Students will specify and apply transformations to position, orient, and scale visual objects in an animated 3D scene.

4.7: Students will demonstrate practical understanding of Phong lighting model principles through the specification and implementation in a software application designed to render a realistically illuminated 3D scene.

4.8: Students will modify normal vectors to achieve special-purpose lighting effects.