Cat-Aclysm Tools in Unreal Engine 5

These are some tools I developed when I worked on our senior year game called Cat-Aclysm using Unreal Engine 5.

Cables Tool

Tool I developed using Unreal Engine’s spline system which allows any mesh to attach and follow a curve. The spline can be edited and the mesh will be modifed accordingly. We used this tool to create and place cables throughout the city accurately and give them natural and interesting forms to help in terms of gameplay and level design.

Tiling

As our game is mainly based on a city, we wanted to avoid placing ground objects repeatedly, trying to make them align perfectly with the rest. This is the reason I developed a very simple tiling tool that uses materials to make this much easier. We used this to place floors and walls although we might use it for other purposes later on.

Camera System

I developed a system that allows us to change how the camera behaves at any point in time during our game even having a somewhat «open world» game that makes it possible for the player to reach to a point from different directions. We used this to surprise the player, make hidden paths visible and to make the player focus on certain parts of the level.

Apart from that, I also developed other ways of behaving, such as focusing on any object on the level, which makes the camera travel to that object and then go back to its original position. In addition to that we also use this system during combats. The camera can zoom in/out or move depending on where in the arena the player is. All of these camera tools are extremely customazible and allow us to quickly change how the camera behaves.

Small example on one of its uses:

Pattern Tool

Streets have very repetitive patterns, especially in cities. You walk across a bin, then a bench and then a tree… and then another bin and a bench and a tree. Our game is full of streets!

Placing these objects maunally is very time consuming, I hence developed a tool that allows to place these kind of objects much easily and using instanced rendering to improve performance.

SkyScraper Tool

Buildings are composed by floors and cities have lots of buildings, we did not want artists to create hundreds of unique buildings, especially if a lot of them were going to be on the background. We decided that our buildings had to be made from different sets, kind of like tiles.

I first created a tool that chooses a tile from a pool and randomly creates a building but we were lacking a lot of control on how the buildings looked like. That is why we now can choose what floors go where and the building atumatically adjusts its height to fit all floors perfectly. This, as some of the other tools, also uses instanced rendering with repeating floors.