Beginning game programming : a GameDev.net collection - Hattan, John; Sikora, Drew (Course Technology/Cengage Learning, 2009)