One of my favourite new features in Unreal Engine 5.0 is an improved Search window. No longer do you have to bounce between "Find in Blueprints" and searching within the Content Browser to find stuff, instead you can find everything from one place!
It is a full-text search that indexes on a huge number of asset types:
- Actors, Blueprints, Widget Blueprints
- Data Tables and Curve Tables
- Levels
- Materials
- Dialogue and Sound Cues
This means that if for example you have a you have a data table with a particular string in it, you can find that Data Table by searching for that string.
How to Use it
First open the Edit > Plugins window, find and enable the Asset Search experimental plugin. It will require you to restart your editor
First enable the Asset Search plugin
After restarting you should now see Tools > Search. Click it to open up the new search window
Where to find the new Search window
Then it's just a case of typing in what you want to find. It will also optionally index map files. Opt-in by clicking the "{Number} Missing* text in the bottom-right.
Searching for 'Player' in the Lyra Sample Project
Advanced Syntax
The search text box supports sqlite-style boolean operators AND
, OR
and NOT
(the search system is powered by an FSQLiteDatabase
).
Extending the Search
The new search system is designed to be a generic search interface that could be used to search anything. It was designed to be extensible in a few ways:
If you have custom asset types that are not correctly indexed by the
FGenericObjectIndexer
, you can inherit from the interface IAssetIndexer
and
add custom rows by using IndexProperty
. See the existing indexers to see how
it works.
ISearchProvider
is an interface that you can use to change what is being
searched. FAssetRegistrySearchProvider
is the only subclass of it provided
with the plugin, and is created to search assets in the asset registry. One
could think of making additional search providers to search Project and Editor
settings, to look for documentation online.