Table of Contents

Plugin overview

Making editor tools for creating and placing assets is a tedious and time consuming process, and usually requires C++ to set up. Easy Asset Creator makes it easy to create tools for your assets, and all of it can be managed inside the editor with no requirements for an editor restart.

Asset Action

Asset Action is the core of Easy Asset Creator and it handles how your class is gonna be exposed to the different editor menus.

You need one Asset Action for each asset you want to expose.

Create an Asset Action

Start by right clicking in your content browser/drawer to create an Asset Action.

CreateAssetActionImage

And just choose the Asset Action class:

ChooseAssetAction

Now you have your first Asset Action class ready!

Fun fact: The Asset Action and Asset Factory entries in the Easy Asset Creator category are exposed via custom Asset Action classes in C++.

Setting up your Asset Action

Open the Asset Action and go to the Class Defaults menu:

ClassDefaultsMenu

Choose the asset you want to expose in the Asset Class variable:

ChooseAsset

Now assign the category this asset should be exposed to in the different menus:

ChooseCategory

Now you are all done for the basic setup of an Asset Action!

Sub-category

You can only add a sub-category if two or more classes are in the same category. Then assign a sub-category name to one of them, and you will get this:

Sub-menus

Asset Factory

Factories are responsible for creating the actual asset and give it its name. Due to current engine “limitations”, you unfortunately need both classes to expose your assets.

Create Asset Factory

Start by right clicking in your content browser/drawer to create an Asset Factory.

CreateAssetFactoryImage

Now you have your first Asset Factory class ready!

Setting up your Asset Factory

Open the Asset Factory and go to the Class Defaults menu:

AssetFactoeyClassDefaultsMenu

Now assign the same asset in the factory as in the Asset Action:

AssignClassFactory

Now you should be able to see your class in the “Create Advanced Asset” menu:

CreateAdvancedMenu

Default Asset Name

If you want to give the asset a custom default name once its created, assign it here:

DefaultAssetName

Use Class Picker

If true, summons a class picker when you click to create a new class in the category menu:

UseClassPicker

Asset appearance

Asset name & tooltip

You might not want the default asset name/tooltip to be displayed when hovered, and that is an easy fix.

Go into the class you have exposed with the Asset Action and click on Class Settings, and this should show up:

OldNameTooltipImage

Change to what you want under Blueprint Display Name and Blueprint Description, and compile and save.

Now your asset should be displayed with the new name and tooltip:

NewNameTooltipImage

Asset color

To change the color of the class in the menu, go into your Asset Action and change the color under Asset Color

Note: This will not change color of the asset once its created due to engine back-end stuff.

AssetActionChangeColor

Now your asset will appear in a different color:

AssetActionChangeColor

Asset Action Fragments

Fragments are used in Asset Actions to add different functionalities to the asset in the editor.

Add to Place Actors Menu

PlaceActorsMenu

To add a Actor to the “Place Actors” menu. All you need to do is add this fragment to your Asset Action:

PlaceActorsMenuFragment

Now your Actor should be registered to the menu in its category!

Note: You don’t need a factory to add this functionality to an asset. Just need an Asset Action with a valid asset class assigned, category, and this fragment.

Add Content Browser drag drop support

Drag any of your assets into the viewport from the content browser. Works with any assets that derive from UObject.

Add the drag drop support fragment to the Asset Action:

DragDropSupportFragment

Add custom functionality to what will happen when the asset has been dragged into the viewport. Just override the function PostSpawnActor in the Asset Action.

In the example below, we drag a quest into the viewport, the Asset Action spawns the quest trigger we assigned, and then assign the quest class to that quest trigger.

DragDropSupportFragment

Now the asset should behave like this:

DragDropGif

Deleting assets

You can delete any Asset Action or Asset Factories without any dangerous impact. It might say it still has memory references left and you have to force delete the asset, but the plugin handles that.

DeleteAssetPic

Common issues

My class won’t update its name in the menus

Try to save and compile the class.

My class doesn’t show up in the create asset menu

Make sure you have an Asset Action with a category and class assigned, as well as an Asset Factory with the same class assigned to Parent Class as in the Asset Action.