V2/ue/Build/Cooking/v2-content-cooking-architecture.json defines the source
asset to cooked artifact pipeline used by the V2 build farm. It extends the
existing BuildGraph and cook-all wrappers instead of replacing them.
The architecture has six ordered stages:
discover-source-assetswrites a canonical source asset manifest.normalize-and-fingerprintrecords stable paths, import settings, platform profile, and SHA-256 content hashes.build-dependency-graphmerges UnrealAssetRegistry.binreferences with domain sidecars such as*.v2deps.json.plan-platform-cookexpands source changes into platform-specific cook tasks.execute-cookruns BuildCookRun or a domain cooker and writes cooked output.validate-and-reportverifies cooked loads, missing references, cook time, cache hit rate, and artifact size.
Dependency tracking is graph-first. Every node is keyed by canonical source URI,
every edge records source, target, kind, platform scope, and content hash, and
incremental recooks must walk the transitive closure so a texture change can
recook materials, meshes, and levels that depend on it. The graph evidence path
is $(ArchiveRoot)/Cooking/dependency-graph.json.
Platform profiles define optimization policy without hard-coding it into
individual cookers: PCUltra, PCLow, PS5, XSX, XSS, Switch2, and
Mobile. Each profile declares texture, mesh, and audio tiers so later texture,
mesh, audio, shader, animation, and level cookers can plug into the same cook
plan.
Cooked artifacts and cache evidence are rooted at
$(UE_SHARED_DDC)/V2/CookedContent and $(ArchiveRoot)/Cooking. The shared DDC
root remains $(UE_SHARED_DDC)/V2/DDC.
Required gates:
content-cooking-architecture-definedcontent-cooking-dependency-tracking-definedcontent-cooking-platform-profile-coveragecontent-cooking-cache-policy-defined
The primary coverage metric is cook.architecture.platform_profile_count. The
CI validator is:
python3 V2/ue/Tools/check-v2-content-cooking-architecture.py