As the greatest hacker of our time, you delve into your own system to purge it from corrupted data. Find the bugs, eliminate them!
- Genre: First-Person-Shooting
- 10 weeks development (Half Time)
- Created in our own engine
- Written in C++
- Scripts written in Lua
- Levels created in Unity
- 5 Programmers
- 2 Level Designers
- 3 Graphical Artists
- 3 Technical Artists
- Player collision detection
- Implemented support for the player versus environment collision detection to alter the players movement accordingly.
- Implemented floor/roof collision logic
- Implemented and iterated on collision between the player and plane colliders on the floor and the roof.
- Implemented swept collision logic
- Implemented and iterated on collision between the player and wall colliders in order to get smooth collision with expected behavior.
- Created colliders using Unity data
- Used plane and OBB collider data from unity in order to create plane colliders for the game.
- Navigation mesh
- Use data received from Unity to construct a navigation mesh built with unique triangles and sorted them into a quadtree.
- The pathfinding uses the current enemies position as a start point and then receives an input as an end point (if it is on the nav-mesh). Then, using the triangles of the nav-mesh, finds the closest path with the help of the A* algorithm.
- Digesting duck funnel
- In order to exclude unnecessary waypoints returned from A* the path needs to be optimized. This is done by using a funnel algorithm.
- Pathfinding edge-cases
- If the enemy were to choose a point outside the nav-mesh the enemy character will find and pathfind to the closest point inside the nav-mesh.
- Optimized pathfinding
- Implemented quadtree to optimize the performance of enemies pathfinding on a navigation mesh.
- Optimized collision
- Implemented quadtree to optimize the performance of the players collision checks. The game contains a total of over 1200 colliders and it's imperative that we maintain a smooth gameplay experience.
Player movement and collision!