GCS StuCo: Introduction to Game Development in Unity (98-127)

Course Description

This course is intended to be the definitive introduction to the Unity game engine. Students will learn all the major skills necessary for game development, from scripting, asset pipelines to sound integration among others, and leave the course with sufficient foundation to confidently pursue more advanced topics in any specialization of their choice related to game development in Unity.

This course is, however, NOT a game design course, and will not go into topics such as design documents, scoping, character, environment, level or narrative design.

Previous Course Iterations: Spring 2019, Fall 2019, Spring 2020, Fall 2020, Fall 2021

StuCo

Tuesdays @7:00pm-8:50pm
DH 1112


Office Hours

Sundays @2:00-4:00pm
Zoom


Instructors

Jingxuan Chen
Shangyi Zhu
Dario Quintero
Jeffrey Wang

Schedule

Jan 13
Jan 20
Basic Scripting
Assignment 1 OUT
Jan 27
The 2D Asset Pipeline
Feb 3
The 3D Asset Pipeline
Assignment 1 DUE
Assignment 2 OUT
Feb 10
Shaders and VFX
Feb 17
Sound
Assignment 2 DUE
Assignment 3 OUT
Feb 24
UI, Lighting and Postprocessing
Assignment 3 DUE
Assignment 4 OUT
Final Project OUT
Mar 10
Intermediate Scripting
Assignment 4 DUE
Mar 17
Procedural Animation
Mar 24
Advanced Player Controller
Mar 31
Enemy AI
Final Project Checkpoint
Apr 7
Programming Patterns
Apr 14
Networking
Apr 21
World Streaming
Final Project DUE

Course Goals

Upon successful completion of this course, students should be able to:

  1. Understand the role of common windows in the Unity Editor, including but not limited to the Scene, Project, Console, Game, Hierarchy and Inspector windows.
  2. Explain what an entity component system is and how it differs from object oriented programming.
  3. Build custom components to drive gameplay behaviour by inheriting from Unity’s Monobehaviour class and accessing other built-in Unity components such as the Transform, Rigidbody or Collider components.
  4. Create, import and implement assets with animations, both 2D and 3D.
  5. Create custom shaders and visual effects using Unity’s Shader Graph package and ParticleSystem component
  6. Implement sound using FMOD and Unity’s built-in sound system

Office Hours

Every Sunday (starting September 20th) from 2:00-6:00pm, GCS holds open office hours via Zoom, where teams come to work in a collaborative environment. Students in the StuCo are also encouraged to come, especially while working on the two main course assignments, as listed below.

Final Project

On top of what has been implemented in the assignments, students are expected to implement 2 additional features of choice from a provided list. Everything should then be consolidated and extended into a playable game. Students have the option of either designing their own game or implementing a design provided by the course. Students are expected to submit a build of their game as well as a short writeup describing the additional features they’ve chosen to implement. All work is expected to be completed individually.

Course Resources

  • Syllabus