Exporting the common meta human assets into a plugin during the character assembly

We are trying to put the common meta human assets into a plugin so it’s easily deployable to several projects. We are utilizing the experimental pipeline feature which allows you to specify a custom folder for the common assets. However, the number of assets created this way when using a plugin folder as the target is fewer than if you were to specify a game content folder i.e. /Game/MetaHumans/Common.

Some of the missing assets are (not the full missing asset list):

/Script/Engine.AnimBlueprint’/Game/MetaHumans/CommonAdaTest/Animation/ABP_Clothing_PostProcess.ABP_Clothing_PostProcess’

/Script/Engine.AnimBlueprint’/Game/MetaHumans/CommonAdaTest/Animation/ABP_MH_LiveLink.ABP_MH_LiveLink’

/Script/ControlRigDeveloper.ControlRigBlueprint’/Game/MetaHumans/CommonAdaTest/Animation/CR_PlaceHolder.CR_PlaceHolder’

/Script/Engine.Texture2D’/Game/MetaHumans/CommonAdaTest/Textures/Eyelashes/T_Eyelashes_S_Sparse_Coverage.T_Eyelashes_S_Sparse_Coverage’

Is this a known bug? Is there any workaround?

It is very painful to try to fix up the path references for every character generated. Hopefully there is a way to fix this issue.

Thanks!

I do have an update on this. This seems to be an engine bug. If you were to output the character data i.e. the root directory and the common assets to the plugin directory, things work. You do get the correct asset list in the common plugin in this scenario.

The bug occurs if you output both root and common directories into separate plugins.

I implemented a workaround by implementing a meta human character build extender. The extender adds the paths for the root and common as mount points.

Pseudo code:

Override GetRootObjects method to collect BuildParameters.AbsoluteBuildPath and BuildParameters.CommonFolderPath.

Override GetMountPoints method to return the collected paths.