This course provides a survey of computer science in the context of computer games. Developing successful computer games requires knowledge of a wide variety of different subjects within computer science. We will survey graphics, physics simulation, theoretical computer science, artificial intelligence, networking and explore their use in the development of computer games. We will also focus on the design of an enjoyable gaming experience.