Daily class schedule

CSCI 357
Computer Graphics
Fall, 2017

week
M
W
F
readings in Hearn and Baker
8/28-9/1
Introduction to Computer Graphics.
Graphics hardware and software.  Introduction to OpenGL and JOGL.  Some example programs. OpenGL drawing primitives.  Java Event handling. 1-3
9/4-9/8
Labor Day
Line drawing.  Bresenham's line algorithm.
Bresenham's circle algorithm.  Polygon fill algorithms. 
4-6
9/11-9/15
Pattern filling.  Creating a GUI in Java.  Antialiasing.
Clipping.  Cohen-Sutherland algorithm.  Liang-Barsky algorithm. Polygon clipping.  Sutherland-Hodgman algorithm. 7, 8
9/18-9/22
Weiler-Atherton polygon clipping algorithm.  Geometric transformations.  Homogeneous coordinates.
Composition of transformations. Three-dimensional transformations.
Transformations in OpenGL.  The OpenGL matrix stack.  3D demos.
8, 9
9/25-9/29
3D models.  OBJ files.  Hierarchical modeling.
Viewing in 3D.  Generating the view matrix.  The synthetic camera model.  Projections.
Types of projection.  Implementation of projections. 
10, 11
10/2-10/6
Clipping in 3D.  3D demos.  Introduction to illumination and shading.
The lighting model.  Ambient light.  Diffuse reflection.  Specular reflection. Attenuation.  Direction lighting. Shading models.  Gourad and Phong shading.  Lighting in OpenGL.
17
10/9-10/13
Review for exam
Midterm exam
Phong shading.  Lighting in OpenGL.  Computing normal vectors for lighting applications.

10/16-10/20
Fall Break
10/23-10/27
Pass back and go over exam.  Introduction to visible surface determination. Scan line algorithm. The depth buffer algorithm.  Depth-sort algorithm. Binary space partitioning.  Area subdivision.  Ray casting.
16
10/30-11/3
Texture mapping. Texture mapping in OpenGL.  Computing texture coordinates.
Bump mapping.  Environmental mapping.
18
11/6-11/10
Shadows.  Shadow algorithms.

Introduction to animation. Deforming objects.  Character animation.  Linear interpolation.
11/13-11/17
Parameterization by arc length.  Speed control. 
Path following.  Introduction to global illumination models.  Ray tracing.
Reflection, refraction, and shadows.  Finding intersection points.  Efficiency considerations.
11/20-11/24
Distributed ray tracing.  Introduction to POV-Ray. POV-Ray.  Scene description language.  Examples. Thanksgiving break
21
11/27-12/1
Programming in POV-Ray.  Identifiers.  Macros.  Conditional directives.  Animation with POV-Ray.
Radiosity.  Photon mapping. Curve design.  Lagrange interpolation.  Bezier curves.

12/4-12/8
Interpolating splines.  Bezier splines and B-splines.
NURBS.  Surface Design.  Blender demo.  Curves and surfaces in OpenGL. Review for final exam

Final exam
Saturday, December 16, 2-4 pm