2.5D Game
Autumn 2023
In this project I aimed to practice my Unity skills and to stretch myself by creating more customised features such as 2.5D collisions. I improved my animations system skills by streamlining from Aseprite frames to programmatically controlling animation duration and transition conditions. Additionally, I implemented custom physics to create a 2.5D world where 3D collisions occur within a top-down tilemap environment.
Key Features
- Animation System: Animations system that streamlines Aseprite sprite sheet to programmatically control animation states, animation duration and transition conditions.
- Custom Physics: A jumping mechanic in a topdown game where the collisions need to be check against the 3D heights of wall tiles. These heights are precalculated for an entire tilemap by using stair tiles to indicate a change in level.
Challenges, solutions and lessons learnt
Initially, attempting to store a 3D position of the player and use this to calculate 3D collisions, however this generated errors from adding too much complexity. This led to a rework in which I simplified the logic to only require knowledge of the ground level and the player's position to determine how far the player needs to fall to reach the ground. Based on the calculated ground position, I can then recalculate the ground level based on the tile below the player.
Trello
![](../Assets/25DTrello.png)