MeshPack

Tore Lervik - Code Plugins - Aug 28, 2024

MeshPack automatically instances your Static Meshes when the game is packaged. No manual work. No destructive workflows. Instancing done right

  • Supported Platforms
  • Supported Engine Versions
    5.3 - 5.4
  • Download Type
    Engine Plugin
    This product contains a code plugin, complete with pre-built binaries and all its source code that integrates with Unreal Engine, which can be installed to an engine version of your choice then enabled on a per-project basis.

MeshPack analyses all Static Mesh Actors and packs them into instances when the game is packaged. No need to manually combine actors while you are working on your game.

It works with World Partition and normal levels, making your workflow nondestructive and highly optimized.


MeshPack also re-packs Blueprints, Packed Level Actors and more. This further optimizes your game regardless of your workflow.


MeshPack doesn't currently support meshes with prebuilt static lighting. I want to support this, but unsure if it's technically possible at this point.


Latest update: Version 1.2

  • Improved support for packing meshes in Blueprints
  • Added console command MeshPack.SetMaterialInstancedUsage that toggles "Used with instanced static meshes" on needed materials





Example cases


Valley of the Ancient

Large open world level with thousands of meshes. Used to showcase UE 5.0 with World Partition and Packed Level Actors.

MeshPack stats:

  • Actors reduced from 16502 to 6303
  • Components reduced from 216417 to 97573


Lyra Starter Game

Medium size action game project optimized as a arena shooter. Uses static mesh actors mostly for floors and walls.

MeshPack stats:

  • Actors reduced from 4507 to 1339
  • Components reduced from 6163 to 3506


Local benchmark level

Large open world level with over 200.000 StaticMeshActors

MeshPack stats:

  • Actors reduced from 214631 to 1004
  • Components reduced from 215114 to 2745

Technical Details

Features:

  • Analyses Static Mesh Actors in the level and packs those that can be instanced.
  • Only runs when the game is packaged, no need to pack actors together while you work.
  • Works with World Partition - Actors are packed together within their WP cell as each is processed separately
  • Works with Packed Level Actors - All static mesh actors within a PLA are instanced together with the rest of the level.
  • Works with Blueprints - Analyses and extracts static meshes from blueprints together with the rest of the level.
  • Packs SMs into batches of a sensible size to improve WP level streaming. This setting is adjustable.
  • Uses ISMs for Nanite meshes and HISM for rest by default. Forcing ISM or HISM can be set specifically.
  • Extensible through C++ and Blueprint. Got a special SM actors you don't want to instance? Add custom logic in no time.

Code Modules:

  •  MeshPack - Editor

Number of Blueprints: 0

Number of C++ Classes: 5

Supported Development Platforms: Win64, Mac, Linux

Supported Target Build Platforms: All


Latest Documentation: https://drive.google.com/file/d/1VYouZISleYcijjHK8W8JgCyYw-JtuBnt/view

Discord: https://discord.gg/sX48CssHWM