Thank you for purchasing this tool. I hope it will benefit your workflow and free you up some time so you can focus on making great games.
If you have any questions please have a look in the FAQ section or get in touch (firstname.lastname@example.org)
The Tool in action
Step 1: Turn on Blutilities in the editor preferences
Step 2: Turn on the editor scripting plugin
Automatically add prefixes to all the assets found in the source directory (For example, all materials will be named M_, all Blueprints BP_). The naming convention is conform to the official UE naming convention found here.
If you want to change the naming conventions you can find the settings under the “Prefix” tab. Here you can modify everything to match your own naming convention.
Clean me up Scotty
This function moves all assets in the source directory matching the definied class into appropriate folders. If the folder doesnt exist it will create it under the target directory definied. For example, if you set your target directory to “/Game” all Blueprints will be moved to a folder called “/Game/Blueprints”. It is best to clean only one class at a time if there are a lot of assets. Don´t forget so save and fix up redirectories once the script is done.
Here you can define assets you want to consolidate. All assets defined in the array will be replaced by the “Asset to consolidate to” and then deleted afterwards. You will endup with only the parent material left. This is usefull to reduce drawcalls, complexity and memory usage in your project. For example a lot of asset packs use the very same textures/materials/Particles from the starter content.
Delete empty folders
This script deletes all empty (and not locked) folders in your project. Especially usefull after using the cleanup function to get rid off all those now unnecessary folders. Use Fix up redirectories if you are not able to delete a seemingly empty folders. There might be hidden redirectories in it.
Define a search pattern (the part you want to replace) and a replace pattern. All files matching this pattern will be renamed and all their references will be updated accordingly.
Set linear color
Automatically sets linear color (turning off sRGB) on all textures matching the defined pattern. You can add or remove your own searching patterns here.
-Support for 4.20
-Progress bar for large tasks
-Editor Widgets (4.22+)
Keep the Pattern Array short
Although the script does a decent job working with a lot of patterns, it will increase the execution time quite a bit. It also increases the error treshold. In an ideal project you would exactly know the correct naming convention and just use this one. But if you are working with a large library, feel free to use more than one pattern to serach for the right texture.
Fix up redirectors
If you modify files (for exampe move or rename) in your content folder, unreal will create (invisible by standart) redirector files. It is best to fix them (aka resolve them) by right click on the folder and select “Fix up redirectories in folder”. Unresolved redirectories can result in not being able to delete seemingly empty folders, modify files or crashing the editor.
Remove unused Assets
Define all locked folders you want to keep. After saving and fixing up redirectories you can run the script. All assets without any referencers will be moved to a folder called “Trash”. Be sure to check that folder once the script is done. If you are shure that you won´t need those assets any more you can delete them permanently. After deleting use the script again. There could be more assets without any references now.
Changes I made to the variables are not kept
In order for the variables to be kept, you need to change the default parameters. If you change them in the window that appears after double clicking on the Blueprint, the changes will only take affect as long as the window is opened.
For changing the default values permanently you have two options:
- Right click on the Blueprint and press “Edit Defaults”
- Right click on the Blueprint and press “Edit Blueprint” (advanced)
The first method is recommanded.
If you want to change the default settings for the Context Menu please find the Blutility “CleanMeUpScotty_ContextMenu“, right click on it and change it´s default values. The changed values will be taken into account the next time you run the script.
What defines an unused asset?
Unused assets are the ones having no referencers. If you have an asset which is not in your current level, but is spawned at runtime once the player triggers an event, the asset has a valid reference and therefore will not be moved to the trash folder. Don´t worry, nothing will be deletet automatically.
If you have a texture used in a material, but the material is not used anywhere in your project, the texture has a valid reference and therefore will not be moved to the trash folder. The material will be moved to the Trash folder. Once you decided to delete it permanently the texture wont have a valid referencer anymore and therefore will also be moved to the trash folder the next time you use the script.
Why are there files called “Name_Duplicate_RandomNumber” in my trash folder?
If there is already an asset with the same name in the trash folder the script will generate a random name for the asset and then move it to the trash folder. This way you´ll keep both files and can chose how to handle this edge case. If you want to avoid this use the “remove duplicate” function first.
I´m not able to delete an empty folder!
Please read the “Fix up redirectors” section
Will there be support for earlier engine versions?
The bluetility feature used by this tool was introduced in 4.20. I´m not able to support any earlier engine versions, sorry. Currently, the tool is for 4.21, but I´m working on 4.20 support.