James Madison University

Spotlight on Computer Graphics, Music and Multimedia

CS349 considers both theoretical and practical aspects of digital media. In particular it considers object-oriented programming techniques for multimedia applications, event-based programming, a variety of different individual media, the issues that arise when combining multiple media, and time-based media.

The portion of the course on visual content begins with a discussion of the biology, physics, and psychology of vision.

Diagram of EM Wave Diagram of eye

It then moves on to a discussion of sampled and described static visual content (a.k.a, images and graphics):

Diagram of spatial convolution diagram of cubic curve

and sampled and described dynamic visual content (a.k.a, movies and animation):

The portion of CS349 on auditory content begins with a discussion of the biology, physics, and psychology of hearing.

diagram of sound waves diagram of ear

It then moves on to a discussion of sampled and described auditory content.

CS488 is an introduction to the mathematical and algorithmic issues that arise in computer graphics and visualization. It covers the material from the bottom up. That is, it begins with the mathematical and algorithmic foundations and then moves to application-level programming.

CS 488 begins with an introduction to linear algebra (for those students that have not taken such a course).

diagram of matrix multiplication diagram of cross product

It then moves on to the mathematics and algorithms used in traditional "pipeline" rendering architectures, including 3D analytic geometry, projections, lighting, and shading.

diagram of specular reflection diagram of phong shading

By the end of this portion of the course, students have implemented all of the algorithms necessary for basic "pipeline" rendering, and have used their implementations to render the following:

PHOTO: wireframe PHOTO: teapot

The course then moves on to a discussion of "commercial" 3-D graphics APIs (e.g., OpenGL, Direct3D, Java3D), and how to use them to build graphical applications (including games and animations).

For more information, see the most recent syllabus for CS349 and CS488.

Welcome from Computer Science

PHOTO:Sharon Simmons

The Computer Science department strives to be an intellectual community that continually explores the broad field of computing, applies this knowledge to solve problems in a variety of domains, and engages with the profession and society at large. More >

Announcements


  • New! Spring 2012 Advising Newsletter
  • April 3 - Registration for 2012 Fall Semester Begins
  • April 27 - Last Day of Classes
  • April 30 - May 4 - Final Exams
  • May 4 - Graduate School Commencement
  • May 5 - Undergraduate Commencement