在单独打包某个地图时会出现某些资源动态加载失败的问题,出错日志如下:
[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添加资源所在目录即可: