Rudy Rucker's
Software Engineering and Computer Games

Main Page

Rudy Rucker

Software Engineering and Computer Games

Addison-Wesley, November, 2002, now out of print.

Available for free online as of July, 2011.



Download a PDF file of the complete textbook, online as of July 28, 2011. (26 Megabytes.)

Download the C++ Pop framework for the Windows platform, which uses the Microsoft Visual Studio to compile (was originally developed for the 6.0 (1998) and .NET 2003 versions of Visual Studio, but may work with the newer versions as well).


    In developing Software Engineering and Computer Games and its accompanying software framework I had four broad goals.

·   To teach a lively style of object‑oriented software engineering.

·   To show how to bring a complete program to the level of a commercial release.

·    To provide a “game engine” framework of linked classes for game development.

·    To create programs that are interactive, rapidly executing, and visually beautiful.

          Software Engineering and Computer Games was originally developed for use as the primary textbook in undergraduate Software Engineering and graduate Software Projects courses in the Department of Computer Science at San Jose State University (SJSU for short).  In these classes we cover the topics of Software Engineering in the context of having student teams design and implement computer games.  Depending on the nature of the course, lesser or greater emphasis can be placed on the student projects.

     The book is also meant to be suitable for self-study.  Readers are encouraged to use the book to create their own games.  Software Engineering and Computer Games is specifically designed so as to allow would-be game developers to get their own games running easily and rapidly.

     In order to make it feasible for readers of this book to carry out a game project without getting lost in endless details, I’ve created an open source C++ software framework for developing computer games; this is the “Pop Framework,” with source code available for free download from this website.

     As well as working as a software engineering text or as a self-study guide for budding game-developers, Software Engineering and Computer Games can also serve as the text for a course on computer games such as the Computer Game Design and Programming such as the one we have at SJSU.  The idea of having university Computer Science departments teach computer game programming is a fairly new idea.  Software Engineering and Computer Games should serve to show that a course of this nature can be taught in a sound and academically respectable fashion.


Sample Pages

Table of Contents.


Hall of Fame

On the Hall of Fame page you can view screenshots of some of the game projects that have been built using the Pop framework. You can also download working executables for these games from this page.


The Extras page has information about how to make a team website, links to some of Rucker's writings about games, information about how to enter the Independent Games Festival at the Game Developer's Conference, a link to a Java Asteroids game, and more.


The Instructor page has an Instructor Guide and suggestions on how to get a Computer Games course approved.