“Destination” is a game I’ve been wanting to create for a while, and at the start of 2021, I decided to dive into developing it using the Unreal 5 engine.

On this page, I will document the development and growth of the game, and the changes it takes over time.

The games description:
Destination is a platformer where your main goal is to collect enough pickups to get through to the exit as quickly as possible, but the environment is what stands between you and achieving that goal. The ‘pickups’ are used as fuel as well as currency, so it can be used to power devices, or unlock doors. The end exit is locked, so you need to collect enough pickups to unlock it to progress to the next level.

Different hazards will impede your progress, and you get ranked on time, the number of pickups missed, the amount of times you die, and how many tiles you interact with. The casual players have the option to simply collect enough pickups to progress to the next level, but if you want to challenge yourself and get better scores based on the criteria mentioned above, then there will be a score tracking of sorts for you to enjoy.

Below is the first video released showing a test level, and the various different features currently implemented in the game.


July 12, 2023

 Destination Blog: Unveiling

Hello everyone! I’m very excited to share with you all the first video I’ve released of my game ‘Destination”!

This is a test level for my game titled “Destination”. It’s in early development at this stage, so nothing you see here is final. There are still placeholders in place for a few things. The level is for both testing the individual blueprints, as well as stress testing things as a whole.


July 14, 2023

 Destination Blog: Foundation Blueprint

The creation of a lot of the world will be done by a single blueprint. It spawns the appropriate instance static mesh based on the options given. This blueprint also contains the instance destruction logic for when the individual pieces are destroyed.

If the material is set to something that you can dynamically interact with like lava or water, those pieces will be swapped out for the appropriate blueprint when the game starts. At runtime the blueprint will feed the required information to any blueprint it spawns to make their visuals match. This is not just the location and orientation and geometry, but also the transforms for the world coordinates of the materials to ensure each piece that’s destroyed will have its material line up correctly. This information is passed onto the mesh using ‘custom data’ to keep the draw calls low.

This video shows some of the various options it has.


July 14, 2023

 Destination Blog: Materials

The video below shows an example of 25 different materials that are in the game. These are just the main ones for the time being (more might come later). The game is built on a ‘rock, paper, scissors’ kind of logic where some materials can break others, but not the other way around. For example, steel is very strong and can break pebbles, but pebbles can’t break steel. Each material also has its own tolerance to heat, so as the individual pieces heat up, they have longer or shorter life spans depending on the material they’re made of.

This video shows the majority of the materials currently in the game. (water not included, it’s a bit unique from the rest. Water CAN’T be destroyed, but all of these material types can be).


July 18, 2023

 Destination Blog: Pipes

Pipes in destination currently come in 3 forms, the manual pipes (blue), the automatic pipes (green), and the level starting and ending pipes (white/clear).

The automatic pipes need special treatment. Not only can it pull in the player, but also anything that’s small enough to get sucked in. There’s a custom blueprint created that is created and triggered any time an asset small enough overlaps the start or end of the pipe. For some assets that are JUST too big to fit (such as the base cubes in the level), they are set up to get ‘crushed’ when they enter the pipes, so smaller chunks are spat out the other end. Different assets that have constraints applied too them can have these constraints broken if the right piece overlaps the opening; this can allow only certain parts of a blueprint to be sucked in.

To maintain absolute control, the player is spat out at the exact trajectory the exit is aiming. This allows the player to have the exact same movement every time it uses the pipe. Every other item however has a ‘randomize’ variable applied too the end so when they are spat out, they clear the way for a player to exit the pipe cleanly.

For any objects that overlap the end of the pipes collision volume without traveling down the pipe first will be immediately shot out, again clearing the way for the player.

This is a quick test of the pipes, and how they behave with the assets in the scene.


July 21, 2023

 Destination Blog: Lava and Water shaders

This video shows off the lava and water shaders.

Lava is stationary and doesn't have a current. Everything that touches the lava will simply burn up and get destroyed. There is a 'cooling' aspect to it for when it comes in contact with the water, but that's not shown here. This is purely the lava material itself.

Water is a bit different. Mid-way through the video you'll see a 'current' blueprint showcased. This is used to determine the location, size, and strength a current will have. This can be used to make assets circle an area, or act as a river that pushes them off the edge of a waterfall. This blueprint not only drives the material, but also the buoyancy that each component spawns when it overlaps a body of water.


July 22, 2023

 Destination Blog: Players Materials

This video goes over the updated UI for when the player changes its material.

The UI has been updated to show the available materials when the level starts as well as which one is currently being used. Changing the materials can be done on the fly, and there are stations throughout the world that can be used to change to completely new material. When you do this, the material will be added to your available materials list for your player, and shown in the UI.


July 22, 2023

 Destination Blog: Interior Lighting

This is a simple interior test. Lighting's important, so this is to test out how Lumen (Unreal 5's lighting system) looks in a larger enclosed area.