00:00 - Preroll
00:55 - Greetings
02:04 - Assignment Demo / Overview
08:42 - Detailed Specification
09:09 - Assets
09:45 - Player Animations / Movement
13:07 - Player Collisions
14:03 - Player Health
14:26 - Player Invincibility Frames
16:55 - Other Entities
18:07 - Player Attacking
20:07 - NPC Entities
21:51 - Tiles
22:22 - Camera Views (Follow / Room)
23:53 - Room Calculations
29:25 - Misc Controls
29:47 - Assets File
30:45 - Level File
32:57 - Room / Grid Calculations
36:16 - Tile Specification
36:56 - NPC Specification
37:35 - Patrol AI
39:44 - Follow AI
41:53 - Recommended Feature Implementation Order
42:51 - 1) Player Movement
44:58 - 2) Load Level
46:55 - 3) Spawn Player
47:10 - 4) Camera System
48:58 - 5) Spawn Sword
50:50 - 6) Player Attacking / Collision / HP
51:32 - 7) Animation System
51:54 - 8) Patrol / Follow AI
57:30 - 9) Line Intersection
58:10 - 10) Entity Intersection
1:05:27 - 11) Follow AI Line of Sight
1:05:36 - 12) Invincibility Status
1:06:48 - 13) Hearth Pickups
1:07:00 - 14) Black Tile Teleporting
1:08:53 - Custom Level File
1:09:31 - Outro
Memorial University - Computer Science 4300 - Fall 2022
Intro to Game Programming
Professor: David Churchill - http://www.cs.mun.ca/~dchurchill/
This is a course for students interested in learning the fundamentals of game programming and game engine architecture. Topics include an introduction to: vector math for games, rendering, animation, and artificial intelligence, collision detection, game physics, and user-interfaces. Students will be writing fully functional games using an ECS (Entities, Components, Systems) architecture, using the C++ programming language and the SFML graphics library.
Course Assignments / Files will not be released publicly