Bug: SetCollisionProfileName & Destructible Actors

,

I am spawning a destructible mesh actor at runtime. Once it’s fractured I am settings its collision profile name to “No Collision” to prevent it from blocking the player’s movement. However, this does nothing unfortunately, even though the Get Collision Response To Channel function returns the proper value.

I am not sure if this is unique to destructible actors only. Repro steps are simple:

  • Spawn in destructible actor at runtime
  • Bind an event to its On Fractured delegate
  • Set the collision profile name when it fractures

Best regards,
Damir H.

Hi ,

  • Does this occur in a clean, blank project with no additional content or is it limited to one project?
  • Are you spawning and running the fracture script through c++ or blueprints?
  • Can you show me a screenshot of your current setup to disable collision if in blueprints or provide the code sample in c++ of what specifically you are trying?

Hi ,

We have not heard from you in several days. I am marking this as answered for tracking purposes. If you are still experiencing this error, please comment with the requested information.

Hello,

Terribly sorry, was busy at work completely forgot about this. Yes it is reproducable easily in an empty project and it’s irelevant whether I am spawning the destructible or placing it in the level.

I made a quick test - took the default cube, made a destructible out of it, placed it in an empty level and did this in the level BP:

The result: Once the cube fractures I should be able to pass through the chunks. Unfortunately, that is not the case.

Best regards,
Damir H.

Hi ,

I checked a bit further into this and it looks like the node you are wanting to use is “Set Collision Enabled”. The “Set Collision Profile Name” is meant to be used during construction of an actor, not during runtime. Try “Set Collision Enabled” and see if you get the results you are looking for.

Hey ,

I could have sworn I tried that without success, but in the test case above it seems to work. Unfortunately that does not help me. I do not want to disable the collision entirely - just for the player. Thus, I created an alternative:


The setup is the same, just instead of setting the collision profile name or disabling collision entirely, I just change the response to the Pawn channel.

Now, if I just turn off Pawn collision for the mesh in the inspector I can fly through it no problem. However, with the above setup, after the mesh fractures, it is still blocking my Pawn. The SetCollisionResponse function does not propagate to the chunks unfortunately.

Best regards,
Damir H.

Hey ,

It seems that someone misread my last comment as me solving the issue and marked it as accepted. That is not the case, I’ve simply clarified and provided a different example replicating the same bug.

Best regards,
Damir H.