{!}

<_Overview>

This is a short-term parkour game project developed using Unity, with the primary goal of exploring different game engines and gaining experience in multi-platform development. Previously, I focused mainly on Unreal Engine development, but this project aims to broaden my technical skills and create more possibilities for future projects.

<_Challenge>

...Challenges Encountered During Development

Random Obstacle Generation

To achieve random generation of obstacles and collectibles, the game route is dynamically constructed using modular tiles. Each tile is designed with three distinct lanes as the foundation for player paths. For each lane, I created a custom structure to systematically track its contents, including obstacles and collectibles. This structure not only records the type and position of each object but also allows for flexible adjustments to the generation logic. Through this system, I can ensure a balanced and engaging gameplay experience by dynamically altering the layout of obstacles and rewards, keeping the gameplay fresh and challenging.

Animation State Machine

To achieve smooth transitions between character animations, I experimented with several approaches. First, I designed a comprehensive animation state machine using the Animator Controller to precisely manage various character actions, such as running, jumping, sliding, and dodging. Then, I defined clear transition conditions for each animation state, factoring in elements like speed changes, player inputs, and ground contact. This ensured logical state switching and naturally fluid animation transitions.