🧭 Topic: Project 101

Quick Overview :

This workshop serves as a comprehensive conclusion to the course, combining fundamental C++ skills with practical game development concepts. Transition from writing simple console applications to building a fully functional game engine that handles real-time mechanics.

📌 Covered in This Topic

  • Frame-Independent Movement: Implementing Delta Time to calculate time elapsed since the last frame, ensuring consistent speed regardless of frame rate.
  • Game AI & Math: Creating Simple AI with chasing logic using the Pythagorean theorem and vector normalization to make enemies move directly toward the player.
  • Physics & Interaction: Implementing Collision Detection using the AABB (Axis-Aligned Bounding Box) method to check for overlaps between objects.
  • Data Structures: Using Structs & Arrays to manage complex game data, such as player stats (score, time taken) and user credentials.
  • Sorting Algorithms: Implementing and comparing Bubble Sort and Insertion Sort to organize high score leaderboards.
  • File System Management: Using <fstream> to save and load player data, allowing the game to persist high scores and user progress.
  • Audio & Feedback: integrating background music (BGM) and sound effects (SFX) using the mmsystem.h library to provide immediate feedback to player actions.
  • Code Organization: Splitting code into Header and Source files to separate declaration from definition and maintain a clean project structure.

📑 Slides & Materials


⏩ Navigation


Tip :

If something doesn’t make sense — don’t stay stuck alone. Ask the TA to clarify it right away. Often, a quick question can save you a lot of time and frustration. Remember: if you’re confused, chances are others are too.