Question about automatic ISM conversion of SM in 5.6

I head on one of the Dev Talks that in UE5.6 there is a new feature that automatically converts Static Meshes to Instance Static Meshes for each World Partition Cell. I’ve not been able to find out any further information about this. Can you point me to some documentation please or help me answer the specific points below.

  • When does this process happen. The talk implied this works with “Play in Editor” So is it at level creation time? Does this also happen as a cooking process?
  • Are the ISM’s defined for each WP cell or is there another way of controlling the size of the grouping?
  • What happens to Custom Primitive Data (CPD) when the Static Meshes are combined into form an ISM?
    • Does the processing step recognise these different values and split the ISM chain accordingly?
    • Is there any way to process the “CPD” and push the data to “Per Instance Custom Data” - how would this be handled in the shader?
  • Does this process take existing ISM Objects and try to combine them together is they are using the same static meshes - or does it leave existing ISM’s alone?

I’ve not had chance to look at 5.6 yet but will be doing so shortly and any further information you can share on this will be appreciated.

Many Thanks,

Pete.

Steps to Reproduce
This is a question rather than a bug - so no reproduction steps.

Hi Pete,

What you are looking for is called Runtime Cell Transformer. The RCTs are a stack of processes that are applied at cell generation time (PIE and Cook) . Version 5.5 came with an RCT that creates the ISMs as you describe (UWorldPartitionRuntimeCellTransformerISM). It only cares for StaticMeshComponents and does not care for CPD. You would need to create your own version of that class to add the required code to handled them.

Version 5.6 adds the FastGeo plugin which relies on its own RCT to collect and transform StaticMeshActor into rendering proxies to improve the general performances

Both are discussed in the World Building Guide.

https://dev.epicgames.com/community/learning/knowledge\-base/r6wl/unreal\-engine\-world\-building\-guide

Regards,

Martin