
Platformer Game (2D)
Project Title:
2D Platformer Game using C
Project Overview:
This project is a classic 2D side-scrolling platformer game created using the C programming language, often utilizing graphics libraries like SDL (Simple DirectMedia Layer). The player controls a character who can move, jump, and interact with obstacles, platforms, and enemies.
Key Features:
- Character Movement: Supports left, right, and jump controls.
- Collision Detection: Detects when the player touches platforms, walls, or hazards.
- Scrolling Background: Side-scrolling environment gives a sense of progression.
- Enemies and Obstacles: Basic AI for enemies and interactive objects like spikes or moving platforms.
- Levels and Goals: Multiple levels with increasing difficulty and an objective (like reaching a flag).
- Lives and Score System: Tracks player lives, collectibles, and score.
- Game Over & Restart: Game state management for victory, loss, and restart options.
Technologies Used:
- C Language: Core game logic and data structure management.
- SDL / OpenGL: Used for rendering graphics, handling input, and managing audio.
- Structs and Pointers: For character properties, level elements, and memory control.
Learning Outcomes:
- Understanding 2D game physics like gravity and jump mechanics.
- Implementing collision detection and response systems.
- Designing modular code using functions and structs.
- Using graphics libraries to handle rendering and input in real-time.
- Managing memory efficiently using dynamic allocation.
Possible Enhancements:
- Add power-ups and special abilities.
- Include animations for smoother character motion.
- Add sound effects and background music.
- Introduce a level editor for custom gameplay.
- Implement save/load game state functionality.