Download

Where can I write modifications to the asset import pipeline?

I have a bunch of 3D models and they are already built with a certain naming system. When importing assets into a UE4 project, is there a way I can do processing on the asset import pipeline? (Like reading the name strings and setting custom collision data among other things?) I’m trying to avoid using UE4’s built-in method of naming: “UBX/USP/UCX_[RenderMeshName]_##”.

Unity has a very extensible way to setup assets on import via OnPostprocessModel()…etc… I’m looking for something similar here.

Should I have asked this on the answer hub? I can’t be the only one needing to make custom adjustments to the asset pipeline.

You can bind a function to the FEditorDelegates::OnAssetPostImport delegate. It will return you the factory that created the asset (UFbxFactory in this case) and the newly created object. You can then do your own processing.

Example: FEditorDelegates::OnAssetPostImport.AddStatic( &MyFunction )

void MyFunction( UFactory* Factory, UObject* NewObject )
{

if( Factory->IsA<UFbxFactory>() && NewObject != nullptr )
{
// do extra processing
}

}

Thank you! I will tinker with this later tonight. I really appreciate all the community-interaction you Unreal Devs are doing. :slight_smile: