Dragonfly - Strengthening Programming Skills by Building a Game Engine from Scratch
Computer game development has been shown to be an effective hook for motivating students to learn both introductory and advanced computer science topics. While games can be made from scratch, to simplify the programming required game development often uses game engines that handle complicated or frequently used components of the game. These game engines present the opportunity to strengthen programming skills and exposing students to a range of fundamental computer science topics. While educational efforts have been effective in using engines to improve computer science education, there have been no published papers describing and evaluating students building a game engine from scratch as part of their course work. This paper presents the Dragonfly approach in which students build a fully functional game engine from scratch and make a game using their engine as part of a junior-level course. Details on the programming projects are presented, as well as an evaluation of the results from two offerings that used Dragonfly. Performance on the projects and student assessments demonstrate the efficacy of having students build a game engine towards strengthening programming skills.
See the book:
This is an Author's Accepted Manuscript of an article published in the Computer Science Education, special issue on Games in Computer Science Education, Taylor & Francis, June 2013. Available online at: http://www.tandfonline.com/doi/full/10.1080/08993408.2013.781840