Fighting Game · Guides & deep dives

V2 Texture Cooking

A guides & deep dives document in the Fighting Game library.

0sections1 minread

On this page

V2/ue/Tools/plan-v2-texture-cooking.py expands V2/ue/Build/Cooking/v2-texture-cooking.json into deterministic texture cook commands for each texture set and platform profile.

Source coverage is PNG and EXR. PC and console profiles use texconv with BC7_UNORM_SRGB for color textures, BC7_UNORM for normal maps, and BC6H_UF16 for HDR EXR inputs. Switch2 uses astcenc with ASTC_6x6, and the Mobile profile uses ASTC_8x8. ASTC PNG commands use -cl, while HDR EXR commands use -ch.

Every command includes a platform-specific mipmap chain, max texture size, mip bias, streaming group, dependency kinds, a deterministic cache key, and a dependency sidecar path ending in *.v2deps.json. These sidecars feed the content cooking dependency graph so material, mesh, UI, and level dependents can be invalidated when a source texture changes.

Required gates:

  • texture-cooking-plan-generated
  • texture-cooking-bc7-profiles
  • texture-cooking-astc-profiles
  • texture-cooking-mip-chains

The primary metrics are cook.texture.bc7_profile_count, cook.texture.astc_profile_count, and cook.texture.mipmap_chain_count. The CI validator is:

bash
python3 V2/ue/Tools/check-v2-texture-cooking.py