Introduction to C++ Game Programming by Alan Thorn