
Enable required plugins:
Editor Scripting Utilities
Mind the difference between Asset and Actor.
In nutshell, Asset is a file located in Content Browser.
When Asset is dragged onto a level, it becomes an Actor. There can be multiple Actors created based on the same Asset.
Scripted Asset/Actor Actions are Blueprint automations that don't require creating user interface.
If no launch arguments are required, they display no interface. If there are some arguments required, interface will be automatically generated.
On the other hand Editor Utility Widgets require manually creating UI.
That makes them more difficult to implement and that is why the course begins with Scripted Actions.
Once you are used to working with Blueprints, you will learn designing the UI in UMG editor and you will see that it allows creating way more advanced and dynamic tools.
This video will introduce you into editor utilities assuming that you have ZERO Blueprints experience.
- Create your first Scripted Asset Action that prints to Viewport and Output Log
- Declare functions and events that can be run by user
- Choose on which kind of assets the utility can be executed on
Create an utility that automatically renames assets to fix their naming convention.
You will learn how to iterate over selected assets using For Each loop, filter them by type and of course to rename the assets.
We'll recreate our batch rename but this time using a data driven approach thanks to Data Table asset.
Create an Scripted Asset Action that corrects texture compression settings based on name suffix.
This tutorial also introduces using Switch node and adding comment boxes.
Batch find unused assets by checking their reference count and delete them so they don't clutter the project.
Create an utility that sets 'DontRemoveUnused' asset metadata tag that will be respected by Unused Assets Remover. Users will be able to protect their assets from being removed even if they are not referenced by any other asset.
User will be able to select set of textures (Diffuse, Normal, Roughness...) and based on their name suffixed (_D, _N, _R) utility will create a Material Instance and fill texture parameters.
The tool will cover edge cases like user not selecting all required kinds of textures or selecting duplicate texture types like 2 Normal textures.
Our first Actor Action Utility!
We will apply random rotation to all selected actors and thus make the scene feel less repetitive.
Why some utilities we implemented, let us properly Undo with Ctrl Z and some don't?
What is a Transaction?
How to implement Undo/Redo if it does not work out of the box?
Time to create our first Editor Utility Widget in UMG editor!
It will consist of few buttons that rotate all selected assets by 15, 30, 45 or 90 degrees and it will also support Undo/Redo.
Single Property View let's you automatically create selector widget for any data type. It can support static meshes, actors, integers, string values, file paths and more.
We'll learn how to use it by creating another Set Material tool but this time it will have interface created by us instead of automatically generated one.
Details View let's us create our own editor for assets and actors. Thanks to it, we can access all object properties in our own widget and if needed, we can also limit the view to show specific properties only.
Changing selected assets or actors does not trigger any editor event that our tool could listen to, but we can still implement our own solution for it and thus make our widget way more responsible and make it refresh after each selection change.
Create a Lights Manager that will display list of all Lights on the level and let you tweak their parameters.
List View is a widget that holds an array of data and can display it in a form of custom widgets.
Widgets are only rendered if they are visible on the screen so it is very efficient.
Add a Remove button to each of List View entries
Add more List View entries with a button.
We will copy previously created List View assets, solve all issues related to copying blueprints and create the too a full fledged Lights Manager.
What is Asset Validation? Why you need it? How it saves your time and prevents bugs?
This validator will help you find all meshes that exceed triangles limit and offend performance.
Remember our tool for fixing naming convention? How about a validator?
Create an empty plugin and then, migrate your blueprints from project Content folder to the plugin.
This is a zero to hero Blueprints course for automation and tool creation.
Following well received Unreal Engine 5 Python Automation Course, this course brings automation and tool creation with Blueprints to everyone who wants to start making tools quickly and without any code.
The course begins with introduction to Blueprint editor. While it requires being familiar with Unreal Engine, it's made to suit both beginners and experienced developers.
In first chapters of the course, we will focus on batch operations. We will mass process assets and actors using Scripted Actions.
We will dive both into Asset Action Utilities and Actor Action Utilities.
Those will let you batch rename assets, fix texture compression settings, modify editor properties, remove unused assets, work with metadata tags and more.
It should be enough to make you familiar with this kind of Blueprints.
Then we will take it to the next level and start creating tools with custom UI.
We will explore UMG widget editor, design our own Utility Widgets, create custom list view and then use it in Lights Manager tool.
Tutorials in this course are not just 'do what I do' videos. I've put effort into making sure that you know why I do certain things and even though there may be some simplifications at the beginning, there are separate videos made to fill the gaps. Expect explanations on Tick function performance, what are Interfaces, or when to use Cast node and when to use Is A node instead.
100% of the course content was recorded on Unreal Engine 5.