Mateusz Salaga

Toon Kart

Kart Racer

What's Toon Kart?

Toon Kart is a 3D Kart Racer I developed using Unreal Engine 5, and is solely programmed using the engines' blueprint feature. The game includes 3 kart appearances to choose from and four AI to race against.

Why Blueprints?

Toon Kart is my first game-related project in Unreal Engine 5, and one of such significant size. Initially my plan was to program using C++ and only use blueprints for high-level programming, such as asset and variable value modification. Unfortunately I stumbled upon an integration problem with C++ and Blueprints that I wasn't able to solve, and that was a dealbreaker for me at the time. Since I was new to making games in Unreal, I decided that working in blueprints would be a good way to get familiar with the engine in a more beginner-friendly way.

Custom Movement System

Unreal Engine 5 comes with its own Vehicle Movement Component System, as well as many other different ways to move an object. After alot of testing I concluded that I would achieve more control over the feel and responsiveness that I was looking for by making my own custom movement system. Toon Karts' custom movement system uses solely physics and includes Forward/Backward movement, Drifting and the option to dynamically change the drifting direction with the press of a button. The biggest advantage of using physics is that the behaviour of karts is more realistic, both during movement and during contact with other objects without the need of extra code.

Custom Drift Boost System

Another feature in Toon Kart is a custom Drift Boost System. Using a timer, every kart can charge a boost by drifting. There are three levels to a boost that progressively give more velocity once released. All boost levels are indicated with colors both by the in-game UI and a shader on the kart. The colors from worst to best are as follow: Red, Pink, Blue.

Splines

Arguably the most useful tool during this project was the use of Splines. The majority of my environment consists of a race-track aswell as the metal barriers on respective sides of it. Both were made by using Unreal Engines' Spline Component. This component not only gave me the freedom of easily creating a completely custom race-track, but also includes functionality that was incredibly useful during the creation of AI and tracking player progress.

AI Racers

Toon Kart includes the feature of AI karts to race against. The AI derives from the core vehicle class and uses the race-track spline to dynamically create checkpoints along it to progress. By using trigger-colliders, AI karts are also able to avoid obstacles aswell as un-stuck themselves in case of crashing.

Menus & User Interface

All menus and user interface for Toon Kart was made using Unreal Engines' Widget Blueprint tool. The game includes a Kart Select Menu, How To Play Menu, Settings Menu, In-Game Pause Menu, Win-screen Menu and a In-Game User Interface. The In-Game User Interface includes a drift boost bar, current laps indicator, current placement text and a minimap with realtime kart positions. Toon Karts' minimap is displayed using Unreal Engines' Widget Blueprint Tool, but is created using a Scene Capture 2D Component and sprites visible only to that component.

Kart Variation

There are three kart appearances to choose from in Toon Kart. All karts have the same stats. The player selection is made in the Kart Select Menu, while the AI gets karts randomly assigned to them.