Bootstrap

UE4 Error: Couldn‘t find file for package *** requested by async loading code. NameToLoad: ***

在单独打包某个地图时会出现某些资源动态加载失败的问题,出错日志如下:

[2022.06.16-09.06.47:875][  0]LogStreaming: Error: Couldn't find file for package /SarajePlayerUI/UI/WBP_SarajePlayerRecommendBar requested by async loading code. NameToLoad: /SarajePlayerUI/UI/WBP_SarajePlayerRecommendBar
[2022.06.16-09.06.47:875][  0]LogStreaming: Error: Found 0 dependent packages...
[2022.06.16-09.06.47:875][  0]PIE: Error: CreateWidget called with a null class.

这个问题很诡异,在出错的资源在自研插件目录里,其他资源都可以用c++代码加载,但是只有如下材质无法加载成功:

UClass* WidgetClass = LoadClass<UUserWidget>(nullptr, TEXT("WidgetBlueprint'/SarajePlayerUI/UI/WBP_SarajePlayerPreview.WBP_SarajePlayerPreview_C'"));

解决办法: 

packaging settings里Additional Asset Directories to Cook添加资源所在目录即可:

;