Computer Game and Media Programming

COM S 437
  1. Credits and contact hours: 3 credits, 3 contact hours
  2. Instructor’s or course coordinator’s name: James Lathrop
  3. Text book, title, author, and year: None required
  4. Other supplemental materials: In-class materials

Specific course information

  1. Brief description of the content of the course: Students will learn video game programming using current game engine interfaces with real hardware. Particular attention is paid to the console architecture, development environment, tool chains, 2D graphics, 3D graphics, controllers, memory management, and audio systems.
  2. Prerequisites or co-requisites: COM S 336 or permission of instructor
  3. Required, elective, or selected elective?  Selected Elective

Specific goals for the course

  1. Specific outcomes of instruction:
  • To be able to create a game pitch document and pitch presentation (3)
  • To be able to create a well-written game design document
  • Create a prototype game(s) using several different video game engines/frameworks and/or paradigms (1, 6)
  • Understand how to create basic artificial intelligence in computer video games
  • Understand basic generic video game software architecture and concepts, including (but not limited to) AI, input/output, movement, physics, use of shaders, and managers

Brief list of topics to be covered

  • Video game history
  • Video game design
  • 2D games on several platforms
  • 2D movement and collision detection on several platforms
  • 3D games on several platforms
  • 3D movement and collision detection on several platforms
  • AI engine and structure
  • AI for character movement and steering behaviors
  • AI for coordinating movement
  • AI and pathfinding
  • AI and decision making
  • Tactical versus strategic AI
  • Turn based AI
  • Special input/output devices (e.g. Kinect and Oculus Rift)
  • Platforms include (but are not limited to) XNA, MONOGAME, Unity, Unreal, BEPU Physics