Object-Oriented Programming
SONIC ULTIMATE HEROES
2D OOP platformer engine with custom physics and sprite animation system.
OVERVIEW
A fast-paced 2D platformer showcasing a strong command of object-oriented design principles, custom physics implementation, and third-party graphics integration. Built on a scalable inheritance hierarchy with runtime polymorphism throughout.
KEY HIGHLIGHTS
- 01Scalable inheritance hierarchy branching Hero/Enemy parent classes into typed implementations
- 02Custom physics: gravity, acceleration, hitbox collision resolution for terrain and hazards
- 03Serialization system for save/load of game states + persistent leaderboard; custom sprite-sheet animation class
TECHNICAL IMPLEMENTATION
Advanced OOP Architecture
Designed a highly scalable system using Inheritance and Polymorphism, branching core parent classes (Hero, Enemy) into specific implementations with unique behaviors. Runtime dispatch through virtual methods enabled adding new character types without modifying existing logic.
Custom Physics Engine
Implemented a physics system handling gravity, acceleration, and precise hitbox collision resolution for terrain and hazards. Collision layers distinguished between lethal and non-lethal contact, and velocities were resolved independently on X/Y axes to prevent tunneling.
Game State Management
Coded dynamic mid-game character switching mechanics and developed a comprehensive serialization system (File I/O) to save and load complex game states, maintaining a persistent leaderboard across sessions. Created a custom Animation class to parse and render sprite sheets with configurable frame timing.
TECH STACK