REVIEW - Linux Game Programming


Linux Game Programming


Mark "Nurgle." Collins



Course Technology (2001)




Tony Houghton


October 2001



The main focus of this book is an introduction to some key libraries, namely SDL, a wrapper for 2D graphics, sound and input devices and Mesa, an OpenGL clone for 3D graphics. However, this accounts for fewer than half of the total pages, because there is also material on a host of other topics. This is more of a weakness than a strength, because coverage is very patchy. For example, there is considerable detail on a few AI techniques, while the crucial topic of controlling timing in an action game is barely mentioned.

Another weakness is in the code examples. Most of them are fragments rather than forming programs that can be run and they are frequently neither clear to understand nor well-written. One example is labelled as 'probably very buggy' without pointing out why. I would much prefer the book if it had concentrated on the development of one or two simple, but real working games, as case-studies.

The book's main strength is in bringing together most of the subjects necessary to write Linux games, even if most of the topics require further reading; it is backed up by a good reference section. An appendix on porting is also very useful, despite revealing further weaknesses in the author's experience of C and GCC. It is also well up-to-date, although some of the libraries and programs it covers are prone to rapid change.

On balance, I could not really recommend this book, even though it has no direct competition that I know of. The subject material here seemed to be dictated by what the authors thought would be cool to write about rather than what would make a good book.

Book cover image courtesy of Open Library.

Your Privacy

By clicking "Accept All Cookies" you agree ACCU can store cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

By clicking "Share IP Address" you agree ACCU can forward your IP address to third-party sites to enhance the information presented on the site, and that these sites may store cookies on your device.