Project OPTIMISE TOOL (Unreal Engine)

Video on how to Use - Blog on how to use

Tested & Working In: 5.1, 5.2

Purpose: A tool for helping you find potential problems and optimisation opportunities

Example of its use: Over time it’s easy for lots of smaller problems to be created without you even realising. Things like missing collision on pickup meshes or missing sound classes on sound cues. Although small, enough of them can reduce the quality of your game as much as a bigger bug would. Think of death by 1000 cuts (bugs). With the same concept, as your game grows it is easy for small optimisation opportunities to be missed and build up to create a larger impact on your games framerate. Examples like sound concurrency limits missing on sounds or 2048 textures on small props.


COMPARE DATA TABLES TOOL (Unreal Engine)

Video on how to Use - Blog on how to use

Tested & Working In: UE4.26, 4.27, 5.1

Purpose: A tool for comparing Data Tables and telling you the name of any missing rows

Example of its use: As your game grows you may find that you have data in different places, not just in a single centralised location, making it harder to manage/keep track of. For example in one of my games, I have my main Item Data Table, then supporting data tables for other areas: sounds, animation sets, item previewer presets etc. If you move an item around in your inventory and it is missing its relevant row in the sounds data table, it will use a default sound. So I use this tool to compare against my main item data table to help find any problems.  


Python helper scripts (Unreal Engine)

Video Of How To Use - Blog On How To Use

I made some python scripts that work in the Unreal Engine editor. I’ve been using them in my own projects to help find potential problems and possible optimisations. I thought I’d put them out for free so everyone can use them.

These scripts don't actually edit anything; they simply log things that could be worth you looking into. The idea is that we can catch smaller issues that aren't obvious and bring up the overall sturdiness and quality of our games. I tied all the scripts together into a UI (Editor Utility Widget) to make them easier to use. Below you can see me running the script: Log Static Meshes With No Collision. When complete it kicks out a notepad file summarising its findings.