AssetRegistry.bin is not deterministically cooked.
NativeLibraries is turned off because .ushaderbytecode has a non-deterministic issue in [Link Removed]. And there is a similar issue with UE5 in [Link Removed].
Workaround:
\Engine\Source\Editor\UnrealEd\Private\Commandlets\AssetRegistryGenerator.cpp (Line:1254) void FAssetRegistryGenerator::AddAssetToFileOrderRecursive(const FName& InPackageName, TArray<FName>& OutFileOrder, TSet<FName>& OutEncounteredNames, const TSet<FName>& InPackageNameSet, const TSet<FName>& InTopLevelAssets) { if (!OutEncounteredNames.Contains(InPackageName)) { OutEncounteredNames.Add(InPackageName); TArray<FName> Dependencies; AssetRegistry.GetDependencies(InPackageName, Dependencies, UE::AssetRegistry::EDependencyCategory::Package, UE::AssetRegistry::EDependencyQuery::Hard); // add_start Dependencies.Sort([](const FName& A, const FName& B) { return A.Compare(B) < 0; }); // add_end
\Engine\Source\Editor\UnrealEd\Private\Commandlets\AssetRegistryGenerator.cpp (Line:1497) FString CookerFileOrderString; FString CookerFileOrderString; { TArray<FName> TopLevelMapPackageNames; TArray<FName> TopLevelPackageNames; // add_start PackageNameSet.Sort([](const FName& A, const FName& B) { return A.Compare(B) < 0; }); // add_end for (FName PackageName : PackageNameSet) {
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-145162 in the post.
0 |
Component | UE - Foundation - Core - Cooker |
---|---|
Affects Versions | 4.27 |
Target Fix | 5.1 |
Created | Mar 8, 2022 |
---|---|
Resolved | Mar 9, 2022 |
Updated | Mar 17, 2022 |