Cooker: NeverCookPackageList should store packages as LongPackageNames instead of filenames, to save memory by avoiding creation of FName for each external actor package

UE - Foundation - Core - Cooker - Jul 30, 2024

GetNeverCookPackageFileNames among other things adds every external actor package to NeverCookPackageList, even if they are not referenced by the rest of the cook. Since it stores the packages in th ...

Generated world partition maps cause AssetManager warnings

UE - Foundation - Core - Cooker - May 29, 2024

When cooking world partition maps, it automatically writes out several maps in a "Generated" folder below the location of the map in the editor. In the repro above, this will create maps such as /Ga ...

LogAssetRegistry Error produces a path error when referring to assets on a junction/hard link/soft link

UE - Foundation - Core - Cooker - May 23, 2024

IAssetRegistry::GetChecked().ScanPathsSynchronous() now eventually calls FPathExistence::LoadExistenceData and logs the errorFPathExistence failed to gather correct capitalization from disk for <p ...

Cooker: Research and recommend a solution for third-party systems to aggregate data from cooked UObjects

UE - Foundation - Core - Cooker - Mar 6, 2024

As with shader compilation, some third-party plugins need to accumulate information about all UObjects cooked in a cook session, and write their data to a database at the end of the cook; the databa ...

UAssetManager::ChangeBundleStateForPrimaryAssets: Performance: Avoid canceling loads in progress when new bundles added and the in progress bundles are kept

UE - Foundation - Core - Cooker - Mar 4, 2024

UAssetManager::ChangeBundleStateForPrimaryAssets allows adding new BundleNames to the list of BundleNames loaded for a PrimaryAssetId. Each BundleName specifies a BundleEntry with a list of assets. ...

Fix AssetManager rules overrides in case PrimaryAssetTypesToScan for PrimaryAssetLabel sets bApplyRecursively=false

UE - Foundation - Core - Cooker - Dec 11, 2023

SetPrimaryAssetRules sets the "is overridden" variables (e.g. bOverrideApplyRecursively) based on a comparison with the global default rules:static FPrimaryAssetRules DefaultRules; ... ExplicitRu ...

AssetRegistry and CoreRedirects: Users of GeneratedClassTag do not uniformly handle CoreRedirects

UE - Foundation - Core - Cooker - Dec 11, 2023

ClassPaths are stored in FBlueprintTags::GeneratedClassPath, FBlueprintTags::ParentClassPath, FBlueprintTags::NativeParentClassPath, and are read by many locations in editor code. But these location ...

LLM: Delete LLM_IF_ENABLED if it is no longer a performance benefit, or convert all allocs and frees to use it if it still is.

UE - Foundation - Core - Cooker - Nov 13, 2023

The macros LLM and LLM_IF_ENABLED behave identically but are slightly different from a performance standpoint. For consistency all allocs and frees should use the same one. Measure the cost of a co ...

MPCook: Fix replication of UObject::CookAdditionalFilesOverride

UE - Foundation - Core - Cooker - Oct 19, 2023

MPCook relies on global data that is accumulated during package cooks on CookWorkers be replicated to the CookDirector. Some global data that is accumulated during package cooks is CookAdditionalFi ...

Feature request: named pak files/chunks

UE - Foundation - Core - Cooker - Oct 5, 2023

Priority note: 3 licensees requested so far Fortnite and some licensees have requested this feature, but it is a nice to have and has not yet been high enough priority to implement. Many teams rel ...