Magesh Chandramouli is an Asst. Professor in Computer Graphics Technology at Purdue University, Calumet. Earlier, he was a Frederick Andrews Fellow at Purdue University, West Lafayette, where he completed his doctoral studies at the Department of Computer Graphics Technology. He completed his Master of Science from the University of Calgary, Master of Engineering from the National University of Singapore, and his Bachelor of Engineering from the College of Engineering, Guindy, India.


Programming skills are becoming increasingly important in computer graphics (CG), both in academia and industry. Besides enhancing the critical thinking and problem solving skills of ET students, programming knowledge also enables CG students and professionals to take advantage of the innumerable job opportunities in various ET disciplines. However, quite frequently, programming is being perceived as a tedious and time-consuming process. There is an imminent need to transform this attitude and hence, the instructional approach to teaching and learning programming. While this signifies numerous opportunities for students, it also inherently involves the challenge of preparing students suitably for these opportunities. Students continue to face several difficulties when learning programming and the lack of efficient tools to overcome such difficulties can affect students’ motivation. Over time, this creates to a drastic and negative impact in their attitude towards ‘learning programming’, which is undesirable for student success in engineering education. Even though numerous tools and techniques are available to teach programming, not much research that uses interactive, dynamic CG-based VR worlds for teaching programming could be found. While learning programming is indeed challenging, an innovative approach can turn this challenge into a fun-learning process. This study elaborates the use of 3D VR worlds to reduce the cognitive load and make the learning process interesting. The 3D visual approach enables learners to overcome any inherent inhibitions they may have owing to the logic and complexity involved in learning programming. The interactive framework stimulates them to explore and understand programming using practical examples and a game-oriented instruction.