Looking for an Advanced Workflow for Chaos Destruction on a Building

Hi everyone,

I’m working on a game prototype where buildings can be partially or completely destructible. The goal is to handle destruction in a large scene with multiple buildings, ensuring real-time interactions (no multiplayer).

I’ve watched several resources, including these two Epic Games livestreams:

These videos are insightful, but I’m struggling to extract a structured workflow to fit my needs.

My Goal:

My character (third-person game) can destroy parts of buildings, and after repeated impacts, an entire building should be able to collapse progressively. I’m looking for an efficient and reusable workflow to manage this across multiple buildings while maintaining good performance.

What I’ve Tested So Far:

  • Partial fractures on Geometry Collections assembled from multiple Static Meshes and assembling multiple fractured Geometry Collections → In both cases, specific asset fracturing is possible, but the organization of chunks is problematic. If lower-level clusters contain pieces that are too large, precise destruction becomes difficult.
  • Using Dataflows to apply the same destruction logic to multiple assets → A promising feature, but the lack of clear documentation makes it hard to use effectively.
  • I know how to add Anchor Fields during construction, but I’m struggling with proper placement to avoid floating chunks and ensure full destruction. I’d like to understand the best way to manage Anchor Fields or the state of Geometry Collections to allow for progressive destruction without interfering with complete collapse. I’m also looking for the right approach to integrate this into a Blueprint, particularly for dynamically activating/deactivating Anchor Fields based on destruction progress.

Thanks in advance for your help!

Hi

Dataflow
If you intend to use a lot of different destructible assets and have the ability to quickly iterate and test different ways of setting them up then Dataflow is the way to go
We are using it a lot at internal at Epic Games and a lot of improvements are coming to it in future releases

Regarding the documentation, have you looked at this quick guide that was posted when UE5.5 released ?

Anchoring
Anchor fields have effectively limitations when used in modular scenarios
Instead I would recommend using the Anchored state on the geometry collection elements
A good default is to set the Anchored state on the root bone ( see attached screenshot )
This will make the geometry collection automatically kinematic without the need of a field

An anchored piece will be kinematic but is able to be destroyed and removed by external strain and damages contrary to the one with a kinematic state ( Anchor field actually set the kinematic state behind the scene )

Also Anchor state can be set/removed at runtime using blueprint function like RemoveAllAnchors, SetAnchoredByIndex, SetAnchoredByBox…

You can also set the anchor state on deeper elements in the hierarchy and as long as they are part of a cluster, this cluster will remain kinematic but will still be destructible

I hope this helps

Hi,

Thank you so much for your answer, it’s really great! I tested and followed the Dataflow tutorial you mentioned, and it’s indeed very promising. However, I ran into a few issues in Unreal Engine 5.5 when trying to apply it to multiple assets:

  • When I change the original Static Mesh, it also affects all other Static Meshes or Geometry Collections where Dataflow has been applied. I might be missing a node or a specific application method. I saw a potential solution in the first live session, but I couldn’t find the exact details.
  • It could also be a custom node, but I don’t yet know the Dataflow module well enough to create one myself.
  • Building a Dataflow and connecting the nodes is quite tedious and slow when trying to get real-time results.
  • However, once applied to multiple assets, the time savings** will be huge, that’s for sure!

About Anchoring

I wasn’t familiar with this method, and I will test it to better understand how it affects destruction. I’m not entirely sure how it will influence the damage distribution yet.

My goal is to destroy specific parts of a building, but if a load-bearing structure is damaged, then the building should naturally start collapsing, similar to the LEGO towers in the second live session.

Exploration and other findings

In parallel, I’ve explored different options, and it’s true that some features still lack detailed documentation or concrete examples. However, it’s very exciting to experiment with !

I also discovered Cluster Unions, but I still have trouble understanding how to use them. I managed to add multiple Geometry Collections into a Cluster Union, but my assets float unless they are destroyed immediately.

Issues encountered

I’ve also run into some collision bugs :

  • Some fragments lose their collision even though they are still present, and this happens even with large pieces.
  • Same issue when placing an asset as dynamic on the ground: if it rests on a large surface, it sometimes loses its collision.

Thanks again for your help, looking forward to your feedback! :blush: