Peter Lockett's submission for Games Tools Programming