Ship a change to a live Eagle 3D Streaming app by uploading a small patch file instead of the whole Unreal build again.
A patch updates an app's assets - levels, Blueprints, meshes, materials, textures, sounds, animations, UI. It does not update compiled C++ code or the executable. For those, see which way fits your change.
A packaged Unreal build is large. Re-uploading it for a changed material or a moved object means sending gigabytes to replace a few megabytes of content, and waiting out the whole upload sequence each time.
A patch is a .pak file holding only what changed. It sits on top of
the base build, and the app loads both.
You get much smaller, much faster updates. You pay for it with a versioning scheme you have to keep straight yourself — every patch is built against a specific base version, and getting that wrong produces an app that does not run rather than an error message.
Unreal compares the newly cooked content with the released base build and puts every changed package in the patch.
A .pak whose name ends in _P is mounted with priority, so its files replace the base
build's copies when the app starts.
| In a patch - updated | Not in a patch - needs a new executable or a full upload |
|---|---|
Levels (.umap) and any cooked asset (.uasset): Blueprints, meshes, materials, textures, sounds, animations, UMG widgets | C++ code - your game module and plugins are compiled into the executable |
Config .ini files packaged with the content - Unreal mounts the pak files before it reads its config | The engine version and the list of enabled plugins |
| Localized text | Packaging settings (for example Use Io Store) - fixed when the base build is made |
| Non-asset files you added under Additional Non-Asset Directories to Package | Files copied loose next to the build (Additional Non-Asset Directories To Copy), DLLs, the executable itself |
From Epic Games:
_P naming, -basedonreleaseversionThe fastest way to see what patching actually does.
Last updated