Quick answer: Unreal physical material mask not applied in cooked builds despite working in editor? Mask textures stripped by cooker - mark as Always Loaded or add to PrimaryAssets.

Surface material has per-pixel physical material via mask. Editor: footsteps sound right. Shipping: footsteps generic.

Mark mask as always loaded

Asset audit + AssetManager primary asset rule for physical material masks. Cooker includes them in shipping.

Or hard-reference from material

Hard ref from the surface material keeps the cooker aware. Soft refs alone aren't enough.

Verify via cooked manifest

Inspect cooked package list; physical material masks should appear. Missing = the bug's cause.

“Cooker tree-shakes by reachability. Indirect references don't count.”

For data assets used by audio/physics indirection, audit cooker inclusion. The bug class is silent in editor and broken in production.

Related reading