Well, I finished building another game with the Unity game engine. I have to admit that it is a lot of fun, but I also see the amount of change that is happening in the gaming space and with the Unity game engine. This Space Shooter game was not an original game of my own creation, but rather I followed a detailed, step-by-step tutorial put out by Unity. The tutorial was created with a version of Unity that is a few years old. Because of the changes in gaming industry and with the Unity game engine, many of the steps in the tutorial didn't quite work. This gave me the opportunity to dive into the Unity documentation and do some debugging on my own. In short it was a good learning experience for me and the kind that I would like my students to have. Admittedly, it is a fairly simple game but it let me work with game design, coding, audio, and deploying an application to the web. For me it is only deployed locally on my machine, but everything is there so that it could be moved to a web server.
What I have learned
The plan for the year is a new course in Game Design and Development using the Unity game engine. Initially, I was rather concerned about teaching this class. There was so much to learn -- the game engine, C#, in addition to building out 14 units following the Unity curriculum framework. However, when I stepped back and thought about it, I realized that over the years, I have learned many new programming languages, IDEs, and development tools. This was going to be just one more language, one more IDE, and one more new way of thinking of application development.
So far I have built out three of the 14 units and plan to complete two more units before school starts in two short weeks. I have also completed three simple games, following tutorials. But in doing so I have made many mistakes, noted what they were, how they were resolved and am quite sure that many of my students will run into similar problems that I now can recognize and guide through problem determination and resolution.
What to teach and how to teach it
Unity is kind enough to provide a curriculum framework for teachers who want to take game design and development to the classroom. In addition, they provide no charge licences to for education if you apply for one of the "licenses for education grants". The grant process was very easy and I will be having the licenses installed on my classroom machines next week.
The curriculum framework takes students through a straightforward process which starts with looking at games and reviewing them with their own thoughts and opinions, then learning about the game design process and reviewing games again with the design process in mind. Following units go into project management, story boarding, rapid prototyping, etc. Each unit has students learn a concept, use the concept in project or reflection paper, and then add a section to their Game Design Document which is the capstone of the first semester. The second semester then builds on that with Game Development.
My hope is to pull in local indie game developers to evaluate student game designs early on and then at the end of the semester when they have their completed Game Design Document and summary presentation. After digging into Career and Technical Education at last weeks conference, I want to provide students with that real-world input on their projects.
When I started preparing for this course I was mostly concerned about everything that I didn't know about game design and development. Now, I still have many gaps in my knowledge, but I am excited to learn along with my students something that could be a fun activity or lead to a career!