Wednesday, June 23, 2021

Summer Course Revisions 2021: CS315 Game Programming

The first of my summer course revisions is CS315: Game Programming. The online course plan can be found in the usual place. This was a fairly easy revision since I have recently revised a manuscript dedicated to the course. The paper has been accepted for publication in the Journal of Computing Sciences in Colleges, and I will be presenting it at the annual meeting of the Midwest chapter. Writing and revising that paper required me to carefully read through notes about the planning and execution of the course as well as my reflections, which are publicly available in a blog post. The paper includes some thoughts about what might be done in the future, so planning the course became a matter of following my own advice.

I decided to keep Godot Engine for Fall even though we will be back in the lab. I discussed this choice with my Spring game production studio course, which included students who had taken CS315 in Fall 2019 using UE4 and in Fall 2020 using Godot Engine. They unanimously agreed that using Godot Engine was a better choice and that focusing on 2D games in particular helped control project scope. 

I kept the overall course structure from Fall 2021, including the scaffolding of projects. The instructions are all based on Godot 3.x, and if 4.0 is released before the semester starts, I will have to think about which version to use in class. I removed the one-week 3D project from the course plan. Of all the work from Fall 2020, this was the least interesting. It will be interesting to see if students really care about this or not. It's not clear to me if 3D has the mystique to them that it once did for undergraduates. It's so common now that perhaps they will understand that it's fundamentally just like 2D, but with more asset work required and therefore slower cycle times.

Because we will be meeting in person, I have removed the requirement for web builds. I am a little sad to see this go because it's an interesting process, but it is no longer required when we can instead go back to showcase-style presentations. I can always add continuous integration as an option for the final project, which will be the first place where public dissemination becomes desirable.

I plan to have a one-week midsemester jam, potentially to be called the "Midsemester (Ex|J)am." This was a fun break for the students last year, to have a week to just make something that shows off specific technical skills. It should provide a useful transition to the final project. The descriptions of both of these are commented out of the course site right now since they will require a bit more revision. It does not seem worth that revision until I have a chance to get to know this crop of students, and Projects 0–2 should nicely fill up the first six weeks of the semester.

The schedule for the weeks will have students presenting their work on Tuesdays, and so in my plans, I have sketched in a few short tutorials for Thursdays. Some of the things I had in ad hoc videos last Fall I can do in class meetings, with the benefit of live Q&A. Without quizzes or attendance, there's a chance that students may decide to skip these meetings and just work by themselves. It certainly makes more sense for me to reuse the lengthy project descriptions I wrote for my asynchronous online semester rather than to write up shorter ones that are supplemented with ephemeral live demos. I intend to be open with the students here, to get a sense of what excites them and trying to use our time together most fruitfully, whether that means tutorials, Q&A, or philosophical discussions about the role of higher education in 21st century America.

One major addition I intend to make for the final project is the inclusion of development logs. I used design logs in Game Design in Fall 2020, where students had to log their efforts to earn a grade each week. Here, I would like to do something similar to make clear a distinction that some students seem to miss: the difference between "something is due in two weeks" vs "you are expected to make continuous progress on this over the next two weeks." It was the post-Thanksgiving, final iteration of the Fall 2020 game programming projects where I really became aware of this confusion. I hope that using development logs will help me get out in front of the problem. If nothing else, it will prompt me to have a discussion about this with the students, and perhaps I can even learn more about their experience through that.

No comments:

Post a Comment