Description

There is some unexpected behaviour around GameFeature Plugins (GFPs) when packaging with chunking enabled most noticeable when using PrimaryAssetLabels (PALs).

Firstly, PrimaryAssetLabels do not appear to be respected in GFPs by default. Removing IsEditorOnly fixes this; however, that also causes all referenced PALs, and by extension all their subreferences, will cook. This cook happens regardless of the cook settings of the PAL. Namely, Unknown in the PAL will still cause a cook.

Secondly, with IsEditorOnly, some assets will still end up in Chunk0. The reason isn't immediately clear, but the assets are notably missed in UAssetManager::UpdateManagementDatabase:4122. These assets are missed, though they are not missed in the Editor portion of AssetAudit, where they correctly display their expected chunk as the chunk assigned by the PAL.

Thirdly, ChunkOverride appears to act inconsistently in the GFP asset as nothing but the GFP asset ends up in that chunk.

Steps to Reproduce
  • Enable GFP
  • Add the PrimaryAssetTypes to Scan information as listed in the Project Settings to the GFP
  • Add a chunk override to the GFP
  • Add a MetaHuman to the GFP including the entirety of the Common folder. Ada will be used as an example.
  • Create a PAL in the Ada folder that applies recursively to all files in the folder. Give this a high priority.
  • Package this out, and it should only have Chunk0.
  • Disable IsEditorOnly on the Asset Types in both Project Settings and the GFP, and restart to ensure everything is working correctly.
  • Package again, and the MetaHuman and most dependencies will end up in the target chunk.
    Use UnrealPak to extract Chunk0 and notice some MetaHuman assets in the GFP are still packaged here.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-225129 in the post.

1
Login to Vote

Unresolved
ComponentUE - Gameplay
Affects Versions5.3.25.4.4
Target Fix5.6
CreatedSep 23, 2024
UpdatedSep 27, 2024
View Jira Issue