Introduction | Repository contents | Contributing to this repository | Course description | License
The repository contains content for CS4730 - Game Design at the University of Virginia. This is a fully online course due to the continuing Covid-19 pandemic. The course will consist of online lectures (via Zoom), several homework assignments (to learn and use the Unity Game Engine), and a group project developing a fully playable game.
Note that the links below will not work correctly if you are viewing this online at github.com -- you will need to clone (download) the repository first
- Course Logistics: The syllabus, introductory slide deck, grading policy, course schedule, etc.
- Homeworks (md): The homeworks for the course, along with due dates and related things.
- Slides (md): Contains the slides used in the course.
- Final Projects: The final projects for the course.
Updates to the repository are restricted to approved individuals only, to prevent anybody from messing with the slides right before a lecture. However, others can still contribute to this repository -- to do so, take the following steps:
- Create a github account, if you do not have one
- Fork this repository: you can click on the "Fork" link in the upper right, or just click here
- Clone your forked repository on to your local machine
- Make any changes you want to your forked version, then commit and push your changes back to your forked repository
- Create a pull request, following the instructions here
At that point, I will receive a notice that a change has been submitted, and I'll look at it and hopefully accept it into the main repository.
When you want to bring in the updates from the main dsa1 github repository into your forked repository, you will need to follow the instructions here.
Introduces the development and design of modern video games. Includes the description and implementation of a 2-dimensional game engine (including sprite graphics, linear transformations, display trees, etc). Introduces concepts in video game design, including designing for teaching game mechanics, the distinction between mechanics, dynamics, and aesthetics, and pacing through levels / level design. Students complete the implementation of their game engine and then proceed to build a fully playable game in the engine they have created.
The ABET course objectives are below. Students will be able to:
- Understand and implement a basic 2-dimensional game engine.
- Increase understanding of game and level design, including how visual and auditory cues contribute to teaching a player the game mechanics of the system.
- Implement a fully playable game, including all aspects of the software lifecycle (design, implementation, testing, etc.).
The material in this repository is released under a Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA).
Copyright (c) 2020 by Mark Floryan