Geometry Collection Component doesn't generate overlap events unless physics simulated?

Hey team.

I am converting my project from Ue4 to Ue5 and have discovered that destructible meshes have been replaced by chaos and geometry collections. I am trying to use onComponentBeginOverlap events on these new geometry collections but have found that they only trigger when simulate physics is set to true, on top of that when I try to debug the issue with a line trace to see what the hit component name is, there appears to be no collision on the mesh unless physics is set to true, so the line trace doesn’t hit anything. Generate overlap events is “ticked” true everywhere it needs to be and the collision settings on everything are correct so I am wondering what happens to the geometry collection when simulate physics isn’t turned on? and how do I get overlap events to work without simulate physics turned on. It all worked perfectly when they were destructible meshes so I was wondering what im missing with this new system.

Thanks in advance

5 Likes

For anyone having the same problem I have found a solution for my circumstance. To allow onComponentBeginOverlap events to be registered you have to have “Simulate Physics” set as true.

For me this wasn’t ideal because I didn’t want my object to simulate physics. My solution then was to go into the “Chaos Physics” section in the geometry components details panel and under “general”, set object type to static. This keeps it perfectly set in place but also means you cant effect it with physics while it is in this static state so you cant break it. My work around for this was, once my overlap is triggered I use the “Set Dynamic State” function to set it back to dynamic and then apply my physics forces to break it. It works just as intended and perfectly recreates what I had setup in Ue4 with my destructible mesh.

Hope this can help someone out there.

6 Likes

Hello,

I’m facing the same problem when moving from APEX to CHAOS.

Have you added more instructions after Set Dynamic State() ?

Because I’m not able to get it to work. I seems that the geometry collection component is still locked to STATIC.

Thanks,

Hey there

I’ve attached a photo of what mine looks like. Its just the dynamic state node and then I apply my physics forces to break it after. I did however end up having an issue after one of the updates that effected the overlap events of the geometry collections so maybe you’re having the same problem? To fix this I had to add a static mesh component of the GC in the same transform etc and get the overlap from that instead. I have it set up so that the GC is set to not visible and the SM component to visible, then on the overlap event of the SM component I destroy the static mesh component and set the GC to visible and apply the dynamic state and add the physics to break it. It’s a bit of a cheap work around but it works perfect.

Hope this helps

1 Like

Thank you very much, this was making me miserable.

1 Like

Thank you so much for posting the solution. Really helped!

1 Like