CSCI 181G PO

This is the website for CSCI 181G PO: Game Engine Programming. Course information is available in the syllabus.

Canvas
Assignments/reflections
Slack
Course announcements, chat, Q&A
Miro
In-class activities and whiteboards. The board password is always recursion.
Office hours
MWF mornings (9-11:30), usually in my office but sometimes on Zoom (I'll announce when it's on Zoom)
Contact me
On Canvas or by email
Other helpful chat channels
On Pomona Slack: #rust, #text-editors
Homework
Due via GitHub Classroom (just push your commits!). Some assignments will be due via Canvas.
Important:
For childcare/work-life-balance reasons I will make no particular effort to answer emails or Canvas questions over the weekend or at night, so be sure to get started early and don't wait until the last minute to ask questions!

Schedule

We'll talk about 2-3 topics per week from the list below, and try to prioritize them based on the games we're working on and what we need to know when.

Deliverables are typically due the Sunday at the end of the week. For example, the Simulation Game is due by the end of February 4.

Dates Deliverables Topics   Board link
1/16, 1/18 Rust Book Report (Pt 1) Intro to Rust Version control and unit testing board
1/23, 1/25 Rust Book Report (Pt 2), To-Do List Stack v. heap, borrowing Writing Rust well board
1/30, 2/1 Simulation Game Interactivity, Rust module system Simulation Games board
2/6, 2/8 Rogue-like Entities and Spaces Frame rate; controlling entities board
2/13, 2/15 Graphical Rogue-like Sprites and Graphics Loading levels from disk; Unity board
2/20, 2/22 Graphical Rogue-like (2/22) Graphics, cont'd; Unity Continuous Space, Collision Detection & Response board
2/27, 2/29 Adventure Game (2/29) Physics, movement, animation Godot, Bevy; homework support board
3/5, 3/7 Platformer (3/7) Audio, sound effects; refactor to genre-specific Resource pipelines, running on web; refactor to gameobject  
Spring Break        
3/19, 3/21 Project plans Team-up and project planning; refactor to ECS progression, menus; Bitmap text, Game state and modes  
3/26, 3/28 Role-Playing Game (3/26) Tech Talk 1 Tech Talk 2  
4/2, 4/4   Tech Talk 3 Tech Talk 4  
4/9, 4/11 Playtest Report Tech Talk 5 Tech Talk 6  
4/16, 4/18   Tech Talk 7 Tech Talk 8  
4/23, 4/25   Tech Talk 9 Tech Talk 10  
4/30, Reading Days Game Projects (Friday) Demo Day Reading Days  
Exam Slot None Not Used :)    

Readings and Resources

Rust

Performance Profiling

3D

Books (all optional)

Many of these are available through the library via O'Reilly:

  • Artificial Intelligence and Games, Yannakakis and Togelius
  • Procedural Content Generation in Games, Shaker, Togelius, and Nelson
  • Game Engine Architecture, Gregory
  • Data Oriented Design, Fabian
  • Essential Mathematics for Games & Interactive Applications, Bishop
  • Game Physics, Eberly
  • Real-Time Collision Detection, Ericson
  • Artificial Intelligence for Games, Millington & Funge