Game Programming and AI


Student Work Sample

  1. Review: Vector Math
    1. Points and Lines
    2. Vector Length, Direction, Scaling and Unit Vectors
    3. Vector Addition and Subtraction
    4. Dot Product
    5. Angle Between Two Vectors in 2D and 3D
    6. Projecting one Vector onto Another
    7. Transformations in 3D Vector
    8. Rotations in 3D Vector
    9. Changing Speeds and Directions
  2. Introduction to C#
    1. Comparing C# and Java
    2. C# Basic Syntax
    3. Collections and Data Structures
    4. Struct in C#
    5. coroutines
    6. Singleton
  3. Introduction to Basic Game Engines and Game Physics with C# and OpenGL*
    1. Introduction to Computer Graphics Basics
    2. Rendering 2D Polygons
    3.  Coloring
    4. Rendering Simple 3D Shapes
    5. Moving Objects in 3D
    6. Case Study: Collisions and Game Physics
  4. Building 2D Games with Unity and C#
    1. Introduction to Unity
    2. Components of a Unity Game
    3. The Unity Life Cycle
    4. Sprites
    5. User Input and Scripting
    6. 2D Animation
    7. User Interface
    8. Music and Sound Effects
    9. Building a 2D Platformer Game with Sprites Animation and Tile Map
    10. Debugging
    11. Build and Publish
    12. Project: 2D Platformer Game
  5. 3D Game Basics
    1. 3D Movements: Translations and Rotations
    2. Forces
    3. Collision Detection
    4. Raycast
    5. Object Management
    6. Mesh Basics and Procedural Meshes
    7. Introduction to Rendering
    8. Lighting and Rendering
    9. Project: Treasure Hunt
  6. 3D Game Graphics and Animations
    1. Terrains
    2. Creating 3D Game Assets with Blender*
    3. Creating 3D Game Assets with AI Tools
    4. Introduction to Unity 3D Animation System
    5. Animator and Animation Controller
    6. Animation Controller Triggers
    7. Creating 3D Animations in Unity
    8. Project: Boxing Game
  7. NPC Intelligent Movements
    1. Patrol
    2. Smooth Follow
    3. Pursue
    4. Attack
    5. Flee
    6. Prediction
    7. Introduction to Event Handling
    8. Project: Survival Game with NPC AI
  8. Maze Generation and Pathfinding
    1. Perfect Mazes
    2. Maze generation algorithms: DFS, Prim’s, Kruskal
    3. Case Study: Pac Man
    4. Pathfinding and BFS
    5. A* and Weighted A*
    6. Unity NavMesh
    7. Dijkstra’s Algorithm
    8. Building a Pathfinding AI Game
    9. Project: Racing Game with NPC AI (Pathfinding)
  9. NPC AI Decision Making
    1. Review: Probabilities 
    2. Decision Trees
    3. Finite State Machine
    4. Markov Chains
    5. Hidden Markov Chains
    6. Decoding with Markov Chains
    7. Game Data Management 
    8. Building intelligent NPCs in games
    9. Project: Strategy Game with NPC AI
  10. Board Game AI
    1. Heuristics
    2. Minimax, Negamax and Alpha-beta Pruning
    3. Expectimax
    4. Tic Tac Toe AI
    5. Checkers AI
    6. Chess AI
    7. Project: Board Game AI
  11. Introduction to Reinforcement Learning
    1. Monte Carlo
    2. Introduction to Machine Learning
    3. Elements of Reinforcement Learning
    4. Limitations and Scopes of Reinforcement Learning
    5. Case Study: Tic-Tac- Toe Implementation with Reinforcement Learning
    6. Introduction to Unity Machine Learning Agents
    7. Introduction to PPO
    8. Building a Game with ML Agents and PPO
    9. Project: ML Game
  12. Real – time Multiplayer with Photon Fusion
    1. Basics of Cloud Networking
    2. How does multiplayer work?
    3. Introduction to the Photon Fusion Framework
    4. Fusion Project Configuration
    5. Host Mode Basics
    6. Building a real-time multiplayer game with Unity, Photon Fusion and AI
    7. Project: Real-time Multiplayer Game